summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--blogs/2026-02-02-hytale-modding-my-honest-concerns.md (renamed from blogs/hytale-modding-my-honest-concerns.md)2
-rw-r--r--go.mod10
-rw-r--r--go.sum26
-rw-r--r--public/footnotes.js58
-rw-r--r--public/main.css72
-rw-r--r--public/style.css96
-rw-r--r--public/styles/fonts/Inter/Inter-Black.woff2bin0 -> 111668 bytes
-rw-r--r--public/styles/fonts/Inter/Inter-BlackItalic.woff2bin0 -> 118420 bytes
-rw-r--r--public/styles/fonts/Inter/Inter-Bold.woff2bin0 -> 114840 bytes
-rw-r--r--public/styles/fonts/Inter/Inter-BoldItalic.woff2bin0 -> 121500 bytes
-rw-r--r--public/styles/fonts/Inter/Inter-ExtraBold.woff2bin0 -> 114856 bytes
-rw-r--r--public/styles/fonts/Inter/Inter-ExtraBoldItalic.woff2bin0 -> 121516 bytes
-rw-r--r--public/styles/fonts/Inter/Inter-ExtraLight.woff2bin0 -> 112728 bytes
-rw-r--r--public/styles/fonts/Inter/Inter-ExtraLightItalic.woff2bin0 -> 119320 bytes
-rw-r--r--public/styles/fonts/Inter/Inter-Italic.woff2bin0 -> 117700 bytes
-rw-r--r--public/styles/fonts/Inter/Inter-Light.woff2bin0 -> 112592 bytes
-rw-r--r--public/styles/fonts/Inter/Inter-LightItalic.woff2bin0 -> 119608 bytes
-rw-r--r--public/styles/fonts/Inter/Inter-Medium.woff2bin0 -> 114348 bytes
-rw-r--r--public/styles/fonts/Inter/Inter-MediumItalic.woff2bin0 -> 120784 bytes
-rw-r--r--public/styles/fonts/Inter/Inter-Regular.woff2bin0 -> 111268 bytes
-rw-r--r--public/styles/fonts/Inter/Inter-SemiBold.woff2bin0 -> 114812 bytes
-rw-r--r--public/styles/fonts/Inter/Inter-SemiBoldItalic.woff2bin0 -> 121416 bytes
-rw-r--r--public/styles/fonts/Inter/Inter-Thin.woff2bin0 -> 109548 bytes
-rw-r--r--public/styles/fonts/Inter/Inter-ThinItalic.woff2bin0 -> 116880 bytes
-rw-r--r--public/styles/fonts/Inter/InterDisplay-Black.woff2bin0 -> 110308 bytes
-rw-r--r--public/styles/fonts/Inter/InterDisplay-BlackItalic.woff2bin0 -> 116820 bytes
-rw-r--r--public/styles/fonts/Inter/InterDisplay-Bold.woff2bin0 -> 113556 bytes
-rw-r--r--public/styles/fonts/Inter/InterDisplay-BoldItalic.woff2bin0 -> 120432 bytes
-rw-r--r--public/styles/fonts/Inter/InterDisplay-ExtraBold.woff2bin0 -> 113636 bytes
-rw-r--r--public/styles/fonts/Inter/InterDisplay-ExtraBoldItalic.woff2bin0 -> 120712 bytes
-rw-r--r--public/styles/fonts/Inter/InterDisplay-ExtraLight.woff2bin0 -> 113108 bytes
-rw-r--r--public/styles/fonts/Inter/InterDisplay-ExtraLightItalic.woff2bin0 -> 120124 bytes
-rw-r--r--public/styles/fonts/Inter/InterDisplay-Italic.woff2bin0 -> 116988 bytes
-rw-r--r--public/styles/fonts/Inter/InterDisplay-Light.woff2bin0 -> 112976 bytes
-rw-r--r--public/styles/fonts/Inter/InterDisplay-LightItalic.woff2bin0 -> 119692 bytes
-rw-r--r--public/styles/fonts/Inter/InterDisplay-Medium.woff2bin0 -> 113476 bytes
-rw-r--r--public/styles/fonts/Inter/InterDisplay-MediumItalic.woff2bin0 -> 120560 bytes
-rw-r--r--public/styles/fonts/Inter/InterDisplay-Regular.woff2bin0 -> 108948 bytes
-rw-r--r--public/styles/fonts/Inter/InterDisplay-SemiBold.woff2bin0 -> 113772 bytes
-rw-r--r--public/styles/fonts/Inter/InterDisplay-SemiBoldItalic.woff2bin0 -> 120468 bytes
-rw-r--r--public/styles/fonts/Inter/InterDisplay-Thin.woff2bin0 -> 108820 bytes
-rw-r--r--public/styles/fonts/Inter/InterDisplay-ThinItalic.woff2bin0 -> 116040 bytes
-rw-r--r--public/styles/fonts/Inter/InterVariable-Italic.woff2bin0 -> 387976 bytes
-rw-r--r--public/styles/fonts/Inter/InterVariable.woff2bin0 -> 352240 bytes
-rw-r--r--public/styles/fonts/Inter/inter.css148
-rw-r--r--public/styles/fonts/JetBrainsMono.css36
-rw-r--r--public/styles/fonts/Monocraft.css36
-rw-r--r--public/styles/main.css262
-rw-r--r--public/styles/style.css2668
-rw-r--r--public/styles/terminal.css71
-rwxr-xr-xrun.sh2
-rw-r--r--website.go61
-rw-r--r--website.templ24
-rw-r--r--website_templ.go1172
54 files changed, 3878 insertions, 866 deletions
diff --git a/blogs/hytale-modding-my-honest-concerns.md b/blogs/2026-02-02-hytale-modding-my-honest-concerns.md
index bf74ab9..65c0895 100644
--- a/blogs/hytale-modding-my-honest-concerns.md
+++ b/blogs/2026-02-02-hytale-modding-my-honest-concerns.md
@@ -4,8 +4,6 @@ description: Hytale finally released, promising modding, but iz it true?
date: 2026-02-02
---
-## Hytale
-
For those who don't know, [Hytale](https://hytale.com) is a video game created by Hypixel Studios (the people behind Minecraft's largest server: Hypixel), which has been in development for over 7 years, and has finally been released in public beta on January 13th 2026.
Minecraft was a big part of childhood, and was what pushed me into becoming a programmer, I started by making Minecraft mods and plugins using Java.
diff --git a/go.mod b/go.mod
index 56abdd0..59e7f0e 100644
--- a/go.mod
+++ b/go.mod
@@ -3,7 +3,11 @@ module website
go 1.26.8
require (
- github.com/a-h/templ v0.3.1070 // indirect
- github.com/yuin/goldmark v1.8.6 // indirect
- gopkg.in/yaml.v3 v3.0.1 // indirect
+ github.com/a-h/templ v0.3.1070
+ github.com/alecthomas/chroma/v2 v2.27.0
+ github.com/yuin/goldmark v1.8.6
+ github.com/yuin/goldmark-highlighting/v2 v2.0.0-20230729083705-37449abec8cc
+ gopkg.in/yaml.v3 v3.0.1
)
+
+require github.com/dlclark/regexp2/v2 v2.2.1 // indirect
diff --git a/go.sum b/go.sum
index 2e0d041..4ae7c52 100644
--- a/go.sum
+++ b/go.sum
@@ -1,7 +1,33 @@
github.com/a-h/templ v0.3.1070 h1:3iCOXHXqFXa99OQzgkUOLJbNzv/QjFGLwKZkBAg+ADA=
github.com/a-h/templ v0.3.1070/go.mod h1:iIqB3g2RHBe/WlnPwa+Bvhh1TKXHWLRnBD9NWHOLm78=
+github.com/alecthomas/assert/v2 v2.11.0 h1:2Q9r3ki8+JYXvGsDyBXwH3LcJ+WK5D0gc5E8vS6K3D0=
+github.com/alecthomas/assert/v2 v2.11.0/go.mod h1:Bze95FyfUr7x34QZrjL+XP+0qgp/zg8yS+TtBj1WA3k=
+github.com/alecthomas/chroma/v2 v2.2.0/go.mod h1:vf4zrexSH54oEjJ7EdB65tGNHmH3pGZmVkgTP5RHvAs=
+github.com/alecthomas/chroma/v2 v2.27.0 h1:FodwmyOBgJULFYmDqibcp9pvfDLWdtPRh9v/r5BXYZs=
+github.com/alecthomas/chroma/v2 v2.27.0/go.mod h1:NjJ3ciIgrqBNeIkWZ4e46nseoLDslxU1LmfCoL+wcY8=
+github.com/alecthomas/repr v0.0.0-20220113201626-b1b626ac65ae/go.mod h1:2kn6fqh/zIyPLmm3ugklbEi5hg5wS435eygvNfaDQL8=
+github.com/alecthomas/repr v0.5.2 h1:SU73FTI9D1P5UNtvseffFSGmdNci/O6RsqzeXJtP0Qs=
+github.com/alecthomas/repr v0.5.2/go.mod h1:Fr0507jx4eOXV7AlPV6AVZLYrLIuIeSOWtW57eE/O/4=
+github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
+github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
+github.com/dlclark/regexp2 v1.4.0/go.mod h1:2pZnwuY/m+8K6iRw6wQdMtk+rH5tNGR1i55kozfMjCc=
+github.com/dlclark/regexp2 v1.7.0/go.mod h1:DHkYz0B9wPfa6wondMfaivmHpzrQ3v9q8cnmRbL6yW8=
+github.com/dlclark/regexp2/v2 v2.2.1 h1:mf4KkFUj0gJuarK8P+LgiS+Lit7m9N1yAwEfPbee7R0=
+github.com/dlclark/regexp2/v2 v2.2.1/go.mod h1:avUrQvPaLz2DrFNHJF0taWAFFX2C1GMSSoeiqFjcBmU=
+github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8=
+github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU=
+github.com/hexops/gotextdiff v1.0.3 h1:gitA9+qJrrTCsiCl7+kh75nPqQt1cx4ZkudSTLoUqJM=
+github.com/hexops/gotextdiff v1.0.3/go.mod h1:pSWU5MAI3yDq+fZBTazCSJysOMbxWL1BSow5/V2vxeg=
+github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
+github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
+github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
+github.com/yuin/goldmark v1.4.15/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY=
github.com/yuin/goldmark v1.8.6 h1:d0VcaP1sx9GkFVkoW+KtggpGi2KZ965i14b0+bDQST4=
github.com/yuin/goldmark v1.8.6/go.mod h1:ip/1k0VRfGynBgxOz0yCqHrbZXhcjxyuS66Brc7iBKg=
+github.com/yuin/goldmark-highlighting/v2 v2.0.0-20230729083705-37449abec8cc h1:+IAOyRda+RLrxa1WC7umKOZRsGq4QrFFMYApOeHzQwQ=
+github.com/yuin/goldmark-highlighting/v2 v2.0.0-20230729083705-37449abec8cc/go.mod h1:ovIvrum6DQJA4QsJSovrkC4saKHQVs7TvcaeO8AIl5I=
+gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
+gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
diff --git a/public/footnotes.js b/public/footnotes.js
index 50f709e..57ded98 100644
--- a/public/footnotes.js
+++ b/public/footnotes.js
@@ -1,27 +1,45 @@
+document.documentElement.classList.add("js");
+
+const SIDENOTES = {
+ inside: true, // true: notes inside the frame, right of the post. false: outside, in the margin
+ insideShare: 0.21, // share of the post area given to the notes when inside (0.3 = 70/30)
+ border: false, // border around each note
+ // readingWidth: "70ch", // max width of the post text, null = no cap
+ readingWidth: null, // max width of the post text, null = no cap
+};
+
document.addEventListener("DOMContentLoaded", () => {
const area = document.querySelector("[data-scroll-area]");
+ const article = area?.querySelector("article");
+ if (!area || !article) return;
+
+ article.style.maxWidth = SIDENOTES.readingWidth ?? "none";
+ if (SIDENOTES.inside)
+ article.style.marginRight = `${SIDENOTES.insideShare * 100}%`;
+
const refs = [...document.querySelectorAll("a.footnote-ref")];
- if (!area || refs.length === 0) return;
+ if (refs.length === 0) return;
const panel = document.createElement("div");
- panel.className = "sidenotes";
+ panel.className = "sidenotes" + (SIDENOTES.border ? " bordered" : "");
document.body.append(panel);
const items = refs.map((ref) => {
ref.addEventListener("click", (e) => e.preventDefault());
const note = document.getElementById(ref.getAttribute("href").slice(1));
- const num = document.createElement("span");
- num.className = "sidenote-num";
- num.textContent = ref.textContent;
-
const body = document.createElement("div");
body.append(...note.cloneNode(true).childNodes);
body.querySelector(".footnote-backref")?.remove();
+ const num = document.createElement("sup");
+ num.className = "sidenote-num";
+ num.textContent = ref.textContent;
+ (body.querySelector("p") ?? body).prepend(num);
+
const el = document.createElement("div");
el.className = "sidenote";
- el.append(num, body);
+ el.append(body);
panel.append(el);
return { ref, el };
});
@@ -31,22 +49,34 @@ document.addEventListener("DOMContentLoaded", () => {
const layout = () => {
queued = false;
- const rect = area.getBoundingClientRect();
- const frame = document.querySelector(".terminal").getBoundingClientRect();
const rem = parseFloat(getComputedStyle(document.documentElement).fontSize);
- const left = frame.right + rem;
+ const top0 = area.getBoundingClientRect().top + area.clientTop;
+
+ let left, right;
+ if (SIDENOTES.inside) {
+ const r = area.getBoundingClientRect();
+ left = article.getBoundingClientRect().right + rem;
+ right =
+ r.left +
+ area.clientLeft +
+ area.clientWidth -
+ parseFloat(getComputedStyle(area).paddingRight);
+ } else {
+ left = area.closest("main").getBoundingClientRect().right + rem;
+ right = window.innerWidth - rem;
+ }
Object.assign(panel.style, {
left: `${left}px`,
- top: `${rect.top}px`,
- width: `${window.innerWidth - left - rem}px`,
- height: `${rect.height}px`,
+ top: `${top0}px`,
+ width: `${Math.max(0, right - left)}px`,
+ height: `${area.clientHeight}px`,
});
let bottom = -Infinity;
for (const { ref, el } of items) {
const top = Math.max(
- ref.getBoundingClientRect().top - rect.top,
+ ref.getBoundingClientRect().top - top0,
bottom + gap,
);
el.style.top = `${top}px`;
diff --git a/public/main.css b/public/main.css
deleted file mode 100644
index 8f9bb7d..0000000
--- a/public/main.css
+++ /dev/null
@@ -1,72 +0,0 @@
-@layer theme, base, components, utilities;
-@import "tailwindcss/theme.css" layer(theme);
-@import "tailwindcss/preflight.css" layer(base);
-@import "tailwindcss/utilities.css" layer(utilities);
-
-@source "../**/*.go";
-@source "../**/*.templ";
-
-@keyframes pop {
- 50% {
- transform: scale(1.3);
- }
-}
-[data-copied] svg {
- animation: pop 0.25s;
-}
-
-@keyframes bump {
- 50% {
- transform: scale(1.03);
- }
-}
-
-@plugin "@tailwindcss/typography";
-
-.prose {
- --tw-prose-body: var(--text);
- --tw-prose-headings: var(--primary);
- --tw-prose-links: var(--secondary);
- --tw-prose-bold: var(--text);
- --tw-prose-bullets: var(--alt);
- --tw-prose-counters: var(--alt);
- --tw-prose-hr: var(--alt);
- --tw-prose-quotes: var(--text);
- --tw-prose-quote-borders: var(--alt);
- --tw-prose-captions: var(--alt);
- --tw-prose-code: var(--extra);
- --tw-prose-pre-code: var(--text);
- --tw-prose-pre-bg: rgb(0 0 0 / 0.3);
- --tw-prose-th-borders: var(--alt);
- --tw-prose-td-borders: var(--alt);
-}
-
-.js .footnotes {
- display: none;
-}
-
-.sidenotes {
- position: fixed;
- overflow: hidden;
- pointer-events: none;
-}
-
-.sidenote {
- position: absolute;
- left: 0;
- right: 0;
- display: flex;
- gap: 1ch;
- padding: 0.4rem 0.6rem;
- border: 0.1rem solid var(--alt);
- background: var(--background);
- font-family: var(--font-normal);
- font-size: 14px;
- line-height: 1.4;
- pointer-events: auto;
-}
-
-.sidenote-num {
- flex-shrink: 0;
- color: var(--secondary);
-}
diff --git a/public/style.css b/public/style.css
index f2d0a22..b5497de 100644
--- a/public/style.css
+++ b/public/style.css
@@ -203,9 +203,6 @@
.top-\[0\.6rem\] {
top: 0.6rem;
}
- .top-\[calc\(50\%-20rem\)\] {
- top: calc(50% - 20rem);
- }
.right-\[0\.6rem\] {
right: 0.6rem;
}
@@ -227,9 +224,6 @@
.left-\[0\.625rem\] {
left: 0.625rem;
}
- .left-\[calc\(50\%\+38\.5rem\)\] {
- left: calc(50% + 38.5rem);
- }
.z-10 {
z-index: 10;
}
@@ -795,9 +789,6 @@
.h-full {
height: 100%;
}
- .max-h-\[40rem\] {
- max-height: 40rem;
- }
.max-h-\[80svh\] {
max-height: 80svh;
}
@@ -810,9 +801,6 @@
.w-8 {
width: calc(var(--spacing) * 8);
}
- .w-\[10\.5rem\] {
- width: 10.5rem;
- }
.w-\[30\%\] {
width: 30%;
}
@@ -904,9 +892,6 @@
.justify-between {
justify-content: space-between;
}
- .justify-end {
- justify-content: flex-end;
- }
.gap-4 {
gap: calc(var(--spacing) * 4);
}
@@ -1247,11 +1232,8 @@
.text-\[5vw\] {
font-size: 5vw;
}
- .text-\[14px\] {
- font-size: 14px;
- }
- .text-\[18px\] {
- font-size: 18px;
+ .text-\[17\.6px\] {
+ font-size: 17.6px;
}
.text-\[60\%\] {
font-size: 60%;
@@ -1734,6 +1716,24 @@
--tw-prose-th-borders: var(--alt);
--tw-prose-td-borders: var(--alt);
}
+.prose a.footnote-ref, .prose a.footnote-ref:hover {
+ text-decoration: none;
+}
+.prose code::before, .prose code::after {
+ content: none;
+}
+.prose :not(pre) > code {
+ padding: 0.1em 0.4em;
+ border-radius: 0.3em;
+ background: var(--alt);
+ @supports (color: color-mix(in lab, red, red)) {
+ background: color-mix(in srgb, var(--alt) 25%, transparent);
+ }
+ font-size: 0.9em;
+}
+.prose pre, .prose code {
+ font-family: var(--font-mono);
+}
.js .footnotes {
display: none;
}
@@ -1746,20 +1746,64 @@
position: absolute;
left: 0;
right: 0;
- display: flex;
- gap: 1ch;
- padding: 0.4rem 0.6rem;
- border: 0.1rem solid var(--alt);
background: var(--background);
font-family: var(--font-normal);
- font-size: 14px;
+ font-size: 16px;
line-height: 1.4;
pointer-events: auto;
}
+.sidenotes.bordered .sidenote {
+ border: 0.1rem solid var(--alt);
+ padding: 0.4rem 0.6rem;
+}
.sidenote-num {
- flex-shrink: 0;
+ font-size: 70%;
+ color: var(--secondary);
+ margin-right: 0.15em;
+}
+.chroma .k, .chroma .kc, .chroma .kd, .chroma .kn, .chroma .kp, .chroma .kr, .chroma .kt {
color: var(--secondary);
}
+.chroma .nf, .chroma .nc, .chroma .nb {
+ color: var(--primary);
+}
+.chroma .s, .chroma .sa, .chroma .sb, .chroma .sc, .chroma .dl, .chroma .sd, .chroma .s2, .chroma .se, .chroma .sh, .chroma .si, .chroma .sx, .chroma .sr, .chroma .s1, .chroma .ss {
+ color: var(--extra);
+}
+.chroma .m, .chroma .mb, .chroma .mf, .chroma .mh, .chroma .mi, .chroma .il, .chroma .mo {
+ color: var(--primary);
+}
+.chroma .c, .chroma .ch, .chroma .cm, .chroma .c1, .chroma .cs, .chroma .cp, .chroma .cpf {
+ color: var(--alt);
+ font-style: italic;
+}
+.codeblock {
+ margin: 1.2em 0;
+ border: 0.1rem solid var(--alt);
+ border-radius: 0.4rem;
+ background: rgb(0 0 0 / 0.3);
+ overflow: hidden;
+}
+.codeblock::before {
+ content: attr(data-lang);
+ display: block;
+ padding: 0.2em 0.8em;
+ border-bottom: 0.1rem solid var(--alt);
+ font-size: 0.75em;
+ color: var(--alt);
+}
+.codeblock[data-lang=""]::before {
+ display: none;
+}
+.codeblock pre {
+ margin: 0;
+ padding: 0.8em 1em;
+ background: transparent;
+ border-radius: 0;
+ overflow-x: auto;
+ font-size: 0.85em;
+ line-height: 1.5;
+}
@property --tw-translate-x {
syntax: "*";
inherits: false;
diff --git a/public/styles/fonts/Inter/Inter-Black.woff2 b/public/styles/fonts/Inter/Inter-Black.woff2
new file mode 100644
index 0000000..2e73dce
--- /dev/null
+++ b/public/styles/fonts/Inter/Inter-Black.woff2
Binary files differ
diff --git a/public/styles/fonts/Inter/Inter-BlackItalic.woff2 b/public/styles/fonts/Inter/Inter-BlackItalic.woff2
new file mode 100644
index 0000000..d85db93
--- /dev/null
+++ b/public/styles/fonts/Inter/Inter-BlackItalic.woff2
Binary files differ
diff --git a/public/styles/fonts/Inter/Inter-Bold.woff2 b/public/styles/fonts/Inter/Inter-Bold.woff2
new file mode 100644
index 0000000..b9e3cb3
--- /dev/null
+++ b/public/styles/fonts/Inter/Inter-Bold.woff2
Binary files differ
diff --git a/public/styles/fonts/Inter/Inter-BoldItalic.woff2 b/public/styles/fonts/Inter/Inter-BoldItalic.woff2
new file mode 100644
index 0000000..31cd052
--- /dev/null
+++ b/public/styles/fonts/Inter/Inter-BoldItalic.woff2
Binary files differ
diff --git a/public/styles/fonts/Inter/Inter-ExtraBold.woff2 b/public/styles/fonts/Inter/Inter-ExtraBold.woff2
new file mode 100644
index 0000000..bbd0006
--- /dev/null
+++ b/public/styles/fonts/Inter/Inter-ExtraBold.woff2
Binary files differ
diff --git a/public/styles/fonts/Inter/Inter-ExtraBoldItalic.woff2 b/public/styles/fonts/Inter/Inter-ExtraBoldItalic.woff2
new file mode 100644
index 0000000..288f2de
--- /dev/null
+++ b/public/styles/fonts/Inter/Inter-ExtraBoldItalic.woff2
Binary files differ
diff --git a/public/styles/fonts/Inter/Inter-ExtraLight.woff2 b/public/styles/fonts/Inter/Inter-ExtraLight.woff2
new file mode 100644
index 0000000..f691003
--- /dev/null
+++ b/public/styles/fonts/Inter/Inter-ExtraLight.woff2
Binary files differ
diff --git a/public/styles/fonts/Inter/Inter-ExtraLightItalic.woff2 b/public/styles/fonts/Inter/Inter-ExtraLightItalic.woff2
new file mode 100644
index 0000000..3e3934d
--- /dev/null
+++ b/public/styles/fonts/Inter/Inter-ExtraLightItalic.woff2
Binary files differ
diff --git a/public/styles/fonts/Inter/Inter-Italic.woff2 b/public/styles/fonts/Inter/Inter-Italic.woff2
new file mode 100644
index 0000000..9a1ad21
--- /dev/null
+++ b/public/styles/fonts/Inter/Inter-Italic.woff2
Binary files differ
diff --git a/public/styles/fonts/Inter/Inter-Light.woff2 b/public/styles/fonts/Inter/Inter-Light.woff2
new file mode 100644
index 0000000..f3e012a
--- /dev/null
+++ b/public/styles/fonts/Inter/Inter-Light.woff2
Binary files differ
diff --git a/public/styles/fonts/Inter/Inter-LightItalic.woff2 b/public/styles/fonts/Inter/Inter-LightItalic.woff2
new file mode 100644
index 0000000..2f37009
--- /dev/null
+++ b/public/styles/fonts/Inter/Inter-LightItalic.woff2
Binary files differ
diff --git a/public/styles/fonts/Inter/Inter-Medium.woff2 b/public/styles/fonts/Inter/Inter-Medium.woff2
new file mode 100644
index 0000000..fdfdcc6
--- /dev/null
+++ b/public/styles/fonts/Inter/Inter-Medium.woff2
Binary files differ
diff --git a/public/styles/fonts/Inter/Inter-MediumItalic.woff2 b/public/styles/fonts/Inter/Inter-MediumItalic.woff2
new file mode 100644
index 0000000..0dc5a30
--- /dev/null
+++ b/public/styles/fonts/Inter/Inter-MediumItalic.woff2
Binary files differ
diff --git a/public/styles/fonts/Inter/Inter-Regular.woff2 b/public/styles/fonts/Inter/Inter-Regular.woff2
new file mode 100644
index 0000000..2bcd222
--- /dev/null
+++ b/public/styles/fonts/Inter/Inter-Regular.woff2
Binary files differ
diff --git a/public/styles/fonts/Inter/Inter-SemiBold.woff2 b/public/styles/fonts/Inter/Inter-SemiBold.woff2
new file mode 100644
index 0000000..fbae113
--- /dev/null
+++ b/public/styles/fonts/Inter/Inter-SemiBold.woff2
Binary files differ
diff --git a/public/styles/fonts/Inter/Inter-SemiBoldItalic.woff2 b/public/styles/fonts/Inter/Inter-SemiBoldItalic.woff2
new file mode 100644
index 0000000..d67d01c
--- /dev/null
+++ b/public/styles/fonts/Inter/Inter-SemiBoldItalic.woff2
Binary files differ
diff --git a/public/styles/fonts/Inter/Inter-Thin.woff2 b/public/styles/fonts/Inter/Inter-Thin.woff2
new file mode 100644
index 0000000..83bf54b
--- /dev/null
+++ b/public/styles/fonts/Inter/Inter-Thin.woff2
Binary files differ
diff --git a/public/styles/fonts/Inter/Inter-ThinItalic.woff2 b/public/styles/fonts/Inter/Inter-ThinItalic.woff2
new file mode 100644
index 0000000..928da4b
--- /dev/null
+++ b/public/styles/fonts/Inter/Inter-ThinItalic.woff2
Binary files differ
diff --git a/public/styles/fonts/Inter/InterDisplay-Black.woff2 b/public/styles/fonts/Inter/InterDisplay-Black.woff2
new file mode 100644
index 0000000..72532b2
--- /dev/null
+++ b/public/styles/fonts/Inter/InterDisplay-Black.woff2
Binary files differ
diff --git a/public/styles/fonts/Inter/InterDisplay-BlackItalic.woff2 b/public/styles/fonts/Inter/InterDisplay-BlackItalic.woff2
new file mode 100644
index 0000000..de02111
--- /dev/null
+++ b/public/styles/fonts/Inter/InterDisplay-BlackItalic.woff2
Binary files differ
diff --git a/public/styles/fonts/Inter/InterDisplay-Bold.woff2 b/public/styles/fonts/Inter/InterDisplay-Bold.woff2
new file mode 100644
index 0000000..304c31d
--- /dev/null
+++ b/public/styles/fonts/Inter/InterDisplay-Bold.woff2
Binary files differ
diff --git a/public/styles/fonts/Inter/InterDisplay-BoldItalic.woff2 b/public/styles/fonts/Inter/InterDisplay-BoldItalic.woff2
new file mode 100644
index 0000000..89d5c5a
--- /dev/null
+++ b/public/styles/fonts/Inter/InterDisplay-BoldItalic.woff2
Binary files differ
diff --git a/public/styles/fonts/Inter/InterDisplay-ExtraBold.woff2 b/public/styles/fonts/Inter/InterDisplay-ExtraBold.woff2
new file mode 100644
index 0000000..4250fa0
--- /dev/null
+++ b/public/styles/fonts/Inter/InterDisplay-ExtraBold.woff2
Binary files differ
diff --git a/public/styles/fonts/Inter/InterDisplay-ExtraBoldItalic.woff2 b/public/styles/fonts/Inter/InterDisplay-ExtraBoldItalic.woff2
new file mode 100644
index 0000000..d68a400
--- /dev/null
+++ b/public/styles/fonts/Inter/InterDisplay-ExtraBoldItalic.woff2
Binary files differ
diff --git a/public/styles/fonts/Inter/InterDisplay-ExtraLight.woff2 b/public/styles/fonts/Inter/InterDisplay-ExtraLight.woff2
new file mode 100644
index 0000000..7d376e2
--- /dev/null
+++ b/public/styles/fonts/Inter/InterDisplay-ExtraLight.woff2
Binary files differ
diff --git a/public/styles/fonts/Inter/InterDisplay-ExtraLightItalic.woff2 b/public/styles/fonts/Inter/InterDisplay-ExtraLightItalic.woff2
new file mode 100644
index 0000000..1f1ca72
--- /dev/null
+++ b/public/styles/fonts/Inter/InterDisplay-ExtraLightItalic.woff2
Binary files differ
diff --git a/public/styles/fonts/Inter/InterDisplay-Italic.woff2 b/public/styles/fonts/Inter/InterDisplay-Italic.woff2
new file mode 100644
index 0000000..4475f7c
--- /dev/null
+++ b/public/styles/fonts/Inter/InterDisplay-Italic.woff2
Binary files differ
diff --git a/public/styles/fonts/Inter/InterDisplay-Light.woff2 b/public/styles/fonts/Inter/InterDisplay-Light.woff2
new file mode 100644
index 0000000..ef7dbbf
--- /dev/null
+++ b/public/styles/fonts/Inter/InterDisplay-Light.woff2
Binary files differ
diff --git a/public/styles/fonts/Inter/InterDisplay-LightItalic.woff2 b/public/styles/fonts/Inter/InterDisplay-LightItalic.woff2
new file mode 100644
index 0000000..a57c48b
--- /dev/null
+++ b/public/styles/fonts/Inter/InterDisplay-LightItalic.woff2
Binary files differ
diff --git a/public/styles/fonts/Inter/InterDisplay-Medium.woff2 b/public/styles/fonts/Inter/InterDisplay-Medium.woff2
new file mode 100644
index 0000000..f6157fa
--- /dev/null
+++ b/public/styles/fonts/Inter/InterDisplay-Medium.woff2
Binary files differ
diff --git a/public/styles/fonts/Inter/InterDisplay-MediumItalic.woff2 b/public/styles/fonts/Inter/InterDisplay-MediumItalic.woff2
new file mode 100644
index 0000000..8b2f1c2
--- /dev/null
+++ b/public/styles/fonts/Inter/InterDisplay-MediumItalic.woff2
Binary files differ
diff --git a/public/styles/fonts/Inter/InterDisplay-Regular.woff2 b/public/styles/fonts/Inter/InterDisplay-Regular.woff2
new file mode 100644
index 0000000..b5a45e8
--- /dev/null
+++ b/public/styles/fonts/Inter/InterDisplay-Regular.woff2
Binary files differ
diff --git a/public/styles/fonts/Inter/InterDisplay-SemiBold.woff2 b/public/styles/fonts/Inter/InterDisplay-SemiBold.woff2
new file mode 100644
index 0000000..6e04091
--- /dev/null
+++ b/public/styles/fonts/Inter/InterDisplay-SemiBold.woff2
Binary files differ
diff --git a/public/styles/fonts/Inter/InterDisplay-SemiBoldItalic.woff2 b/public/styles/fonts/Inter/InterDisplay-SemiBoldItalic.woff2
new file mode 100644
index 0000000..72b4743
--- /dev/null
+++ b/public/styles/fonts/Inter/InterDisplay-SemiBoldItalic.woff2
Binary files differ
diff --git a/public/styles/fonts/Inter/InterDisplay-Thin.woff2 b/public/styles/fonts/Inter/InterDisplay-Thin.woff2
new file mode 100644
index 0000000..893595a
--- /dev/null
+++ b/public/styles/fonts/Inter/InterDisplay-Thin.woff2
Binary files differ
diff --git a/public/styles/fonts/Inter/InterDisplay-ThinItalic.woff2 b/public/styles/fonts/Inter/InterDisplay-ThinItalic.woff2
new file mode 100644
index 0000000..46e1b5a
--- /dev/null
+++ b/public/styles/fonts/Inter/InterDisplay-ThinItalic.woff2
Binary files differ
diff --git a/public/styles/fonts/Inter/InterVariable-Italic.woff2 b/public/styles/fonts/Inter/InterVariable-Italic.woff2
new file mode 100644
index 0000000..b3530f3
--- /dev/null
+++ b/public/styles/fonts/Inter/InterVariable-Italic.woff2
Binary files differ
diff --git a/public/styles/fonts/Inter/InterVariable.woff2 b/public/styles/fonts/Inter/InterVariable.woff2
new file mode 100644
index 0000000..5a8d3e7
--- /dev/null
+++ b/public/styles/fonts/Inter/InterVariable.woff2
Binary files differ
diff --git a/public/styles/fonts/Inter/inter.css b/public/styles/fonts/Inter/inter.css
new file mode 100644
index 0000000..6144065
--- /dev/null
+++ b/public/styles/fonts/Inter/inter.css
@@ -0,0 +1,148 @@
+/* Variable fonts usage:
+:root { font-family: "Inter", sans-serif; }
+@supports (font-variation-settings: normal) {
+ :root { font-family: "InterVariable", sans-serif; font-optical-sizing: auto; }
+} */
+@font-face {
+ font-family: InterVariable;
+ font-style: normal;
+ font-weight: 100 900;
+ font-display: swap;
+ src: url("InterVariable.woff2") format("woff2");
+}
+@font-face {
+ font-family: InterVariable;
+ font-style: italic;
+ font-weight: 100 900;
+ font-display: swap;
+ src: url("InterVariable-Italic.woff2") format("woff2");
+}
+
+/* static fonts */
+@font-face { font-family: "Inter"; font-style: normal; font-weight: 100; font-display: swap; src: url("Inter-Thin.woff2") format("woff2"); }
+@font-face { font-family: "Inter"; font-style: italic; font-weight: 100; font-display: swap; src: url("Inter-ThinItalic.woff2") format("woff2"); }
+@font-face { font-family: "Inter"; font-style: normal; font-weight: 200; font-display: swap; src: url("Inter-ExtraLight.woff2") format("woff2"); }
+@font-face { font-family: "Inter"; font-style: italic; font-weight: 200; font-display: swap; src: url("Inter-ExtraLightItalic.woff2") format("woff2"); }
+@font-face { font-family: "Inter"; font-style: normal; font-weight: 300; font-display: swap; src: url("Inter-Light.woff2") format("woff2"); }
+@font-face { font-family: "Inter"; font-style: italic; font-weight: 300; font-display: swap; src: url("Inter-LightItalic.woff2") format("woff2"); }
+@font-face { font-family: "Inter"; font-style: normal; font-weight: 400; font-display: swap; src: url("Inter-Regular.woff2") format("woff2"); }
+@font-face { font-family: "Inter"; font-style: italic; font-weight: 400; font-display: swap; src: url("Inter-Italic.woff2") format("woff2"); }
+@font-face { font-family: "Inter"; font-style: normal; font-weight: 500; font-display: swap; src: url("Inter-Medium.woff2") format("woff2"); }
+@font-face { font-family: "Inter"; font-style: italic; font-weight: 500; font-display: swap; src: url("Inter-MediumItalic.woff2") format("woff2"); }
+@font-face { font-family: "Inter"; font-style: normal; font-weight: 600; font-display: swap; src: url("Inter-SemiBold.woff2") format("woff2"); }
+@font-face { font-family: "Inter"; font-style: italic; font-weight: 600; font-display: swap; src: url("Inter-SemiBoldItalic.woff2") format("woff2"); }
+@font-face { font-family: "Inter"; font-style: normal; font-weight: 700; font-display: swap; src: url("Inter-Bold.woff2") format("woff2"); }
+@font-face { font-family: "Inter"; font-style: italic; font-weight: 700; font-display: swap; src: url("Inter-BoldItalic.woff2") format("woff2"); }
+@font-face { font-family: "Inter"; font-style: normal; font-weight: 800; font-display: swap; src: url("Inter-ExtraBold.woff2") format("woff2"); }
+@font-face { font-family: "Inter"; font-style: italic; font-weight: 800; font-display: swap; src: url("Inter-ExtraBoldItalic.woff2") format("woff2"); }
+@font-face { font-family: "Inter"; font-style: normal; font-weight: 900; font-display: swap; src: url("Inter-Black.woff2") format("woff2"); }
+@font-face { font-family: "Inter"; font-style: italic; font-weight: 900; font-display: swap; src: url("Inter-BlackItalic.woff2") format("woff2"); }
+@font-face { font-family: "InterDisplay"; font-style: normal; font-weight: 100; font-display: swap; src: url("InterDisplay-Thin.woff2") format("woff2"); }
+@font-face { font-family: "InterDisplay"; font-style: italic; font-weight: 100; font-display: swap; src: url("InterDisplay-ThinItalic.woff2") format("woff2"); }
+@font-face { font-family: "InterDisplay"; font-style: normal; font-weight: 200; font-display: swap; src: url("InterDisplay-ExtraLight.woff2") format("woff2"); }
+@font-face { font-family: "InterDisplay"; font-style: italic; font-weight: 200; font-display: swap; src: url("InterDisplay-ExtraLightItalic.woff2") format("woff2"); }
+@font-face { font-family: "InterDisplay"; font-style: normal; font-weight: 300; font-display: swap; src: url("InterDisplay-Light.woff2") format("woff2"); }
+@font-face { font-family: "InterDisplay"; font-style: italic; font-weight: 300; font-display: swap; src: url("InterDisplay-LightItalic.woff2") format("woff2"); }
+@font-face { font-family: "InterDisplay"; font-style: normal; font-weight: 400; font-display: swap; src: url("InterDisplay-Regular.woff2") format("woff2"); }
+@font-face { font-family: "InterDisplay"; font-style: italic; font-weight: 400; font-display: swap; src: url("InterDisplay-Italic.woff2") format("woff2"); }
+@font-face { font-family: "InterDisplay"; font-style: normal; font-weight: 500; font-display: swap; src: url("InterDisplay-Medium.woff2") format("woff2"); }
+@font-face { font-family: "InterDisplay"; font-style: italic; font-weight: 500; font-display: swap; src: url("InterDisplay-MediumItalic.woff2") format("woff2"); }
+@font-face { font-family: "InterDisplay"; font-style: normal; font-weight: 600; font-display: swap; src: url("InterDisplay-SemiBold.woff2") format("woff2"); }
+@font-face { font-family: "InterDisplay"; font-style: italic; font-weight: 600; font-display: swap; src: url("InterDisplay-SemiBoldItalic.woff2") format("woff2"); }
+@font-face { font-family: "InterDisplay"; font-style: normal; font-weight: 700; font-display: swap; src: url("InterDisplay-Bold.woff2") format("woff2"); }
+@font-face { font-family: "InterDisplay"; font-style: italic; font-weight: 700; font-display: swap; src: url("InterDisplay-BoldItalic.woff2") format("woff2"); }
+@font-face { font-family: "InterDisplay"; font-style: normal; font-weight: 800; font-display: swap; src: url("InterDisplay-ExtraBold.woff2") format("woff2"); }
+@font-face { font-family: "InterDisplay"; font-style: italic; font-weight: 800; font-display: swap; src: url("InterDisplay-ExtraBoldItalic.woff2") format("woff2"); }
+@font-face { font-family: "InterDisplay"; font-style: normal; font-weight: 900; font-display: swap; src: url("InterDisplay-Black.woff2") format("woff2"); }
+@font-face { font-family: "InterDisplay"; font-style: italic; font-weight: 900; font-display: swap; src: url("InterDisplay-BlackItalic.woff2") format("woff2"); }
+
+@font-feature-values InterVariable {
+ @character-variant {
+ cv01: 1; cv02: 2; cv03: 3; cv04: 4; cv05: 5; cv06: 6; cv07: 7; cv08: 8;
+ cv09: 9; cv10: 10; cv11: 11; cv12: 12; cv13: 13;
+ alt-1: 1; /* Alternate one */
+ alt-3: 9; /* Flat-top three */
+ open-4: 2; /* Open four */
+ open-6: 3; /* Open six */
+ open-9: 4; /* Open nine */
+ lc-l-with-tail: 5; /* Lower-case L with tail */
+ simplified-u: 6; /* Simplified u */
+ alt-double-s: 7; /* Alternate German double s */
+ uc-i-with-serif: 8; /* Upper-case i with serif */
+ uc-g-with-spur: 10; /* Capital G with spur */
+ single-story-a: 11; /* Single-story a */
+ compact-lc-f: 12; /* Compact f */
+ compact-lc-t: 13; /* Compact t */
+ }
+ @styleset {
+ ss01: 1; ss02: 2; ss03: 3; ss04: 4; ss05: 5; ss06: 6; ss07: 7; ss08: 8;
+ open-digits: 1; /* Open digits */
+ disambiguation: 2; /* Disambiguation (with zero) */
+ disambiguation-except-zero: 4; /* Disambiguation (no zero) */
+ round-quotes-and-commas: 3; /* Round quotes & commas */
+ square-punctuation: 7; /* Square punctuation */
+ square-quotes: 8; /* Square quotes */
+ circled-characters: 5; /* Circled characters */
+ squared-characters: 6; /* Squared characters */
+ }
+}
+@font-feature-values Inter {
+ @character-variant {
+ cv01: 1; cv02: 2; cv03: 3; cv04: 4; cv05: 5; cv06: 6; cv07: 7; cv08: 8;
+ cv09: 9; cv10: 10; cv11: 11; cv12: 12; cv13: 13;
+ alt-1: 1; /* Alternate one */
+ alt-3: 9; /* Flat-top three */
+ open-4: 2; /* Open four */
+ open-6: 3; /* Open six */
+ open-9: 4; /* Open nine */
+ lc-l-with-tail: 5; /* Lower-case L with tail */
+ simplified-u: 6; /* Simplified u */
+ alt-double-s: 7; /* Alternate German double s */
+ uc-i-with-serif: 8; /* Upper-case i with serif */
+ uc-g-with-spur: 10; /* Capital G with spur */
+ single-story-a: 11; /* Single-story a */
+ compact-lc-f: 12; /* Compact f */
+ compact-lc-t: 13; /* Compact t */
+ }
+ @styleset {
+ ss01: 1; ss02: 2; ss03: 3; ss04: 4; ss05: 5; ss06: 6; ss07: 7; ss08: 8;
+ open-digits: 1; /* Open digits */
+ disambiguation: 2; /* Disambiguation (with zero) */
+ disambiguation-except-zero: 4; /* Disambiguation (no zero) */
+ round-quotes-and-commas: 3; /* Round quotes & commas */
+ square-punctuation: 7; /* Square punctuation */
+ square-quotes: 8; /* Square quotes */
+ circled-characters: 5; /* Circled characters */
+ squared-characters: 6; /* Squared characters */
+ }
+}
+@font-feature-values InterDisplay {
+ @character-variant {
+ cv01: 1; cv02: 2; cv03: 3; cv04: 4; cv05: 5; cv06: 6; cv07: 7; cv08: 8;
+ cv09: 9; cv10: 10; cv11: 11; cv12: 12; cv13: 13;
+ alt-1: 1; /* Alternate one */
+ alt-3: 9; /* Flat-top three */
+ open-4: 2; /* Open four */
+ open-6: 3; /* Open six */
+ open-9: 4; /* Open nine */
+ lc-l-with-tail: 5; /* Lower-case L with tail */
+ simplified-u: 6; /* Simplified u */
+ alt-double-s: 7; /* Alternate German double s */
+ uc-i-with-serif: 8; /* Upper-case i with serif */
+ uc-g-with-spur: 10; /* Capital G with spur */
+ single-story-a: 11; /* Single-story a */
+ compact-lc-f: 12; /* Compact f */
+ compact-lc-t: 13; /* Compact t */
+ }
+ @styleset {
+ ss01: 1; ss02: 2; ss03: 3; ss04: 4; ss05: 5; ss06: 6; ss07: 7; ss08: 8;
+ open-digits: 1; /* Open digits */
+ disambiguation: 2; /* Disambiguation (with zero) */
+ disambiguation-except-zero: 4; /* Disambiguation (no zero) */
+ round-quotes-and-commas: 3; /* Round quotes & commas */
+ square-punctuation: 7; /* Square punctuation */
+ square-quotes: 8; /* Square quotes */
+ circled-characters: 5; /* Circled characters */
+ squared-characters: 6; /* Squared characters */
+ }
+}
diff --git a/public/styles/fonts/JetBrainsMono.css b/public/styles/fonts/JetBrainsMono.css
index 807fe1f..fc0183e 100644
--- a/public/styles/fonts/JetBrainsMono.css
+++ b/public/styles/fonts/JetBrainsMono.css
@@ -1,108 +1,108 @@
@font-face {
font-family: "Jetbrains Mono";
- src: url("/fonts/JetBrainsMono-Thin.woff2") format("woff2");
+ src: url("/public/fonts/JetBrainsMono-Thin.woff2") format("woff2");
font-weight: 100;
font-style: normal;
}
@font-face {
font-family: "Jetbrains Mono";
- src: url("/fonts/JetBrainsMono-ThinItalic.woff2") format("woff2");
+ src: url("/public/fonts/JetBrainsMono-ThinItalic.woff2") format("woff2");
font-weight: 100;
font-style: italic;
}
@font-face {
font-family: "Jetbrains Mono";
- src: url("/fonts/JetBrainsMono-ExtraLight.woff2") format("woff2");
+ src: url("/public/fonts/JetBrainsMono-ExtraLight.woff2") format("woff2");
font-weight: 200;
font-style: normal;
}
@font-face {
font-family: "Jetbrains Mono";
- src: url("/fonts/JetBrainsMono-ExtraLightItalic.woff2") format("woff2");
+ src: url("/public/fonts/JetBrainsMono-ExtraLightItalic.woff2") format("woff2");
font-weight: 200;
font-style: italic;
}
@font-face {
font-family: "Jetbrains Mono";
- src: url("/fonts/JetBrainsMono-Light.woff2") format("woff2");
+ src: url("/public/fonts/JetBrainsMono-Light.woff2") format("woff2");
font-weight: 300;
font-style: normal;
}
@font-face {
font-family: "Jetbrains Mono";
- src: url("/fonts/JetBrainsMono-LightItalic.woff2") format("woff2");
+ src: url("/public/fonts/JetBrainsMono-LightItalic.woff2") format("woff2");
font-weight: 300;
font-style: italic;
}
@font-face {
font-family: "Jetbrains Mono";
- src: url("/fonts/JetBrainsMono-Regular.woff2") format("woff2");
+ src: url("/public/fonts/JetBrainsMono-Regular.woff2") format("woff2");
font-weight: 400;
font-style: normal;
}
@font-face {
font-family: "Jetbrains Mono";
- src: url("/fonts/JetBrainsMono-Italic.woff2") format("woff2");
+ src: url("/public/fonts/JetBrainsMono-Italic.woff2") format("woff2");
font-weight: 400;
font-style: italic;
}
@font-face {
font-family: "Jetbrains Mono";
- src: url("/fonts/JetBrainsMono-Medium.woff2") format("woff2");
+ src: url("/public/fonts/JetBrainsMono-Medium.woff2") format("woff2");
font-weight: 500;
font-style: normal;
}
@font-face {
font-family: "Jetbrains Mono";
- src: url("/fonts/JetBrainsMono-MediumItalic.woff2") format("woff2");
+ src: url("/public/fonts/JetBrainsMono-MediumItalic.woff2") format("woff2");
font-weight: 500;
font-style: italic;
}
@font-face {
font-family: "Jetbrains Mono";
- src: url("/fonts/JetBrainsMono-SemiBold.woff2") format("woff2");
+ src: url("/public/fonts/JetBrainsMono-SemiBold.woff2") format("woff2");
font-weight: 600;
font-style: normal;
}
@font-face {
font-family: "Jetbrains Mono";
- src: url("/fonts/JetBrainsMono-SemiBoldItalic.woff2") format("woff2");
+ src: url("/public/fonts/JetBrainsMono-SemiBoldItalic.woff2") format("woff2");
font-weight: 600;
font-style: italic;
}
@font-face {
font-family: "Jetbrains Mono";
- src: url("/fonts/JetBrainsMono-Bold.woff2") format("woff2");
+ src: url("/public/fonts/JetBrainsMono-Bold.woff2") format("woff2");
font-weight: 700;
font-style: normal;
}
@font-face {
font-family: "Jetbrains Mono";
- src: url("/fonts/JetBrainsMono-BoldItalic.woff2") format("woff2");
+ src: url("/public/fonts/JetBrainsMono-BoldItalic.woff2") format("woff2");
font-weight: 700;
font-style: italic;
}
@font-face {
font-family: "Jetbrains Mono";
- src: url("/fonts/JetBrainsMono-ExtraBold.woff2") format("woff2");
+ src: url("/public/fonts/JetBrainsMono-ExtraBold.woff2") format("woff2");
font-weight: 800;
font-style: normal;
}
@font-face {
font-family: "Jetbrains Mono";
- src: url("/fonts/JetBrainsMono-ExtraBoldItalic.woff2") format("woff2");
+ src: url("/public/fonts/JetBrainsMono-ExtraBoldItalic.woff2") format("woff2");
font-weight: 800;
font-style: italic;
}
@font-face {
font-family: "Jetbrains Mono";
- src: url("/fonts/JetBrainsMono-ExtraBold.woff2") format("woff2");
+ src: url("/public/fonts/JetBrainsMono-ExtraBold.woff2") format("woff2");
font-weight: 900;
font-style: normal;
}
@font-face {
font-family: "Jetbrains Mono";
- src: url("/fonts/JetBrainsMono-ExtraBoldItalic.woff2") format("woff2");
+ src: url("/public/fonts/JetBrainsMono-ExtraBoldItalic.woff2") format("woff2");
font-weight: 900;
font-style: italic;
}
diff --git a/public/styles/fonts/Monocraft.css b/public/styles/fonts/Monocraft.css
index 34fd24a..df2874e 100644
--- a/public/styles/fonts/Monocraft.css
+++ b/public/styles/fonts/Monocraft.css
@@ -1,108 +1,108 @@
@font-face {
font-family: "Monocraft";
- src: url("/fonts/Monocraft-ExtraLight.ttf") format("truetype");
+ src: url("/public/fonts/Monocraft-ExtraLight.ttf") format("truetype");
font-weight: 100;
font-style: normal;
}
@font-face {
font-family: "Monocraft";
- src: url("/fonts/Monocraft-ExtraLight-Italic.ttf") format("truetype");
+ src: url("/public/fonts/Monocraft-ExtraLight-Italic.ttf") format("truetype");
font-weight: 100;
font-style: italic;
}
@font-face {
font-family: "Monocraft";
- src: url("/fonts/Monocraft-ExtraLight.ttf") format("truetype");
+ src: url("/public/fonts/Monocraft-ExtraLight.ttf") format("truetype");
font-weight: 200;
font-style: normal;
}
@font-face {
font-family: "Monocraft";
- src: url("/fonts/Monocraft-ExtraLight-Italic.ttf") format("truetype");
+ src: url("/public/fonts/Monocraft-ExtraLight-Italic.ttf") format("truetype");
font-weight: 200;
font-style: italic;
}
@font-face {
font-family: "Monocraft";
- src: url("/fonts/Monocraft-Light.ttf") format("truetype");
+ src: url("/public/fonts/Monocraft-Light.ttf") format("truetype");
font-weight: 300;
font-style: normal;
}
@font-face {
font-family: "Monocraft";
- src: url("/fonts/Monocraft-Light-Italic.ttf") format("truetype");
+ src: url("/public/fonts/Monocraft-Light-Italic.ttf") format("truetype");
font-weight: 300;
font-style: italic;
}
@font-face {
font-family: "Monocraft";
- src: url("/fonts/Monocraft.ttf") format("truetype");
+ src: url("/public/fonts/Monocraft.ttf") format("truetype");
font-weight: 400;
font-style: normal;
}
@font-face {
font-family: "Monocraft";
- src: url("/fonts/Monocraft-Italic.ttf") format("truetype");
+ src: url("/public/fonts/Monocraft-Italic.ttf") format("truetype");
font-weight: 400;
font-style: italic;
}
@font-face {
font-family: "Monocraft";
- src: url("/fonts/Monocraft.ttf") format("truetype");
+ src: url("/public/fonts/Monocraft.ttf") format("truetype");
font-weight: 500;
font-style: normal;
}
@font-face {
font-family: "Monocraft";
- src: url("/fonts/Monocraft-Italic.ttf") format("truetype");
+ src: url("/public/fonts/Monocraft-Italic.ttf") format("truetype");
font-weight: 500;
font-style: italic;
}
@font-face {
font-family: "Monocraft";
- src: url("/fonts/Monocraft-SemiBold.ttf") format("truetype");
+ src: url("/public/fonts/Monocraft-SemiBold.ttf") format("truetype");
font-weight: 600;
font-style: normal;
}
@font-face {
font-family: "Monocraft";
- src: url("/fonts/Monocraft-SemiBold-Italic.ttf") format("truetype");
+ src: url("/public/fonts/Monocraft-SemiBold-Italic.ttf") format("truetype");
font-weight: 600;
font-style: italic;
}
@font-face {
font-family: "Monocraft";
- src: url("/fonts/Monocraft-Bold.ttf") format("truetype");
+ src: url("/public/fonts/Monocraft-Bold.ttf") format("truetype");
font-weight: 700;
font-style: normal;
}
@font-face {
font-family: "Monocraft";
- src: url("/fonts/Monocraft-Bold-Italic.ttf") format("truetype");
+ src: url("/public/fonts/Monocraft-Bold-Italic.ttf") format("truetype");
font-weight: 700;
font-style: italic;
}
@font-face {
font-family: "Monocraft";
- src: url("/fonts/Monocraft-Black.ttf") format("truetype");
+ src: url("/public/fonts/Monocraft-Black.ttf") format("truetype");
font-weight: 800;
font-style: normal;
}
@font-face {
font-family: "Monocraft";
- src: url("/fonts/Monocraft-Black-Italic.ttf") format("truetype");
+ src: url("/public/fonts/Monocraft-Black-Italic.ttf") format("truetype");
font-weight: 800;
font-style: italic;
}
@font-face {
font-family: "Monocraft";
- src: url("/fonts/Monocraft-Black.ttf") format("truetype");
+ src: url("/public/fonts/Monocraft-Black.ttf") format("truetype");
font-weight: 900;
font-style: normal;
}
@font-face {
font-family: "Monocraft";
- src: url("/fonts/Monocraft-Black-Italic.ttf") format("truetype");
+ src: url("/public/fonts/Monocraft-Black-Italic.ttf") format("truetype");
font-weight: 900;
font-style: italic;
}
diff --git a/public/styles/main.css b/public/styles/main.css
new file mode 100644
index 0000000..2c44266
--- /dev/null
+++ b/public/styles/main.css
@@ -0,0 +1,262 @@
+@import "./fonts/Inter/inter.css";
+@import "./fonts/JetBrainsMono.css";
+@import "./fonts/Monocraft.css";
+
+@layer theme, base, components, utilities;
+@import "tailwindcss/theme.css" layer(theme);
+@import "tailwindcss/preflight.css" layer(base);
+@import "tailwindcss/utilities.css" layer(utilities);
+
+@source "../**/*.go";
+@source "../**/*.templ";
+
+:root {
+ --primary: #54d7a9;
+ --secondary: #9b7eca;
+ --accent: #7ed4fb;
+ --extra: #8fcc75;
+ --text: #ffffff;
+ --alt: #999999;
+ --background: #000000;
+ --font-mono: "Jetbrains Mono", monospace;
+ --font-normal: "Inter", system-ui, sans-serif;
+}
+
+html {
+ background-color: var(--background);
+ color: var(--text);
+ font-family: var(--font-mono);
+ user-select: none;
+
+ font-size: 1vw;
+}
+
+body {
+ min-height: 100vh;
+ display: grid;
+ place-items: center;
+ /* font-family: var(--font-mono); */
+}
+
+@layer base {
+ a {
+ font-weight: 300;
+ text-decoration: none;
+ color: var(--secondary);
+ transition-duration: 0.2s;
+ transition-property: color, text-decoration;
+ }
+ a:hover {
+ text-decoration: underline;
+ color: var(--accent);
+ }
+}
+
+.scrollbox::-webkit-scrollbar {
+ width: 1.5rem;
+}
+.scrollbox::-webkit-scrollbar-track {
+ background: transparent;
+ border-left: 0.1rem solid var(--alt);
+}
+.scrollbox::-webkit-scrollbar-thumb {
+ background: var(--primary);
+ border: 0.3rem solid transparent;
+ background-clip: padding-box;
+ border-radius: 0;
+}
+.scrollbox::-webkit-scrollbar-thumb:hover {
+ background: var(--accent);
+}
+
+@supports not selector(::-webkit-scrollbar) {
+ .scrollbox {
+ scrollbar-color: var(--primary) transparent;
+ }
+}
+
+@plugin "@tailwindcss/typography";
+
+.prose {
+ --tw-prose-body: var(--text);
+ --tw-prose-headings: var(--primary);
+ --tw-prose-links: var(--secondary);
+ --tw-prose-bold: var(--text);
+ --tw-prose-bullets: var(--alt);
+ --tw-prose-counters: var(--alt);
+ --tw-prose-hr: var(--alt);
+ --tw-prose-quotes: var(--text);
+ --tw-prose-quote-borders: var(--alt);
+ --tw-prose-captions: var(--alt);
+ --tw-prose-code: var(--extra);
+ --tw-prose-pre-code: var(--text);
+ --tw-prose-pre-bg: rgb(0 0 0 / 0.3);
+ --tw-prose-th-borders: var(--alt);
+ --tw-prose-td-borders: var(--alt);
+}
+
+/* .prose a[target="_blank"]::after { content: " ↗"; font-size: 0.8em; } */
+
+/* headings: color, size, spacing above/below */
+/* .prose h1 { color: var(--accent); font-size: 1.9em; margin: 1.6em 0 0.6em; } */
+/* .prose h2 { color: var(--primary); font-size: 1.5em; margin: 1.6em 0 0.5em; } */
+/* .prose h3 { color: var(--primary); font-size: 1.2em; margin: 1.4em 0 0.4em; } */
+
+/* paragraph and list spacing */
+/* .prose p, .prose ul, .prose ol { margin: 1em 0; } */
+/* .prose li { margin: 0.3em 0; } */
+
+/* links, with no underline on footnote refs */
+/* .prose a { text-decoration: none; } */
+/* .prose a:hover { text-decoration: underline; } */
+.prose a.footnote-ref,
+.prose a.footnote-ref:hover {
+ text-decoration: none;
+}
+
+/* quotes: drop the plugin's quote marks */
+/* .prose blockquote { border-left: 0.2em solid var(--alt); padding-left: 1em; font-style: normal; } */
+/* .prose blockquote p::before, .prose blockquote p::after { content: none; } */
+
+/* inline code: drop the plugin's backticks, add a tag-like background */
+.prose code::before,
+.prose code::after {
+ content: none;
+}
+.prose :not(pre) > code {
+ padding: 0.1em 0.4em;
+ border-radius: 0.3em;
+ background: color-mix(in srgb, var(--alt) 25%, transparent);
+ font-size: 0.9em;
+}
+
+/* the article uses the proportional font, so code needs the mono one back */
+.prose pre,
+.prose code {
+ font-family: var(--font-mono);
+}
+
+.js .footnotes {
+ display: none;
+}
+
+.sidenotes {
+ position: fixed;
+ overflow: hidden;
+ pointer-events: none;
+}
+
+.sidenote {
+ position: absolute;
+ left: 0;
+ right: 0;
+ background: var(--background);
+ font-family: var(--font-normal);
+ font-size: 16px;
+ line-height: 1.4;
+ pointer-events: auto;
+}
+
+.sidenotes.bordered .sidenote {
+ border: 0.1rem solid var(--alt);
+ padding: 0.4rem 0.6rem;
+}
+
+.sidenote-num {
+ font-size: 70%;
+ color: var(--secondary);
+ margin-right: 0.15em;
+}
+
+.chroma .k,
+.chroma .kc,
+.chroma .kd,
+.chroma .kn,
+.chroma .kp,
+.chroma .kr,
+.chroma .kt {
+ color: var(--secondary);
+}
+.chroma .nf,
+.chroma .nc,
+.chroma .nb {
+ color: var(--primary);
+}
+.chroma .s,
+.chroma .sa,
+.chroma .sb,
+.chroma .sc,
+.chroma .dl,
+.chroma .sd,
+.chroma .s2,
+.chroma .se,
+.chroma .sh,
+.chroma .si,
+.chroma .sx,
+.chroma .sr,
+.chroma .s1,
+.chroma .ss {
+ color: var(--extra);
+}
+.chroma .m,
+.chroma .mb,
+.chroma .mf,
+.chroma .mh,
+.chroma .mi,
+.chroma .il,
+.chroma .mo {
+ color: var(--primary);
+}
+.chroma .c,
+.chroma .ch,
+.chroma .cm,
+.chroma .c1,
+.chroma .cs,
+.chroma .cp,
+.chroma .cpf {
+ color: var(--alt);
+ font-style: italic;
+}
+
+.codeblock {
+ margin: 1.2em 0;
+ border: 0.1rem solid var(--alt);
+ border-radius: 0.4rem;
+ background: rgb(0 0 0 / 0.3);
+ overflow: hidden;
+}
+.codeblock::before {
+ content: attr(data-lang);
+ display: block;
+ padding: 0.2em 0.8em;
+ border-bottom: 0.1rem solid var(--alt);
+ font-size: 0.75em;
+ color: var(--alt);
+}
+.codeblock[data-lang=""]::before {
+ display: none;
+}
+.codeblock pre {
+ margin: 0;
+ padding: 0.8em 1em;
+ background: transparent;
+ border-radius: 0;
+ overflow-x: auto;
+ font-size: 0.85em;
+ line-height: 1.5;
+}
+
+@keyframes pop {
+ 50% {
+ transform: scale(1.3);
+ }
+}
+[data-copied] svg {
+ animation: pop 0.25s;
+}
+
+@keyframes bump {
+ 50% {
+ transform: scale(1.03);
+ }
+}
diff --git a/public/styles/style.css b/public/styles/style.css
new file mode 100644
index 0000000..4aff75b
--- /dev/null
+++ b/public/styles/style.css
@@ -0,0 +1,2668 @@
+/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
+@layer properties;
+@font-face {
+ font-family: InterVariable;
+ font-style: normal;
+ font-weight: 100 900;
+ font-display: swap;
+ src: url("InterVariable.woff2") format("woff2");
+}
+@font-face {
+ font-family: InterVariable;
+ font-style: italic;
+ font-weight: 100 900;
+ font-display: swap;
+ src: url("InterVariable-Italic.woff2") format("woff2");
+}
+@font-face {
+ font-family: "Inter";
+ font-style: normal;
+ font-weight: 100;
+ font-display: swap;
+ src: url("Inter-Thin.woff2") format("woff2");
+}
+@font-face {
+ font-family: "Inter";
+ font-style: italic;
+ font-weight: 100;
+ font-display: swap;
+ src: url("Inter-ThinItalic.woff2") format("woff2");
+}
+@font-face {
+ font-family: "Inter";
+ font-style: normal;
+ font-weight: 200;
+ font-display: swap;
+ src: url("Inter-ExtraLight.woff2") format("woff2");
+}
+@font-face {
+ font-family: "Inter";
+ font-style: italic;
+ font-weight: 200;
+ font-display: swap;
+ src: url("Inter-ExtraLightItalic.woff2") format("woff2");
+}
+@font-face {
+ font-family: "Inter";
+ font-style: normal;
+ font-weight: 300;
+ font-display: swap;
+ src: url("Inter-Light.woff2") format("woff2");
+}
+@font-face {
+ font-family: "Inter";
+ font-style: italic;
+ font-weight: 300;
+ font-display: swap;
+ src: url("Inter-LightItalic.woff2") format("woff2");
+}
+@font-face {
+ font-family: "Inter";
+ font-style: normal;
+ font-weight: 400;
+ font-display: swap;
+ src: url("Inter-Regular.woff2") format("woff2");
+}
+@font-face {
+ font-family: "Inter";
+ font-style: italic;
+ font-weight: 400;
+ font-display: swap;
+ src: url("Inter-Italic.woff2") format("woff2");
+}
+@font-face {
+ font-family: "Inter";
+ font-style: normal;
+ font-weight: 500;
+ font-display: swap;
+ src: url("Inter-Medium.woff2") format("woff2");
+}
+@font-face {
+ font-family: "Inter";
+ font-style: italic;
+ font-weight: 500;
+ font-display: swap;
+ src: url("Inter-MediumItalic.woff2") format("woff2");
+}
+@font-face {
+ font-family: "Inter";
+ font-style: normal;
+ font-weight: 600;
+ font-display: swap;
+ src: url("Inter-SemiBold.woff2") format("woff2");
+}
+@font-face {
+ font-family: "Inter";
+ font-style: italic;
+ font-weight: 600;
+ font-display: swap;
+ src: url("Inter-SemiBoldItalic.woff2") format("woff2");
+}
+@font-face {
+ font-family: "Inter";
+ font-style: normal;
+ font-weight: 700;
+ font-display: swap;
+ src: url("Inter-Bold.woff2") format("woff2");
+}
+@font-face {
+ font-family: "Inter";
+ font-style: italic;
+ font-weight: 700;
+ font-display: swap;
+ src: url("Inter-BoldItalic.woff2") format("woff2");
+}
+@font-face {
+ font-family: "Inter";
+ font-style: normal;
+ font-weight: 800;
+ font-display: swap;
+ src: url("Inter-ExtraBold.woff2") format("woff2");
+}
+@font-face {
+ font-family: "Inter";
+ font-style: italic;
+ font-weight: 800;
+ font-display: swap;
+ src: url("Inter-ExtraBoldItalic.woff2") format("woff2");
+}
+@font-face {
+ font-family: "Inter";
+ font-style: normal;
+ font-weight: 900;
+ font-display: swap;
+ src: url("Inter-Black.woff2") format("woff2");
+}
+@font-face {
+ font-family: "Inter";
+ font-style: italic;
+ font-weight: 900;
+ font-display: swap;
+ src: url("Inter-BlackItalic.woff2") format("woff2");
+}
+@font-face {
+ font-family: "InterDisplay";
+ font-style: normal;
+ font-weight: 100;
+ font-display: swap;
+ src: url("InterDisplay-Thin.woff2") format("woff2");
+}
+@font-face {
+ font-family: "InterDisplay";
+ font-style: italic;
+ font-weight: 100;
+ font-display: swap;
+ src: url("InterDisplay-ThinItalic.woff2") format("woff2");
+}
+@font-face {
+ font-family: "InterDisplay";
+ font-style: normal;
+ font-weight: 200;
+ font-display: swap;
+ src: url("InterDisplay-ExtraLight.woff2") format("woff2");
+}
+@font-face {
+ font-family: "InterDisplay";
+ font-style: italic;
+ font-weight: 200;
+ font-display: swap;
+ src: url("InterDisplay-ExtraLightItalic.woff2") format("woff2");
+}
+@font-face {
+ font-family: "InterDisplay";
+ font-style: normal;
+ font-weight: 300;
+ font-display: swap;
+ src: url("InterDisplay-Light.woff2") format("woff2");
+}
+@font-face {
+ font-family: "InterDisplay";
+ font-style: italic;
+ font-weight: 300;
+ font-display: swap;
+ src: url("InterDisplay-LightItalic.woff2") format("woff2");
+}
+@font-face {
+ font-family: "InterDisplay";
+ font-style: normal;
+ font-weight: 400;
+ font-display: swap;
+ src: url("InterDisplay-Regular.woff2") format("woff2");
+}
+@font-face {
+ font-family: "InterDisplay";
+ font-style: italic;
+ font-weight: 400;
+ font-display: swap;
+ src: url("InterDisplay-Italic.woff2") format("woff2");
+}
+@font-face {
+ font-family: "InterDisplay";
+ font-style: normal;
+ font-weight: 500;
+ font-display: swap;
+ src: url("InterDisplay-Medium.woff2") format("woff2");
+}
+@font-face {
+ font-family: "InterDisplay";
+ font-style: italic;
+ font-weight: 500;
+ font-display: swap;
+ src: url("InterDisplay-MediumItalic.woff2") format("woff2");
+}
+@font-face {
+ font-family: "InterDisplay";
+ font-style: normal;
+ font-weight: 600;
+ font-display: swap;
+ src: url("InterDisplay-SemiBold.woff2") format("woff2");
+}
+@font-face {
+ font-family: "InterDisplay";
+ font-style: italic;
+ font-weight: 600;
+ font-display: swap;
+ src: url("InterDisplay-SemiBoldItalic.woff2") format("woff2");
+}
+@font-face {
+ font-family: "InterDisplay";
+ font-style: normal;
+ font-weight: 700;
+ font-display: swap;
+ src: url("InterDisplay-Bold.woff2") format("woff2");
+}
+@font-face {
+ font-family: "InterDisplay";
+ font-style: italic;
+ font-weight: 700;
+ font-display: swap;
+ src: url("InterDisplay-BoldItalic.woff2") format("woff2");
+}
+@font-face {
+ font-family: "InterDisplay";
+ font-style: normal;
+ font-weight: 800;
+ font-display: swap;
+ src: url("InterDisplay-ExtraBold.woff2") format("woff2");
+}
+@font-face {
+ font-family: "InterDisplay";
+ font-style: italic;
+ font-weight: 800;
+ font-display: swap;
+ src: url("InterDisplay-ExtraBoldItalic.woff2") format("woff2");
+}
+@font-face {
+ font-family: "InterDisplay";
+ font-style: normal;
+ font-weight: 900;
+ font-display: swap;
+ src: url("InterDisplay-Black.woff2") format("woff2");
+}
+@font-face {
+ font-family: "InterDisplay";
+ font-style: italic;
+ font-weight: 900;
+ font-display: swap;
+ src: url("InterDisplay-BlackItalic.woff2") format("woff2");
+}
+@font-feature-values InterVariable {
+ @character-variant {
+ cv01: 1;
+ cv02: 2;
+ cv03: 3;
+ cv04: 4;
+ cv05: 5;
+ cv06: 6;
+ cv07: 7;
+ cv08: 8;
+ cv09: 9;
+ cv10: 10;
+ cv11: 11;
+ cv12: 12;
+ cv13: 13;
+ alt-1: 1;
+ alt-3: 9;
+ open-4: 2;
+ open-6: 3;
+ open-9: 4;
+ lc-l-with-tail: 5;
+ simplified-u: 6;
+ alt-double-s: 7;
+ uc-i-with-serif: 8;
+ uc-g-with-spur: 10;
+ single-story-a: 11;
+ compact-lc-f: 12;
+ compact-lc-t: 13;
+ }
+ @styleset {
+ ss01: 1;
+ ss02: 2;
+ ss03: 3;
+ ss04: 4;
+ ss05: 5;
+ ss06: 6;
+ ss07: 7;
+ ss08: 8;
+ open-digits: 1;
+ disambiguation: 2;
+ disambiguation-except-zero: 4;
+ round-quotes-and-commas: 3;
+ square-punctuation: 7;
+ square-quotes: 8;
+ circled-characters: 5;
+ squared-characters: 6;
+ }
+}
+@font-feature-values Inter {
+ @character-variant {
+ cv01: 1;
+ cv02: 2;
+ cv03: 3;
+ cv04: 4;
+ cv05: 5;
+ cv06: 6;
+ cv07: 7;
+ cv08: 8;
+ cv09: 9;
+ cv10: 10;
+ cv11: 11;
+ cv12: 12;
+ cv13: 13;
+ alt-1: 1;
+ alt-3: 9;
+ open-4: 2;
+ open-6: 3;
+ open-9: 4;
+ lc-l-with-tail: 5;
+ simplified-u: 6;
+ alt-double-s: 7;
+ uc-i-with-serif: 8;
+ uc-g-with-spur: 10;
+ single-story-a: 11;
+ compact-lc-f: 12;
+ compact-lc-t: 13;
+ }
+ @styleset {
+ ss01: 1;
+ ss02: 2;
+ ss03: 3;
+ ss04: 4;
+ ss05: 5;
+ ss06: 6;
+ ss07: 7;
+ ss08: 8;
+ open-digits: 1;
+ disambiguation: 2;
+ disambiguation-except-zero: 4;
+ round-quotes-and-commas: 3;
+ square-punctuation: 7;
+ square-quotes: 8;
+ circled-characters: 5;
+ squared-characters: 6;
+ }
+}
+@font-feature-values InterDisplay {
+ @character-variant {
+ cv01: 1;
+ cv02: 2;
+ cv03: 3;
+ cv04: 4;
+ cv05: 5;
+ cv06: 6;
+ cv07: 7;
+ cv08: 8;
+ cv09: 9;
+ cv10: 10;
+ cv11: 11;
+ cv12: 12;
+ cv13: 13;
+ alt-1: 1;
+ alt-3: 9;
+ open-4: 2;
+ open-6: 3;
+ open-9: 4;
+ lc-l-with-tail: 5;
+ simplified-u: 6;
+ alt-double-s: 7;
+ uc-i-with-serif: 8;
+ uc-g-with-spur: 10;
+ single-story-a: 11;
+ compact-lc-f: 12;
+ compact-lc-t: 13;
+ }
+ @styleset {
+ ss01: 1;
+ ss02: 2;
+ ss03: 3;
+ ss04: 4;
+ ss05: 5;
+ ss06: 6;
+ ss07: 7;
+ ss08: 8;
+ open-digits: 1;
+ disambiguation: 2;
+ disambiguation-except-zero: 4;
+ round-quotes-and-commas: 3;
+ square-punctuation: 7;
+ square-quotes: 8;
+ circled-characters: 5;
+ squared-characters: 6;
+ }
+}
+@font-face {
+ font-family: "Jetbrains Mono";
+ src: url("/public/fonts/JetBrainsMono-Thin.woff2") format("woff2");
+ font-weight: 100;
+ font-style: normal;
+}
+@font-face {
+ font-family: "Jetbrains Mono";
+ src: url("/public/fonts/JetBrainsMono-ThinItalic.woff2") format("woff2");
+ font-weight: 100;
+ font-style: italic;
+}
+@font-face {
+ font-family: "Jetbrains Mono";
+ src: url("/public/fonts/JetBrainsMono-ExtraLight.woff2") format("woff2");
+ font-weight: 200;
+ font-style: normal;
+}
+@font-face {
+ font-family: "Jetbrains Mono";
+ src: url("/public/fonts/JetBrainsMono-ExtraLightItalic.woff2") format("woff2");
+ font-weight: 200;
+ font-style: italic;
+}
+@font-face {
+ font-family: "Jetbrains Mono";
+ src: url("/public/fonts/JetBrainsMono-Light.woff2") format("woff2");
+ font-weight: 300;
+ font-style: normal;
+}
+@font-face {
+ font-family: "Jetbrains Mono";
+ src: url("/public/fonts/JetBrainsMono-LightItalic.woff2") format("woff2");
+ font-weight: 300;
+ font-style: italic;
+}
+@font-face {
+ font-family: "Jetbrains Mono";
+ src: url("/public/fonts/JetBrainsMono-Regular.woff2") format("woff2");
+ font-weight: 400;
+ font-style: normal;
+}
+@font-face {
+ font-family: "Jetbrains Mono";
+ src: url("/public/fonts/JetBrainsMono-Italic.woff2") format("woff2");
+ font-weight: 400;
+ font-style: italic;
+}
+@font-face {
+ font-family: "Jetbrains Mono";
+ src: url("/public/fonts/JetBrainsMono-Medium.woff2") format("woff2");
+ font-weight: 500;
+ font-style: normal;
+}
+@font-face {
+ font-family: "Jetbrains Mono";
+ src: url("/public/fonts/JetBrainsMono-MediumItalic.woff2") format("woff2");
+ font-weight: 500;
+ font-style: italic;
+}
+@font-face {
+ font-family: "Jetbrains Mono";
+ src: url("/public/fonts/JetBrainsMono-SemiBold.woff2") format("woff2");
+ font-weight: 600;
+ font-style: normal;
+}
+@font-face {
+ font-family: "Jetbrains Mono";
+ src: url("/public/fonts/JetBrainsMono-SemiBoldItalic.woff2") format("woff2");
+ font-weight: 600;
+ font-style: italic;
+}
+@font-face {
+ font-family: "Jetbrains Mono";
+ src: url("/public/fonts/JetBrainsMono-Bold.woff2") format("woff2");
+ font-weight: 700;
+ font-style: normal;
+}
+@font-face {
+ font-family: "Jetbrains Mono";
+ src: url("/public/fonts/JetBrainsMono-BoldItalic.woff2") format("woff2");
+ font-weight: 700;
+ font-style: italic;
+}
+@font-face {
+ font-family: "Jetbrains Mono";
+ src: url("/public/fonts/JetBrainsMono-ExtraBold.woff2") format("woff2");
+ font-weight: 800;
+ font-style: normal;
+}
+@font-face {
+ font-family: "Jetbrains Mono";
+ src: url("/public/fonts/JetBrainsMono-ExtraBoldItalic.woff2") format("woff2");
+ font-weight: 800;
+ font-style: italic;
+}
+@font-face {
+ font-family: "Jetbrains Mono";
+ src: url("/public/fonts/JetBrainsMono-ExtraBold.woff2") format("woff2");
+ font-weight: 900;
+ font-style: normal;
+}
+@font-face {
+ font-family: "Jetbrains Mono";
+ src: url("/public/fonts/JetBrainsMono-ExtraBoldItalic.woff2") format("woff2");
+ font-weight: 900;
+ font-style: italic;
+}
+@font-face {
+ font-family: "Monocraft";
+ src: url("/public/fonts/Monocraft-ExtraLight.ttf") format("truetype");
+ font-weight: 100;
+ font-style: normal;
+}
+@font-face {
+ font-family: "Monocraft";
+ src: url("/public/fonts/Monocraft-ExtraLight-Italic.ttf") format("truetype");
+ font-weight: 100;
+ font-style: italic;
+}
+@font-face {
+ font-family: "Monocraft";
+ src: url("/public/fonts/Monocraft-ExtraLight.ttf") format("truetype");
+ font-weight: 200;
+ font-style: normal;
+}
+@font-face {
+ font-family: "Monocraft";
+ src: url("/public/fonts/Monocraft-ExtraLight-Italic.ttf") format("truetype");
+ font-weight: 200;
+ font-style: italic;
+}
+@font-face {
+ font-family: "Monocraft";
+ src: url("/public/fonts/Monocraft-Light.ttf") format("truetype");
+ font-weight: 300;
+ font-style: normal;
+}
+@font-face {
+ font-family: "Monocraft";
+ src: url("/public/fonts/Monocraft-Light-Italic.ttf") format("truetype");
+ font-weight: 300;
+ font-style: italic;
+}
+@font-face {
+ font-family: "Monocraft";
+ src: url("/public/fonts/Monocraft.ttf") format("truetype");
+ font-weight: 400;
+ font-style: normal;
+}
+@font-face {
+ font-family: "Monocraft";
+ src: url("/public/fonts/Monocraft-Italic.ttf") format("truetype");
+ font-weight: 400;
+ font-style: italic;
+}
+@font-face {
+ font-family: "Monocraft";
+ src: url("/public/fonts/Monocraft.ttf") format("truetype");
+ font-weight: 500;
+ font-style: normal;
+}
+@font-face {
+ font-family: "Monocraft";
+ src: url("/public/fonts/Monocraft-Italic.ttf") format("truetype");
+ font-weight: 500;
+ font-style: italic;
+}
+@font-face {
+ font-family: "Monocraft";
+ src: url("/public/fonts/Monocraft-SemiBold.ttf") format("truetype");
+ font-weight: 600;
+ font-style: normal;
+}
+@font-face {
+ font-family: "Monocraft";
+ src: url("/public/fonts/Monocraft-SemiBold-Italic.ttf") format("truetype");
+ font-weight: 600;
+ font-style: italic;
+}
+@font-face {
+ font-family: "Monocraft";
+ src: url("/public/fonts/Monocraft-Bold.ttf") format("truetype");
+ font-weight: 700;
+ font-style: normal;
+}
+@font-face {
+ font-family: "Monocraft";
+ src: url("/public/fonts/Monocraft-Bold-Italic.ttf") format("truetype");
+ font-weight: 700;
+ font-style: italic;
+}
+@font-face {
+ font-family: "Monocraft";
+ src: url("/public/fonts/Monocraft-Black.ttf") format("truetype");
+ font-weight: 800;
+ font-style: normal;
+}
+@font-face {
+ font-family: "Monocraft";
+ src: url("/public/fonts/Monocraft-Black-Italic.ttf") format("truetype");
+ font-weight: 800;
+ font-style: italic;
+}
+@font-face {
+ font-family: "Monocraft";
+ src: url("/public/fonts/Monocraft-Black.ttf") format("truetype");
+ font-weight: 900;
+ font-style: normal;
+}
+@font-face {
+ font-family: "Monocraft";
+ src: url("/public/fonts/Monocraft-Black-Italic.ttf") format("truetype");
+ font-weight: 900;
+ font-style: italic;
+}
+@layer theme, base, components, utilities;
+@layer theme {
+ :root, :host {
+ --font-sans: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', 'Noto Sans', Arial,
+ sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
+ --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New',
+ monospace;
+ --color-gray-700: oklch(37.3% 0.034 259.733);
+ --color-black: #000;
+ --color-white: #fff;
+ --spacing: 0.25rem;
+ --container-3xl: 48rem;
+ --font-weight-normal: 400;
+ --font-weight-bold: 700;
+ --leading-relaxed: 1.625;
+ --default-transition-duration: 150ms;
+ --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
+ --default-font-family: var(--font-sans);
+ --default-mono-font-family: var(--font-mono);
+ }
+}
+@layer base {
+ *, ::after, ::before, ::backdrop, ::file-selector-button {
+ box-sizing: border-box;
+ margin: 0;
+ padding: 0;
+ border: 0 solid;
+ }
+ html, :host {
+ line-height: 1.5;
+ -webkit-text-size-adjust: 100%;
+ tab-size: 4;
+ font-family: var(--default-font-family, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', 'Noto Sans', Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji');
+ font-feature-settings: var(--default-font-feature-settings, normal);
+ font-variation-settings: var(--default-font-variation-settings, normal);
+ -webkit-tap-highlight-color: transparent;
+ }
+ hr {
+ height: 0;
+ color: inherit;
+ border-top-width: 1px;
+ }
+ abbr:where([title]) {
+ -webkit-text-decoration: underline dotted;
+ text-decoration: underline dotted;
+ }
+ h1, h2, h3, h4, h5, h6 {
+ font-size: inherit;
+ font-weight: inherit;
+ }
+ a {
+ color: inherit;
+ -webkit-text-decoration: inherit;
+ text-decoration: inherit;
+ }
+ b, strong {
+ font-weight: bolder;
+ }
+ code, kbd, samp, pre {
+ font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace);
+ font-feature-settings: var(--default-mono-font-feature-settings, normal);
+ font-variation-settings: var(--default-mono-font-variation-settings, normal);
+ font-size: 1em;
+ }
+ small {
+ font-size: 80%;
+ }
+ sub, sup {
+ font-size: 75%;
+ line-height: 0;
+ position: relative;
+ vertical-align: baseline;
+ }
+ sub {
+ bottom: -0.25em;
+ }
+ sup {
+ top: -0.5em;
+ }
+ table {
+ text-indent: 0;
+ border-color: inherit;
+ border-collapse: collapse;
+ }
+ :-moz-focusring:where(:not(iframe)) {
+ outline: auto;
+ }
+ progress {
+ vertical-align: baseline;
+ }
+ summary {
+ display: list-item;
+ }
+ ol, ul, menu {
+ list-style: none;
+ }
+ img, svg, video, canvas, audio, iframe, embed, object {
+ display: block;
+ vertical-align: middle;
+ }
+ img, video {
+ max-width: 100%;
+ height: auto;
+ }
+ button, input, select, optgroup, textarea, ::file-selector-button {
+ font: inherit;
+ font-feature-settings: inherit;
+ font-variation-settings: inherit;
+ letter-spacing: inherit;
+ color: inherit;
+ border-radius: 0;
+ background-color: transparent;
+ opacity: 1;
+ }
+ :where(select:is([multiple], [size])) optgroup {
+ font-weight: bolder;
+ }
+ :where(select:is([multiple], [size])) optgroup option {
+ padding-inline-start: 20px;
+ }
+ ::file-selector-button {
+ margin-inline-end: 4px;
+ }
+ ::placeholder {
+ opacity: 1;
+ }
+ @supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px) {
+ ::placeholder {
+ color: currentcolor;
+ @supports (color: color-mix(in lab, red, red)) {
+ color: color-mix(in oklab, currentcolor 50%, transparent);
+ }
+ }
+ }
+ textarea {
+ resize: vertical;
+ }
+ ::-webkit-search-decoration {
+ -webkit-appearance: none;
+ }
+ ::-webkit-date-and-time-value {
+ min-height: 1lh;
+ text-align: inherit;
+ }
+ ::-webkit-datetime-edit {
+ display: inline-flex;
+ }
+ ::-webkit-datetime-edit-fields-wrapper {
+ padding: 0;
+ }
+ ::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {
+ padding-block: 0;
+ }
+ ::-webkit-calendar-picker-indicator {
+ line-height: 1;
+ }
+ :-moz-ui-invalid {
+ box-shadow: none;
+ }
+ button, input:where([type='button'], [type='reset'], [type='submit']), ::file-selector-button {
+ appearance: button;
+ }
+ ::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
+ height: auto;
+ }
+ [hidden]:where(:not([hidden='until-found'])) {
+ display: none !important;
+ }
+}
+@layer utilities {
+ .invisible {
+ visibility: hidden;
+ }
+ .visible {
+ visibility: visible;
+ }
+ .absolute {
+ position: absolute;
+ }
+ .fixed {
+ position: fixed;
+ }
+ .relative {
+ position: relative;
+ }
+ .static {
+ position: static;
+ }
+ .inset-x-\[0\.3rem\] {
+ inset-inline: 0.3rem;
+ }
+ .top-1\/2 {
+ top: calc(1 / 2 * 100%);
+ }
+ .top-\[-0\.7em\] {
+ top: -0.7em;
+ }
+ .top-\[-0\.75rem\] {
+ top: -0.75rem;
+ }
+ .top-\[0\.6rem\] {
+ top: 0.6rem;
+ }
+ .right-\[0\.6rem\] {
+ right: 0.6rem;
+ }
+ .right-full {
+ right: 100%;
+ }
+ .bottom-\[-0\.7em\] {
+ bottom: -0.7em;
+ }
+ .bottom-\[-0\.55rem\] {
+ bottom: -0.55rem;
+ }
+ .bottom-\[-0\.75rem\] {
+ bottom: -0.75rem;
+ }
+ .left-\[0\.5em\] {
+ left: 0.5em;
+ }
+ .left-\[0\.625rem\] {
+ left: 0.625rem;
+ }
+ .z-10 {
+ z-index: 10;
+ }
+ .col-span-2 {
+ grid-column: span 2 / span 2;
+ }
+ .-m-\[0\.4rem\] {
+ margin: calc(0.4rem * -1);
+ }
+ .m-0 {
+ margin: 0px;
+ }
+ .m-\[-0\.1vw\] {
+ margin: -0.1vw;
+ }
+ .m-auto {
+ margin: auto;
+ }
+ .mx-\[0\.2vw\] {
+ margin-inline: 0.2vw;
+ }
+ .mx-\[1vw\] {
+ margin-inline: 1vw;
+ }
+ .my-\[-0\.15rem\] {
+ margin-block: -0.15rem;
+ }
+ .my-\[0\.625vw\] {
+ margin-block: 0.625vw;
+ }
+ .my-\[2\.5vw\] {
+ margin-block: 2.5vw;
+ }
+ .my-\[3vw\] {
+ margin-block: 3vw;
+ }
+ .my-\[5vw\] {
+ margin-block: 5vw;
+ }
+ .prose {
+ color: var(--tw-prose-body);
+ max-width: 65ch;
+ :where(p):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ margin-top: 1.25em;
+ margin-bottom: 1.25em;
+ }
+ :where([class~="lead"]):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ color: var(--tw-prose-lead);
+ font-size: 1.25em;
+ line-height: 1.6;
+ margin-top: 1.2em;
+ margin-bottom: 1.2em;
+ }
+ :where(a):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ color: var(--tw-prose-links);
+ text-decoration: underline;
+ font-weight: 500;
+ }
+ :where(strong):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ color: var(--tw-prose-bold);
+ font-weight: 600;
+ }
+ :where(a strong):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ color: inherit;
+ }
+ :where(blockquote strong):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ color: inherit;
+ }
+ :where(thead th strong):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ color: inherit;
+ }
+ :where(ol):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ list-style-type: decimal;
+ margin-top: 1.25em;
+ margin-bottom: 1.25em;
+ padding-inline-start: 1.625em;
+ }
+ :where(ol[type="A"]):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ list-style-type: upper-alpha;
+ }
+ :where(ol[type="a"]):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ list-style-type: lower-alpha;
+ }
+ :where(ol[type="A" s]):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ list-style-type: upper-alpha;
+ }
+ :where(ol[type="a" s]):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ list-style-type: lower-alpha;
+ }
+ :where(ol[type="I"]):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ list-style-type: upper-roman;
+ }
+ :where(ol[type="i"]):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ list-style-type: lower-roman;
+ }
+ :where(ol[type="I" s]):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ list-style-type: upper-roman;
+ }
+ :where(ol[type="i" s]):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ list-style-type: lower-roman;
+ }
+ :where(ol[type="1"]):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ list-style-type: decimal;
+ }
+ :where(ul):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ list-style-type: disc;
+ margin-top: 1.25em;
+ margin-bottom: 1.25em;
+ padding-inline-start: 1.625em;
+ }
+ :where(ol > li):not(:where([class~="not-prose"], [class~="not-prose"] *))::marker {
+ font-weight: 400;
+ color: var(--tw-prose-counters);
+ }
+ :where(ul > li):not(:where([class~="not-prose"], [class~="not-prose"] *))::marker {
+ color: var(--tw-prose-bullets);
+ }
+ :where(dt):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ color: var(--tw-prose-headings);
+ font-weight: 600;
+ margin-top: 1.25em;
+ }
+ :where(hr):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ border-color: var(--tw-prose-hr);
+ border-top-width: 1px;
+ margin-top: 3em;
+ margin-bottom: 3em;
+ }
+ :where(blockquote):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ font-weight: 500;
+ font-style: italic;
+ color: var(--tw-prose-quotes);
+ border-inline-start-width: 0.25rem;
+ border-inline-start-color: var(--tw-prose-quote-borders);
+ quotes: "\201C""\201D""\2018""\2019";
+ margin-top: 1.6em;
+ margin-bottom: 1.6em;
+ padding-inline-start: 1em;
+ }
+ :where(blockquote p:first-of-type):not(:where([class~="not-prose"], [class~="not-prose"] *))::before {
+ content: open-quote;
+ }
+ :where(blockquote p:last-of-type):not(:where([class~="not-prose"], [class~="not-prose"] *))::after {
+ content: close-quote;
+ }
+ :where(h1):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ color: var(--tw-prose-headings);
+ font-weight: 800;
+ font-size: 2.25em;
+ margin-top: 0;
+ margin-bottom: 0.8888889em;
+ line-height: 1.1111111;
+ }
+ :where(h1 strong):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ font-weight: 900;
+ color: inherit;
+ }
+ :where(h2):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ color: var(--tw-prose-headings);
+ font-weight: 700;
+ font-size: 1.5em;
+ margin-top: 2em;
+ margin-bottom: 1em;
+ line-height: 1.3333333;
+ }
+ :where(h2 strong):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ font-weight: 800;
+ color: inherit;
+ }
+ :where(h3):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ color: var(--tw-prose-headings);
+ font-weight: 600;
+ font-size: 1.25em;
+ margin-top: 1.6em;
+ margin-bottom: 0.6em;
+ line-height: 1.6;
+ }
+ :where(h3 strong):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ font-weight: 700;
+ color: inherit;
+ }
+ :where(h4):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ color: var(--tw-prose-headings);
+ font-weight: 600;
+ margin-top: 1.5em;
+ margin-bottom: 0.5em;
+ line-height: 1.5;
+ }
+ :where(h4 strong):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ font-weight: 700;
+ color: inherit;
+ }
+ :where(img):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ margin-top: 2em;
+ margin-bottom: 2em;
+ }
+ :where(picture):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ display: block;
+ margin-top: 2em;
+ margin-bottom: 2em;
+ }
+ :where(video):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ margin-top: 2em;
+ margin-bottom: 2em;
+ }
+ :where(kbd):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ font-weight: 500;
+ font-family: inherit;
+ color: var(--tw-prose-kbd);
+ box-shadow: 0 0 0 1px var(--tw-prose-kbd-shadows), 0 3px 0 var(--tw-prose-kbd-shadows);
+ font-size: 0.875em;
+ border-radius: 0.3125rem;
+ padding-top: 0.1875em;
+ padding-inline-end: 0.375em;
+ padding-bottom: 0.1875em;
+ padding-inline-start: 0.375em;
+ }
+ :where(code):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ color: var(--tw-prose-code);
+ font-weight: 600;
+ font-size: 0.875em;
+ }
+ :where(code):not(:where([class~="not-prose"], [class~="not-prose"] *))::before {
+ content: "`";
+ }
+ :where(code):not(:where([class~="not-prose"], [class~="not-prose"] *))::after {
+ content: "`";
+ }
+ :where(a code):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ color: inherit;
+ }
+ :where(h1 code):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ color: inherit;
+ }
+ :where(h2 code):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ color: inherit;
+ font-size: 0.875em;
+ }
+ :where(h3 code):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ color: inherit;
+ font-size: 0.9em;
+ }
+ :where(h4 code):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ color: inherit;
+ }
+ :where(blockquote code):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ color: inherit;
+ }
+ :where(thead th code):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ color: inherit;
+ }
+ :where(pre):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ color: var(--tw-prose-pre-code);
+ background-color: var(--tw-prose-pre-bg);
+ overflow-x: auto;
+ font-weight: 400;
+ font-size: 0.875em;
+ line-height: 1.7142857;
+ margin-top: 1.7142857em;
+ margin-bottom: 1.7142857em;
+ border-radius: 0.375rem;
+ padding-top: 0.8571429em;
+ padding-inline-end: 1.1428571em;
+ padding-bottom: 0.8571429em;
+ padding-inline-start: 1.1428571em;
+ }
+ :where(pre code):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ background-color: transparent;
+ border-width: 0;
+ border-radius: 0;
+ padding: 0;
+ font-weight: inherit;
+ color: inherit;
+ font-size: inherit;
+ font-family: inherit;
+ line-height: inherit;
+ }
+ :where(pre code):not(:where([class~="not-prose"], [class~="not-prose"] *))::before {
+ content: none;
+ }
+ :where(pre code):not(:where([class~="not-prose"], [class~="not-prose"] *))::after {
+ content: none;
+ }
+ :where(table):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ width: 100%;
+ table-layout: auto;
+ margin-top: 2em;
+ margin-bottom: 2em;
+ font-size: 0.875em;
+ line-height: 1.7142857;
+ }
+ :where(thead):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ border-bottom-width: 1px;
+ border-bottom-color: var(--tw-prose-th-borders);
+ }
+ :where(thead th):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ color: var(--tw-prose-headings);
+ font-weight: 600;
+ vertical-align: bottom;
+ padding-inline-end: 0.5714286em;
+ padding-bottom: 0.5714286em;
+ padding-inline-start: 0.5714286em;
+ }
+ :where(tbody tr):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ border-bottom-width: 1px;
+ border-bottom-color: var(--tw-prose-td-borders);
+ }
+ :where(tbody tr:last-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ border-bottom-width: 0;
+ }
+ :where(tbody td):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ vertical-align: baseline;
+ }
+ :where(tfoot):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ border-top-width: 1px;
+ border-top-color: var(--tw-prose-th-borders);
+ }
+ :where(tfoot td):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ vertical-align: top;
+ }
+ :where(th, td):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ text-align: start;
+ }
+ :where(figure > *):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ margin-top: 0;
+ margin-bottom: 0;
+ }
+ :where(figcaption):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ color: var(--tw-prose-captions);
+ font-size: 0.875em;
+ line-height: 1.4285714;
+ margin-top: 0.8571429em;
+ }
+ --tw-prose-body: oklch(37.3% 0.034 259.733);
+ --tw-prose-headings: oklch(21% 0.034 264.665);
+ --tw-prose-lead: oklch(44.6% 0.03 256.802);
+ --tw-prose-links: oklch(21% 0.034 264.665);
+ --tw-prose-bold: oklch(21% 0.034 264.665);
+ --tw-prose-counters: oklch(55.1% 0.027 264.364);
+ --tw-prose-bullets: oklch(87.2% 0.01 258.338);
+ --tw-prose-hr: oklch(92.8% 0.006 264.531);
+ --tw-prose-quotes: oklch(21% 0.034 264.665);
+ --tw-prose-quote-borders: oklch(92.8% 0.006 264.531);
+ --tw-prose-captions: oklch(55.1% 0.027 264.364);
+ --tw-prose-kbd: oklch(21% 0.034 264.665);
+ --tw-prose-kbd-shadows: color-mix(in oklab, oklch(21% 0.034 264.665) 10%, transparent);
+ --tw-prose-code: oklch(21% 0.034 264.665);
+ --tw-prose-pre-code: oklch(92.8% 0.006 264.531);
+ --tw-prose-pre-bg: oklch(27.8% 0.033 256.848);
+ --tw-prose-th-borders: oklch(87.2% 0.01 258.338);
+ --tw-prose-td-borders: oklch(92.8% 0.006 264.531);
+ --tw-prose-invert-body: oklch(87.2% 0.01 258.338);
+ --tw-prose-invert-headings: #fff;
+ --tw-prose-invert-lead: oklch(70.7% 0.022 261.325);
+ --tw-prose-invert-links: #fff;
+ --tw-prose-invert-bold: #fff;
+ --tw-prose-invert-counters: oklch(70.7% 0.022 261.325);
+ --tw-prose-invert-bullets: oklch(44.6% 0.03 256.802);
+ --tw-prose-invert-hr: oklch(37.3% 0.034 259.733);
+ --tw-prose-invert-quotes: oklch(96.7% 0.003 264.542);
+ --tw-prose-invert-quote-borders: oklch(37.3% 0.034 259.733);
+ --tw-prose-invert-captions: oklch(70.7% 0.022 261.325);
+ --tw-prose-invert-kbd: #fff;
+ --tw-prose-invert-kbd-shadows: rgb(255 255 255 / 10%);
+ --tw-prose-invert-code: #fff;
+ --tw-prose-invert-pre-code: oklch(87.2% 0.01 258.338);
+ --tw-prose-invert-pre-bg: rgb(0 0 0 / 50%);
+ --tw-prose-invert-th-borders: oklch(44.6% 0.03 256.802);
+ --tw-prose-invert-td-borders: oklch(37.3% 0.034 259.733);
+ font-size: 1rem;
+ line-height: 1.75;
+ :where(picture > img):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ margin-top: 0;
+ margin-bottom: 0;
+ }
+ :where(li):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ margin-top: 0.5em;
+ margin-bottom: 0.5em;
+ }
+ :where(ol > li):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ padding-inline-start: 0.375em;
+ }
+ :where(ul > li):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ padding-inline-start: 0.375em;
+ }
+ :where(.prose > ul > li p):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ margin-top: 0.75em;
+ margin-bottom: 0.75em;
+ }
+ :where(.prose > ul > li > p:first-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ margin-top: 1.25em;
+ }
+ :where(.prose > ul > li > p:last-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ margin-bottom: 1.25em;
+ }
+ :where(.prose > ol > li > p:first-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ margin-top: 1.25em;
+ }
+ :where(.prose > ol > li > p:last-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ margin-bottom: 1.25em;
+ }
+ :where(ul ul, ul ol, ol ul, ol ol):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ margin-top: 0.75em;
+ margin-bottom: 0.75em;
+ }
+ :where(dl):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ margin-top: 1.25em;
+ margin-bottom: 1.25em;
+ }
+ :where(dd):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ margin-top: 0.5em;
+ padding-inline-start: 1.625em;
+ }
+ :where(hr + *):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ margin-top: 0;
+ }
+ :where(h2 + *):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ margin-top: 0;
+ }
+ :where(h3 + *):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ margin-top: 0;
+ }
+ :where(h4 + *):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ margin-top: 0;
+ }
+ :where(thead th:first-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ padding-inline-start: 0;
+ }
+ :where(thead th:last-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ padding-inline-end: 0;
+ }
+ :where(tbody td, tfoot td):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ padding-top: 0.5714286em;
+ padding-inline-end: 0.5714286em;
+ padding-bottom: 0.5714286em;
+ padding-inline-start: 0.5714286em;
+ }
+ :where(tbody td:first-child, tfoot td:first-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ padding-inline-start: 0;
+ }
+ :where(tbody td:last-child, tfoot td:last-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ padding-inline-end: 0;
+ }
+ :where(figure):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ margin-top: 2em;
+ margin-bottom: 2em;
+ }
+ :where(.prose > :first-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ margin-top: 0;
+ }
+ :where(.prose > :last-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
+ margin-bottom: 0;
+ }
+ }
+ .mt-\[0\.5rem\] {
+ margin-top: 0.5rem;
+ }
+ .mt-\[0\.625vw\] {
+ margin-top: 0.625vw;
+ }
+ .mt-\[1rem\] {
+ margin-top: 1rem;
+ }
+ .mt-\[1vw\] {
+ margin-top: 1vw;
+ }
+ .mt-\[8vw\] {
+ margin-top: 8vw;
+ }
+ .mt-\[10vw\] {
+ margin-top: 10vw;
+ }
+ .mr-2 {
+ margin-right: calc(var(--spacing) * 2);
+ }
+ .mr-\[0\.1vw\] {
+ margin-right: 0.1vw;
+ }
+ .mr-\[2\.5vh\] {
+ margin-right: 2.5vh;
+ }
+ .mb-0 {
+ margin-bottom: 0px;
+ }
+ .mb-6 {
+ margin-bottom: calc(var(--spacing) * 6);
+ }
+ .mb-\[0\.30rem\] {
+ margin-bottom: 0.30rem;
+ }
+ .mb-\[1\.5rem\] {
+ margin-bottom: 1.5rem;
+ }
+ .mb-\[1\.5625vw\] {
+ margin-bottom: 1.5625vw;
+ }
+ .mb-\[1rem\] {
+ margin-bottom: 1rem;
+ }
+ .mb-\[5vw\] {
+ margin-bottom: 5vw;
+ }
+ .mb-\[7vw\] {
+ margin-bottom: 7vw;
+ }
+ .-ml-\[0\.1rem\] {
+ margin-left: calc(0.1rem * -1);
+ }
+ .ml-\[-4vw\] {
+ margin-left: -4vw;
+ }
+ .ml-auto {
+ margin-left: auto;
+ }
+ .block {
+ display: block;
+ }
+ .flex {
+ display: flex;
+ }
+ .grid {
+ display: grid;
+ }
+ .hidden {
+ display: none;
+ }
+ .inline-block {
+ display: inline-block;
+ }
+ .inline-flex {
+ display: inline-flex;
+ }
+ .table {
+ display: table;
+ }
+ .h-0 {
+ height: 0px;
+ }
+ .h-38 {
+ height: calc(var(--spacing) * 38);
+ }
+ .h-\[9\.5vw\] {
+ height: 9.5vw;
+ }
+ .h-\[40rem\] {
+ height: 40rem;
+ }
+ .h-\[62\%\] {
+ height: 62%;
+ }
+ .h-\[80svh\] {
+ height: 80svh;
+ }
+ .h-\[85svh\] {
+ height: 85svh;
+ }
+ .h-\[97vh\] {
+ height: 97vh;
+ }
+ .h-\[100\%\] {
+ height: 100%;
+ }
+ .h-full {
+ height: 100%;
+ }
+ .max-h-\[80svh\] {
+ max-height: 80svh;
+ }
+ .min-h-0 {
+ min-height: 0px;
+ }
+ .w-0 {
+ width: 0px;
+ }
+ .w-8 {
+ width: calc(var(--spacing) * 8);
+ }
+ .w-\[30\%\] {
+ width: 30%;
+ }
+ .w-\[67\%\] {
+ width: 67%;
+ }
+ .w-\[70\%\] {
+ width: 70%;
+ }
+ .w-\[75rem\] {
+ width: 75rem;
+ }
+ .w-\[95vw\] {
+ width: 95vw;
+ }
+ .w-\[100\%\] {
+ width: 100%;
+ }
+ .w-\[334\%\] {
+ width: 334%;
+ }
+ .w-full {
+ width: 100%;
+ }
+ .max-w-3xl {
+ max-width: var(--container-3xl);
+ }
+ .min-w-0 {
+ min-width: 0px;
+ }
+ .flex-1 {
+ flex: 1;
+ }
+ .shrink-0 {
+ flex-shrink: 0;
+ }
+ .-translate-y-1\/2 {
+ --tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
+ translate: var(--tw-translate-x) var(--tw-translate-y);
+ }
+ .scale-150 {
+ --tw-scale-x: 150%;
+ --tw-scale-y: 150%;
+ --tw-scale-z: 150%;
+ scale: var(--tw-scale-x) var(--tw-scale-y);
+ }
+ .transform {
+ transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);
+ }
+ .cursor-grab {
+ cursor: grab;
+ }
+ .cursor-pointer {
+ cursor: pointer;
+ }
+ .touch-none {
+ touch-action: none;
+ }
+ .resize {
+ resize: both;
+ }
+ .\[scrollbar-width\:none\] {
+ scrollbar-width: none;
+ }
+ .grid-cols-2 {
+ grid-template-columns: repeat(2, minmax(0, 1fr));
+ }
+ .grid-cols-3 {
+ grid-template-columns: repeat(3, minmax(0, 1fr));
+ }
+ .grid-cols-5 {
+ grid-template-columns: repeat(5, minmax(0, 1fr));
+ }
+ .grid-cols-\[29\%_1fr\] {
+ grid-template-columns: 29% 1fr;
+ }
+ .flex-col {
+ flex-direction: column;
+ }
+ .flex-wrap {
+ flex-wrap: wrap;
+ }
+ .items-baseline {
+ align-items: baseline;
+ }
+ .items-center {
+ align-items: center;
+ }
+ .justify-between {
+ justify-content: space-between;
+ }
+ .gap-4 {
+ gap: calc(var(--spacing) * 4);
+ }
+ .gap-8 {
+ gap: calc(var(--spacing) * 8);
+ }
+ .gap-10 {
+ gap: calc(var(--spacing) * 10);
+ }
+ .gap-16 {
+ gap: calc(var(--spacing) * 16);
+ }
+ .gap-\[0\.5rem\] {
+ gap: 0.5rem;
+ }
+ .gap-\[0\.0625rem\] {
+ gap: 0.0625rem;
+ }
+ .gap-\[1\.25vw\] {
+ gap: 1.25vw;
+ }
+ .gap-\[1ch\] {
+ gap: 1ch;
+ }
+ .gap-x-4 {
+ column-gap: calc(var(--spacing) * 4);
+ }
+ .gap-x-8 {
+ column-gap: calc(var(--spacing) * 8);
+ }
+ .gap-x-\[1ch\] {
+ column-gap: 1ch;
+ }
+ .gap-x-\[1rem\] {
+ column-gap: 1rem;
+ }
+ .gap-x-\[2rem\] {
+ column-gap: 2rem;
+ }
+ .gap-x-\[5vw\] {
+ column-gap: 5vw;
+ }
+ :where(.space-x-\[1\.25vw\] > :not(:last-child)) {
+ --tw-space-x-reverse: 0;
+ margin-inline-start: calc(1.25vw * var(--tw-space-x-reverse));
+ margin-inline-end: calc(1.25vw * calc(1 - var(--tw-space-x-reverse)));
+ }
+ .gap-y-2 {
+ row-gap: calc(var(--spacing) * 2);
+ }
+ .gap-y-4 {
+ row-gap: calc(var(--spacing) * 4);
+ }
+ .gap-y-\[0\.4rem\] {
+ row-gap: 0.4rem;
+ }
+ .self-center {
+ align-self: center;
+ }
+ .self-start {
+ align-self: flex-start;
+ }
+ .truncate {
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+ }
+ .overflow-auto {
+ overflow: auto;
+ }
+ .overflow-hidden {
+ overflow: hidden;
+ }
+ .overflow-x-hidden {
+ overflow-x: hidden;
+ }
+ .overflow-y-auto {
+ overflow-y: auto;
+ }
+ .rounded-\[0\.3rem\] {
+ border-radius: 0.3rem;
+ }
+ .rounded-\[0\.4rem\] {
+ border-radius: 0.4rem;
+ }
+ .border {
+ border-style: var(--tw-border-style);
+ border-width: 1px;
+ }
+ .border-\[0\.01rem\] {
+ border-style: var(--tw-border-style);
+ border-width: 0.01rem;
+ }
+ .border-\[0\.1rem\] {
+ border-style: var(--tw-border-style);
+ border-width: 0.1rem;
+ }
+ .border-\[0\.1vw\] {
+ border-style: var(--tw-border-style);
+ border-width: 0.1vw;
+ }
+ .border-\[0\.2rem\] {
+ border-style: var(--tw-border-style);
+ border-width: 0.2rem;
+ }
+ .border-\[0\.05rem\] {
+ border-style: var(--tw-border-style);
+ border-width: 0.05rem;
+ }
+ .border-\[0\.25vh\] {
+ border-style: var(--tw-border-style);
+ border-width: 0.25vh;
+ }
+ .border-\[0\.125rem\] {
+ border-style: var(--tw-border-style);
+ border-width: 0.125rem;
+ }
+ .border-solid {
+ --tw-border-style: solid;
+ border-style: solid;
+ }
+ .border-\(--accent\)\! {
+ border-color: var(--accent) !important;
+ }
+ .border-\(--alt\) {
+ border-color: var(--alt);
+ }
+ .border-\(--alt\)\/30 {
+ border-color: var(--alt);
+ @supports (color: color-mix(in lab, red, red)) {
+ border-color: color-mix(in oklab, var(--alt) 30%, transparent);
+ }
+ }
+ .border-\(--secondary\)\/60 {
+ border-color: var(--secondary);
+ @supports (color: color-mix(in lab, red, red)) {
+ border-color: color-mix(in oklab, var(--secondary) 60%, transparent);
+ }
+ }
+ .border-\(--text\) {
+ border-color: var(--text);
+ }
+ .border-\[color\:var\(--alt\)\] {
+ border-color: var(--alt);
+ }
+ .border-\[var\(--alt\)\] {
+ border-color: var(--alt);
+ }
+ .bg-\(--alt\)\/25 {
+ background-color: var(--alt);
+ @supports (color: color-mix(in lab, red, red)) {
+ background-color: color-mix(in oklab, var(--alt) 25%, transparent);
+ }
+ }
+ .bg-\(--background\) {
+ background-color: var(--background);
+ }
+ .bg-\(--extra\)\/70 {
+ background-color: var(--extra);
+ @supports (color: color-mix(in lab, red, red)) {
+ background-color: color-mix(in oklab, var(--extra) 70%, transparent);
+ }
+ }
+ .bg-\(--secondary\) {
+ background-color: var(--secondary);
+ }
+ .bg-\[var\(--background\)\] {
+ background-color: var(--background);
+ }
+ .bg-\[var\(--text\)\] {
+ background-color: var(--text);
+ }
+ .bg-black\/20 {
+ background-color: color-mix(in srgb, #000 20%, transparent);
+ @supports (color: color-mix(in lab, red, red)) {
+ background-color: color-mix(in oklab, var(--color-black) 20%, transparent);
+ }
+ }
+ .bg-black\/30 {
+ background-color: color-mix(in srgb, #000 30%, transparent);
+ @supports (color: color-mix(in lab, red, red)) {
+ background-color: color-mix(in oklab, var(--color-black) 30%, transparent);
+ }
+ }
+ .bg-white\/2 {
+ background-color: color-mix(in srgb, #fff 2%, transparent);
+ @supports (color: color-mix(in lab, red, red)) {
+ background-color: color-mix(in oklab, var(--color-white) 2%, transparent);
+ }
+ }
+ .bg-white\/\[0\.03\] {
+ background-color: color-mix(in srgb, #fff 3%, transparent);
+ @supports (color: color-mix(in lab, red, red)) {
+ background-color: color-mix(in oklab, var(--color-white) 3%, transparent);
+ }
+ }
+ .bg-\[linear-gradient\(to_bottom\,\#181825\,var\(--background\)\)\] {
+ background-image: linear-gradient(to bottom,#181825,var(--background));
+ }
+ .bg-\[linear-gradient\(to_bottom\,var\(--background\)\,var\(--cmp-bg\,transparent\)\)\] {
+ background-image: linear-gradient(to bottom,var(--background),var(--cmp-bg,transparent));
+ }
+ .fill-\[\#7ed4fb\]\/50 {
+ fill: color-mix(in oklab, #7ed4fb 50%, transparent);
+ }
+ .stroke-\[var\(--alt\)\] {
+ stroke: var(--alt);
+ }
+ .stroke-\[var\(--primary\)\] {
+ stroke: var(--primary);
+ }
+ .object-cover {
+ object-fit: cover;
+ }
+ .p-0 {
+ padding: 0px;
+ }
+ .p-4 {
+ padding: calc(var(--spacing) * 4);
+ }
+ .p-8 {
+ padding: calc(var(--spacing) * 8);
+ }
+ .p-\[0\.2rem\] {
+ padding: 0.2rem;
+ }
+ .p-\[0\.4rem\] {
+ padding: 0.4rem;
+ }
+ .p-\[0\.8em\] {
+ padding: 0.8em;
+ }
+ .p-\[1rem\] {
+ padding: 1rem;
+ }
+ .p-\[2\.2svh\] {
+ padding: 2.2svh;
+ }
+ .p-\[3vw\] {
+ padding: 3vw;
+ }
+ .px-3\.5 {
+ padding-inline: calc(var(--spacing) * 3.5);
+ }
+ .px-\[0\.1vw\] {
+ padding-inline: 0.1vw;
+ }
+ .px-\[0\.4rem\] {
+ padding-inline: 0.4rem;
+ }
+ .px-\[0\.5em\] {
+ padding-inline: 0.5em;
+ }
+ .px-\[0\.6rem\] {
+ padding-inline: 0.6rem;
+ }
+ .px-\[0\.625rem\] {
+ padding-inline: 0.625rem;
+ }
+ .py-\(--ypad\) {
+ padding-block: var(--ypad);
+ }
+ .py-2 {
+ padding-block: calc(var(--spacing) * 2);
+ }
+ .py-16 {
+ padding-block: calc(var(--spacing) * 16);
+ }
+ .py-\[0\.1rem\] {
+ padding-block: 0.1rem;
+ }
+ .py-\[0\.625vw\] {
+ padding-block: 0.625vw;
+ }
+ .pt-3 {
+ padding-top: calc(var(--spacing) * 3);
+ }
+ .pt-\[1\.0625em\] {
+ padding-top: 1.0625em;
+ }
+ .pt-\[1vw\] {
+ padding-top: 1vw;
+ }
+ .pt-\[5vw\] {
+ padding-top: 5vw;
+ }
+ .pt-\[calc\(var\(--ypad\)\+0\.0625rem\)\] {
+ padding-top: calc(var(--ypad) + 0.0625rem);
+ }
+ .pr-\[1\.25vw\] {
+ padding-right: 1.25vw;
+ }
+ .text-left {
+ text-align: left;
+ }
+ .text-right {
+ text-align: right;
+ }
+ .font-\(family-name\:--font-normal\) {
+ font-family: var(--font-normal);
+ }
+ .font-\[\'JetBrains_Mono\'\] {
+ font-family: 'JetBrains Mono';
+ }
+ .font-mono {
+ font-family: var(--font-mono);
+ }
+ .text-\[0\.6rem\] {
+ font-size: 0.6rem;
+ }
+ .text-\[0\.8rem\] {
+ font-size: 0.8rem;
+ }
+ .text-\[0\.96vw\] {
+ font-size: 0.96vw;
+ }
+ .text-\[0\.675rem\] {
+ font-size: 0.675rem;
+ }
+ .text-\[1\.125rem\] {
+ font-size: 1.125rem;
+ }
+ .text-\[1\.375rem\] {
+ font-size: 1.375rem;
+ }
+ .text-\[1rem\] {
+ font-size: 1rem;
+ }
+ .text-\[2\.5vw\] {
+ font-size: 2.5vw;
+ }
+ .text-\[3\.5vw\] {
+ font-size: 3.5vw;
+ }
+ .text-\[3vw\] {
+ font-size: 3vw;
+ }
+ .text-\[5vw\] {
+ font-size: 5vw;
+ }
+ .text-\[17\.6px\] {
+ font-size: 17.6px;
+ }
+ .text-\[60\%\] {
+ font-size: 60%;
+ }
+ .text-\[75\%\] {
+ font-size: 75%;
+ }
+ .text-\[80\%\] {
+ font-size: 80%;
+ }
+ .text-\[85\%\] {
+ font-size: 85%;
+ }
+ .text-\[90\%\] {
+ font-size: 90%;
+ }
+ .text-\[95\%\] {
+ font-size: 95%;
+ }
+ .text-\[110\%\] {
+ font-size: 110%;
+ }
+ .text-\[130\%\] {
+ font-size: 130%;
+ }
+ .text-\[170\%\] {
+ font-size: 170%;
+ }
+ .leading-\[1\.7\] {
+ --tw-leading: 1.7;
+ line-height: 1.7;
+ }
+ .leading-\[normal\] {
+ --tw-leading: normal;
+ line-height: normal;
+ }
+ .leading-relaxed {
+ --tw-leading: var(--leading-relaxed);
+ line-height: var(--leading-relaxed);
+ }
+ .font-bold {
+ --tw-font-weight: var(--font-weight-bold);
+ font-weight: var(--font-weight-bold);
+ }
+ .font-normal {
+ --tw-font-weight: var(--font-weight-normal);
+ font-weight: var(--font-weight-normal);
+ }
+ .wrap-anywhere {
+ overflow-wrap: anywhere;
+ }
+ .whitespace-nowrap {
+ white-space: nowrap;
+ }
+ .text-\(--accent\) {
+ color: var(--accent);
+ }
+ .text-\(--alt\) {
+ color: var(--alt);
+ }
+ .text-\(--alt\)\/80 {
+ color: var(--alt);
+ @supports (color: color-mix(in lab, red, red)) {
+ color: color-mix(in oklab, var(--alt) 80%, transparent);
+ }
+ }
+ .text-\(--background\) {
+ color: var(--background);
+ }
+ .text-\(--primary\) {
+ color: var(--primary);
+ }
+ .text-\(--secondary\) {
+ color: var(--secondary);
+ }
+ .text-\[\#00ADD7\] {
+ color: #00ADD7;
+ }
+ .text-\[\#00f1ff\] {
+ color: #00f1ff;
+ }
+ .text-\[\#5C6CC1\] {
+ color: #5C6CC1;
+ }
+ .text-\[\#46d46c\] {
+ color: #46d46c;
+ }
+ .text-\[\#54D7A9\] {
+ color: #54D7A9;
+ }
+ .text-\[\#739ebb\] {
+ color: #739ebb;
+ }
+ .text-\[\#897ccb\] {
+ color: #897ccb;
+ }
+ .text-\[\#5874FF\] {
+ color: #5874FF;
+ }
+ .text-\[\#BDC3C7\] {
+ color: #BDC3C7;
+ }
+ .text-\[\#C7727F\] {
+ color: #C7727F;
+ }
+ .text-\[\#D8C44B\] {
+ color: #D8C44B;
+ }
+ .text-\[\#D27D9B\] {
+ color: #D27D9B;
+ }
+ .text-\[\#ED532D\] {
+ color: #ED532D;
+ }
+ .text-\[\#F5A670\] {
+ color: #F5A670;
+ }
+ .text-\[\#F9B010\] {
+ color: #F9B010;
+ }
+ .text-\[\#F16265\] {
+ color: #F16265;
+ }
+ .text-\[\#FF8019\] {
+ color: #FF8019;
+ }
+ .text-\[\#FFFFFF\] {
+ color: #FFFFFF;
+ }
+ .text-\[\#a34eeb\] {
+ color: #a34eeb;
+ }
+ .text-\[\%v\] {
+ color: %v;
+ }
+ .text-\[color\:var\(--alt\)\] {
+ color: var(--alt);
+ }
+ .text-\[var\(--accent\)\] {
+ color: var(--accent);
+ }
+ .text-\[var\(--secondary\)\] {
+ color: var(--secondary);
+ }
+ .no-underline {
+ text-decoration-line: none;
+ }
+ .opacity-0 {
+ opacity: 0%;
+ }
+ .shadow-\[0_0_1\.5rem_color-mix\(in_srgb\,var\(--accent\)_25\%\,transparent\)\] {
+ --tw-shadow: 0 0 1.5rem var(--tw-shadow-color, var(--accent));
+ @supports (color: color-mix(in lab, red, red)) {
+ --tw-shadow: 0 0 1.5rem var(--tw-shadow-color, color-mix(in srgb,var(--accent) 25%,transparent));
+ }
+ box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
+ }
+ .transition-colors {
+ transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
+ transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
+ transition-duration: var(--tw-duration, var(--default-transition-duration));
+ }
+ .duration-150 {
+ --tw-duration: 150ms;
+ transition-duration: 150ms;
+ }
+ .select-text {
+ -webkit-user-select: text;
+ user-select: text;
+ }
+ .\[--border-py\:0\.5rem\] {
+ --border-py: 0.5rem;
+ }
+ .\[--border-py\:0\.25rem\] {
+ --border-py: 0.25rem;
+ }
+ .\[--border-py\:0\.75rem\] {
+ --border-py: 0.75rem;
+ }
+ .\[--border-py\:0\.875rem\] {
+ --border-py: 0.875rem;
+ }
+ .\[--border-py\:1\.25rem\] {
+ --border-py: 1.25rem;
+ }
+ .\[--ypad\:var\(--border-py\,0\.875rem\)\] {
+ --ypad: var(--border-py,0.875rem);
+ }
+ @media (hover: hover) {
+ .group-hover\:text-\[var\(--alt\)\]:is(:where(.group):hover *) {
+ color: var(--alt);
+ }
+ .group-hover\:text-gray-700:is(:where(.group):hover *) {
+ color: var(--color-gray-700);
+ }
+ .group-hover\:underline:is(:where(.group):hover *) {
+ text-decoration-line: underline;
+ }
+ }
+ .group-data-copied\:block:is(:where(.group)[data-copied] *) {
+ display: block;
+ }
+ .group-data-copied\/copy\:block:is(:where(.group\/copy)[data-copied] *) {
+ display: block;
+ }
+ .group-data-copied\/copy\:bg-\(--primary\)\/25\!:is(:where(.group\/copy)[data-copied] *) {
+ background-color: var(--primary) !important;
+ @supports (color: color-mix(in lab, red, red)) {
+ background-color: color-mix(in oklab, var(--primary) 25%, transparent) !important;
+ }
+ }
+ .after\:absolute::after {
+ content: var(--tw-content);
+ position: absolute;
+ }
+ .after\:inset-0::after {
+ content: var(--tw-content);
+ inset: 0px;
+ }
+ .after\:z-0::after {
+ content: var(--tw-content);
+ z-index: 0;
+ }
+ @media (hover: hover) {
+ .hover\:bg-\(--alt\)\/25:hover {
+ background-color: var(--alt);
+ }
+ @supports (color: color-mix(in lab, red, red)) {
+ .hover\:bg-\(--alt\)\/25:hover {
+ background-color: color-mix(in oklab, var(--alt) 25%, transparent);
+ }
+ }
+ .hover\:bg-\(--secondary\)\/15:hover {
+ background-color: var(--secondary);
+ }
+ @supports (color: color-mix(in lab, red, red)) {
+ .hover\:bg-\(--secondary\)\/15:hover {
+ background-color: color-mix(in oklab, var(--secondary) 15%, transparent);
+ }
+ }
+ .hover\:bg-white\/5:hover {
+ background-color: color-mix(in srgb, #fff 5%, transparent);
+ }
+ @supports (color: color-mix(in lab, red, red)) {
+ .hover\:bg-white\/5:hover {
+ background-color: color-mix(in oklab, var(--color-white) 5%, transparent);
+ }
+ }
+ .hover\:bg-white\/10:hover {
+ background-color: color-mix(in srgb, #fff 10%, transparent);
+ }
+ @supports (color: color-mix(in lab, red, red)) {
+ .hover\:bg-white\/10:hover {
+ background-color: color-mix(in oklab, var(--color-white) 10%, transparent);
+ }
+ }
+ .hover\:text-\(--accent\):hover {
+ color: var(--accent);
+ }
+ .hover\:text-\[var\(--alt\)\]:hover {
+ color: var(--alt);
+ }
+ .hover\:text-\[var\(--secondary\)\]:hover {
+ color: var(--secondary);
+ }
+ .hover\:text-gray-700:hover {
+ color: var(--color-gray-700);
+ }
+ .hover\:no-underline:hover {
+ text-decoration-line: none;
+ }
+ .hover\:underline:hover {
+ text-decoration-line: underline;
+ }
+ }
+ .data-copied\:animate-\[bump_0\.25s\][data-copied] {
+ animation: bump 0.25s;
+ }
+ .data-copied\:bg-\(--primary\)\/25\![data-copied] {
+ background-color: var(--primary) !important;
+ @supports (color: color-mix(in lab, red, red)) {
+ background-color: color-mix(in oklab, var(--primary) 25%, transparent) !important;
+ }
+ }
+ @media (width >= 40rem) {
+ .sm\:invisible {
+ visibility: hidden;
+ }
+ .sm\:visible {
+ visibility: visible;
+ }
+ .sm\:top-\[-0\.75vw\] {
+ top: -0.75vw;
+ }
+ .sm\:bottom-\[-0\.75vw\] {
+ bottom: -0.75vw;
+ }
+ .sm\:left-\[0\.625vw\] {
+ left: 0.625vw;
+ }
+ .sm\:col-span-2 {
+ grid-column: span 2 / span 2;
+ }
+ .sm\:m-0 {
+ margin: 0px;
+ }
+ .sm\:my-\[0\.625vw\] {
+ margin-block: 0.625vw;
+ }
+ .sm\:my-\[2\.5vw\] {
+ margin-block: 2.5vw;
+ }
+ .sm\:my-\[2\.25vw\] {
+ margin-block: 2.25vw;
+ }
+ .sm\:mt-\[0\.625vw\] {
+ margin-top: 0.625vw;
+ }
+ .sm\:mt-\[0vw\] {
+ margin-top: 0vw;
+ }
+ .sm\:mr-0 {
+ margin-right: 0px;
+ }
+ .sm\:mr-\[2\.5vw\] {
+ margin-right: 2.5vw;
+ }
+ .sm\:mb-\[1\.5625vw\] {
+ margin-bottom: 1.5625vw;
+ }
+ .sm\:mb-\[2vw\] {
+ margin-bottom: 2vw;
+ }
+ .sm\:contents {
+ display: contents;
+ }
+ .sm\:flex {
+ display: flex;
+ }
+ .sm\:grid {
+ display: grid;
+ }
+ .sm\:h-0 {
+ height: 0px;
+ }
+ .sm\:h-\[30vw\] {
+ height: 30vw;
+ }
+ .sm\:h-\[35vw\] {
+ height: 35vw;
+ }
+ .sm\:h-\[38vw\] {
+ height: 38vw;
+ }
+ .sm\:h-full {
+ height: 100%;
+ }
+ .sm\:max-h-\[24vw\] {
+ max-height: 24vw;
+ }
+ .sm\:w-0 {
+ width: 0px;
+ }
+ .sm\:w-\[40\%\] {
+ width: 40%;
+ }
+ .sm\:w-\[60\%\] {
+ width: 60%;
+ }
+ .sm\:w-\[68\.75vw\] {
+ width: 68.75vw;
+ }
+ .sm\:w-full {
+ width: 100%;
+ }
+ .sm\:grid-cols-1 {
+ grid-template-columns: repeat(1, minmax(0, 1fr));
+ }
+ .sm\:grid-cols-\[1fr_1fr_1fr\] {
+ grid-template-columns: 1fr 1fr 1fr;
+ }
+ .sm\:grid-cols-\[2fr_3fr\] {
+ grid-template-columns: 2fr 3fr;
+ }
+ .sm\:gap-\[1\.25vw\] {
+ gap: 1.25vw;
+ }
+ .sm\:gap-x-\[0\.625vw\] {
+ column-gap: 0.625vw;
+ }
+ .sm\:overflow-visible {
+ overflow: visible;
+ }
+ .sm\:border-\[0\.1vw\] {
+ border-style: var(--tw-border-style);
+ border-width: 0.1vw;
+ }
+ .sm\:border-\[0\.2vw\] {
+ border-style: var(--tw-border-style);
+ border-width: 0.2vw;
+ }
+ .sm\:border-\[0\.125vw\] {
+ border-style: var(--tw-border-style);
+ border-width: 0.125vw;
+ }
+ .sm\:border-solid {
+ --tw-border-style: solid;
+ border-style: solid;
+ }
+ .sm\:p-\[1vw\] {
+ padding: 1vw;
+ }
+ .sm\:p-\[2\.2vw\] {
+ padding: 2.2vw;
+ }
+ .sm\:px-\[0\.625vw\] {
+ padding-inline: 0.625vw;
+ }
+ .sm\:pt-0 {
+ padding-top: 0px;
+ }
+ .sm\:pt-\[1\.0625vw\] {
+ padding-top: 1.0625vw;
+ }
+ .sm\:pl-\[1\.25vw\] {
+ padding-left: 1.25vw;
+ }
+ .sm\:text-\[1\.125vw\] {
+ font-size: 1.125vw;
+ }
+ .sm\:text-\[1\.375vw\] {
+ font-size: 1.375vw;
+ }
+ .sm\:text-\[1vw\] {
+ font-size: 1vw;
+ }
+ .sm\:text-\[100\%\] {
+ font-size: 100%;
+ }
+ }
+ @media (width >= 48rem) {
+ .md\:grid-cols-1 {
+ grid-template-columns: repeat(1, minmax(0, 1fr));
+ }
+ }
+ .\[\&\:\:-webkit-scrollbar\]\:hidden::-webkit-scrollbar {
+ display: none;
+ }
+ .\[\&\>\*\+\*\]\:mt-\[-0\.1rem\] > * + * {
+ margin-top: -0.1rem;
+ }
+}
+:root {
+ --primary: #54d7a9;
+ --secondary: #9b7eca;
+ --accent: #7ed4fb;
+ --extra: #8fcc75;
+ --text: #ffffff;
+ --alt: #999999;
+ --background: #000000;
+ --font-mono: "Jetbrains Mono", monospace;
+ --font-normal: "Inter", system-ui, sans-serif;
+}
+html {
+ background-color: var(--background);
+ color: var(--text);
+ font-family: var(--font-mono);
+ user-select: none;
+ font-size: 1vw;
+}
+body {
+ min-height: 100vh;
+ display: grid;
+ place-items: center;
+}
+@layer base {
+ a {
+ font-weight: 300;
+ text-decoration: none;
+ color: var(--secondary);
+ transition-duration: 0.2s;
+ transition-property: color, text-decoration;
+ }
+ a:hover {
+ text-decoration: underline;
+ color: var(--accent);
+ }
+}
+.scrollbox::-webkit-scrollbar {
+ width: 1.5rem;
+}
+.scrollbox::-webkit-scrollbar-track {
+ background: transparent;
+ border-left: 0.1rem solid var(--alt);
+}
+.scrollbox::-webkit-scrollbar-thumb {
+ background: var(--primary);
+ border: 0.3rem solid transparent;
+ background-clip: padding-box;
+ border-radius: 0;
+}
+.scrollbox::-webkit-scrollbar-thumb:hover {
+ background: var(--accent);
+}
+@supports not selector(::-webkit-scrollbar) {
+ .scrollbox {
+ scrollbar-color: var(--primary) transparent;
+ }
+}
+.prose {
+ --tw-prose-body: var(--text);
+ --tw-prose-headings: var(--primary);
+ --tw-prose-links: var(--secondary);
+ --tw-prose-bold: var(--text);
+ --tw-prose-bullets: var(--alt);
+ --tw-prose-counters: var(--alt);
+ --tw-prose-hr: var(--alt);
+ --tw-prose-quotes: var(--text);
+ --tw-prose-quote-borders: var(--alt);
+ --tw-prose-captions: var(--alt);
+ --tw-prose-code: var(--extra);
+ --tw-prose-pre-code: var(--text);
+ --tw-prose-pre-bg: rgb(0 0 0 / 0.3);
+ --tw-prose-th-borders: var(--alt);
+ --tw-prose-td-borders: var(--alt);
+}
+.prose a.footnote-ref, .prose a.footnote-ref:hover {
+ text-decoration: none;
+}
+.prose code::before, .prose code::after {
+ content: none;
+}
+.prose :not(pre) > code {
+ padding: 0.1em 0.4em;
+ border-radius: 0.3em;
+ background: var(--alt);
+ @supports (color: color-mix(in lab, red, red)) {
+ background: color-mix(in srgb, var(--alt) 25%, transparent);
+ }
+ font-size: 0.9em;
+}
+.prose pre, .prose code {
+ font-family: var(--font-mono);
+}
+.js .footnotes {
+ display: none;
+}
+.sidenotes {
+ position: fixed;
+ overflow: hidden;
+ pointer-events: none;
+}
+.sidenote {
+ position: absolute;
+ left: 0;
+ right: 0;
+ background: var(--background);
+ font-family: var(--font-normal);
+ font-size: 16px;
+ line-height: 1.4;
+ pointer-events: auto;
+}
+.sidenotes.bordered .sidenote {
+ border: 0.1rem solid var(--alt);
+ padding: 0.4rem 0.6rem;
+}
+.sidenote-num {
+ font-size: 70%;
+ color: var(--secondary);
+ margin-right: 0.15em;
+}
+.chroma .k, .chroma .kc, .chroma .kd, .chroma .kn, .chroma .kp, .chroma .kr, .chroma .kt {
+ color: var(--secondary);
+}
+.chroma .nf, .chroma .nc, .chroma .nb {
+ color: var(--primary);
+}
+.chroma .s, .chroma .sa, .chroma .sb, .chroma .sc, .chroma .dl, .chroma .sd, .chroma .s2, .chroma .se, .chroma .sh, .chroma .si, .chroma .sx, .chroma .sr, .chroma .s1, .chroma .ss {
+ color: var(--extra);
+}
+.chroma .m, .chroma .mb, .chroma .mf, .chroma .mh, .chroma .mi, .chroma .il, .chroma .mo {
+ color: var(--primary);
+}
+.chroma .c, .chroma .ch, .chroma .cm, .chroma .c1, .chroma .cs, .chroma .cp, .chroma .cpf {
+ color: var(--alt);
+ font-style: italic;
+}
+.codeblock {
+ margin: 1.2em 0;
+ border: 0.1rem solid var(--alt);
+ border-radius: 0.4rem;
+ background: rgb(0 0 0 / 0.3);
+ overflow: hidden;
+}
+.codeblock::before {
+ content: attr(data-lang);
+ display: block;
+ padding: 0.2em 0.8em;
+ border-bottom: 0.1rem solid var(--alt);
+ font-size: 0.75em;
+ color: var(--alt);
+}
+.codeblock[data-lang=""]::before {
+ display: none;
+}
+.codeblock pre {
+ margin: 0;
+ padding: 0.8em 1em;
+ background: transparent;
+ border-radius: 0;
+ overflow-x: auto;
+ font-size: 0.85em;
+ line-height: 1.5;
+}
+@keyframes pop {
+ 50% {
+ transform: scale(1.3);
+ }
+}
+[data-copied] svg {
+ animation: pop 0.25s;
+}
+@keyframes bump {
+ 50% {
+ transform: scale(1.03);
+ }
+}
+@property --tw-translate-x {
+ syntax: "*";
+ inherits: false;
+ initial-value: 0;
+}
+@property --tw-translate-y {
+ syntax: "*";
+ inherits: false;
+ initial-value: 0;
+}
+@property --tw-translate-z {
+ syntax: "*";
+ inherits: false;
+ initial-value: 0;
+}
+@property --tw-scale-x {
+ syntax: "*";
+ inherits: false;
+ initial-value: 1;
+}
+@property --tw-scale-y {
+ syntax: "*";
+ inherits: false;
+ initial-value: 1;
+}
+@property --tw-scale-z {
+ syntax: "*";
+ inherits: false;
+ initial-value: 1;
+}
+@property --tw-rotate-x {
+ syntax: "*";
+ inherits: false;
+}
+@property --tw-rotate-y {
+ syntax: "*";
+ inherits: false;
+}
+@property --tw-rotate-z {
+ syntax: "*";
+ inherits: false;
+}
+@property --tw-skew-x {
+ syntax: "*";
+ inherits: false;
+}
+@property --tw-skew-y {
+ syntax: "*";
+ inherits: false;
+}
+@property --tw-space-x-reverse {
+ syntax: "*";
+ inherits: false;
+ initial-value: 0;
+}
+@property --tw-border-style {
+ syntax: "*";
+ inherits: false;
+ initial-value: solid;
+}
+@property --tw-leading {
+ syntax: "*";
+ inherits: false;
+}
+@property --tw-font-weight {
+ syntax: "*";
+ inherits: false;
+}
+@property --tw-shadow {
+ syntax: "*";
+ inherits: false;
+ initial-value: 0 0 #0000;
+}
+@property --tw-shadow-color {
+ syntax: "*";
+ inherits: false;
+}
+@property --tw-shadow-alpha {
+ syntax: "<percentage>";
+ inherits: false;
+ initial-value: 100%;
+}
+@property --tw-inset-shadow {
+ syntax: "*";
+ inherits: false;
+ initial-value: 0 0 #0000;
+}
+@property --tw-inset-shadow-color {
+ syntax: "*";
+ inherits: false;
+}
+@property --tw-inset-shadow-alpha {
+ syntax: "<percentage>";
+ inherits: false;
+ initial-value: 100%;
+}
+@property --tw-ring-color {
+ syntax: "*";
+ inherits: false;
+}
+@property --tw-ring-shadow {
+ syntax: "*";
+ inherits: false;
+ initial-value: 0 0 #0000;
+}
+@property --tw-inset-ring-color {
+ syntax: "*";
+ inherits: false;
+}
+@property --tw-inset-ring-shadow {
+ syntax: "*";
+ inherits: false;
+ initial-value: 0 0 #0000;
+}
+@property --tw-ring-inset {
+ syntax: "*";
+ inherits: false;
+}
+@property --tw-ring-offset-width {
+ syntax: "<length>";
+ inherits: false;
+ initial-value: 0px;
+}
+@property --tw-ring-offset-color {
+ syntax: "*";
+ inherits: false;
+ initial-value: #fff;
+}
+@property --tw-ring-offset-shadow {
+ syntax: "*";
+ inherits: false;
+ initial-value: 0 0 #0000;
+}
+@property --tw-duration {
+ syntax: "*";
+ inherits: false;
+}
+@property --tw-content {
+ syntax: "*";
+ initial-value: "";
+ inherits: false;
+}
+@layer properties {
+ @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
+ *, ::before, ::after, ::backdrop {
+ --tw-translate-x: 0;
+ --tw-translate-y: 0;
+ --tw-translate-z: 0;
+ --tw-scale-x: 1;
+ --tw-scale-y: 1;
+ --tw-scale-z: 1;
+ --tw-rotate-x: initial;
+ --tw-rotate-y: initial;
+ --tw-rotate-z: initial;
+ --tw-skew-x: initial;
+ --tw-skew-y: initial;
+ --tw-space-x-reverse: 0;
+ --tw-border-style: solid;
+ --tw-leading: initial;
+ --tw-font-weight: initial;
+ --tw-shadow: 0 0 #0000;
+ --tw-shadow-color: initial;
+ --tw-shadow-alpha: 100%;
+ --tw-inset-shadow: 0 0 #0000;
+ --tw-inset-shadow-color: initial;
+ --tw-inset-shadow-alpha: 100%;
+ --tw-ring-color: initial;
+ --tw-ring-shadow: 0 0 #0000;
+ --tw-inset-ring-color: initial;
+ --tw-inset-ring-shadow: 0 0 #0000;
+ --tw-ring-inset: initial;
+ --tw-ring-offset-width: 0px;
+ --tw-ring-offset-color: #fff;
+ --tw-ring-offset-shadow: 0 0 #0000;
+ --tw-duration: initial;
+ --tw-content: "";
+ }
+ }
+}
diff --git a/public/styles/terminal.css b/public/styles/terminal.css
deleted file mode 100644
index e272b9c..0000000
--- a/public/styles/terminal.css
+++ /dev/null
@@ -1,71 +0,0 @@
-@import url("@styles/fonts/JetBrainsMono.css");
-
-@font-face {
- font-family: "Monocraft";
- src: url("/fonts/Monocraft.ttf") format("truetype");
- font-display: swap;
-}
-
-:root {
- --primary: #54d7a9;
- --secondary: #9b7eca;
- --accent: #7ed4fb;
- --extra: #8fcc75;
- --text: #ffffff;
- --alt: #999999;
- --background: #000000;
- --font-mono: "Jetbrains Mono", monospace;
- --font-normal: "Jetbrains Mono";
-}
-
-html {
- background-color: var(--background);
- color: var(--text);
- font-family: var(--font-mono);
- user-select: none;
-
- font-size: 1vw;
-}
-
-body {
- min-height: 100vh;
- display: grid;
- place-items: center;
-}
-
-@layer base {
- a {
- font-weight: 300;
- text-decoration: none;
- color: var(--secondary);
- transition-duration: 0.2s;
- transition-property: color, text-decoration;
- }
- a:hover {
- text-decoration: underline;
- color: var(--accent);
- }
-}
-
-.scrollbox::-webkit-scrollbar {
- width: 1.5rem;
-}
-.scrollbox::-webkit-scrollbar-track {
- background: transparent;
- border-left: 0.1rem solid var(--alt);
-}
-.scrollbox::-webkit-scrollbar-thumb {
- background: var(--primary);
- border: 0.3rem solid transparent;
- background-clip: padding-box;
- border-radius: 0;
-}
-.scrollbox::-webkit-scrollbar-thumb:hover {
- background: var(--accent);
-}
-
-@supports not selector(::-webkit-scrollbar) {
- .scrollbox {
- scrollbar-color: var(--primary) transparent;
- }
-}
diff --git a/run.sh b/run.sh
index 578be5e..8e53a9b 100755
--- a/run.sh
+++ b/run.sh
@@ -11,7 +11,7 @@ trap cleanup SIGINT SIGTERM EXIT
templ generate --watch --proxy="http://localhost:8080" --cmd="DEV=1 go run ." --watch-pattern='(.+\.go$)|(.+\.templ$)|(.+_templ\.txt$)|(.+\.css$)|(.+\.js$)|(.+\.md$)|(.+\.svg$)|(.+\.json$)|(.+\.html$)|(.+\.txt$)|(.+\.ttf$)|(.+\.woff2?$)|(.+\.png$)|(.+\.jpg$)|(.+\.webp$)' &
TEMPL_PID=$!
-tail -f /dev/null | tailwindcss -i ./public/main.css -o ./public/style.css --watch &
+tail -f /dev/null | tailwindcss -i ./public/styles/main.css -o ./public/styles/style.css --watch &
TAILWIND_PID=$!
echo "[dev] Watching Templ (PID $TEMPL_PID) and Tailwind (PID $TAILWIND_PID)..."
diff --git a/website.go b/website.go
index 47b4051..b54030c 100644
--- a/website.go
+++ b/website.go
@@ -7,6 +7,7 @@ import (
"encoding/json"
"errors"
"fmt"
+ "html/template"
"io/fs"
"log"
"net/http"
@@ -18,9 +19,15 @@ import (
"time"
"github.com/a-h/templ"
+ chromahtml "github.com/alecthomas/chroma/v2/formatters/html"
"github.com/yuin/goldmark"
+ highlighting "github.com/yuin/goldmark-highlighting/v2"
+ "github.com/yuin/goldmark/ast"
"github.com/yuin/goldmark/extension"
+ "github.com/yuin/goldmark/parser"
"github.com/yuin/goldmark/renderer/html"
+ "github.com/yuin/goldmark/text"
+ "github.com/yuin/goldmark/util"
"gopkg.in/yaml.v3"
)
@@ -167,8 +174,25 @@ type Blog struct {
}
var md = goldmark.New(
- goldmark.WithExtensions(extension.GFM, extension.Footnote),
+ goldmark.WithExtensions(
+ extension.GFM,
+ extension.Footnote,
+ highlighting.NewHighlighting(
+ highlighting.WithFormatOptions(chromahtml.WithClasses(true)),
+ highlighting.WithWrapperRenderer(func(w util.BufWriter, ctx highlighting.CodeBlockContext, entering bool) {
+ if entering {
+ lang, _ := ctx.Language()
+ fmt.Fprintf(w, `<div class="codeblock" data-lang="%s">`, template.HTMLEscapeString(string(lang)))
+ } else {
+ w.WriteString(`</div>`)
+ }
+ }),
+ ),
+ ),
goldmark.WithRendererOptions(html.WithUnsafe()),
+ goldmark.WithParserOptions(
+ parser.WithASTTransformers(util.Prioritized(externalLinks{}, 100)),
+ ),
)
type frontmatter struct {
@@ -295,6 +319,33 @@ func latestBlog(blogs []Blog) *Blog {
return &blogs[0]
}
+type externalLinks struct{}
+
+func openInNewTab(n ast.Node) {
+ n.SetAttributeString("target", []byte("_blank"))
+ n.SetAttributeString("rel", []byte("noopener noreferrer"))
+}
+
+func (externalLinks) Transform(doc *ast.Document, reader text.Reader, pc parser.Context) {
+ src := reader.Source()
+ ast.Walk(doc, func(n ast.Node, entering bool) (ast.WalkStatus, error) {
+ if !entering {
+ return ast.WalkContinue, nil
+ }
+ switch link := n.(type) {
+ case *ast.Link:
+ if bytes.HasPrefix(link.Destination, []byte("http")) {
+ openInNewTab(link)
+ }
+ case *ast.AutoLink:
+ if link.AutoLinkType == ast.AutoLinkURL && bytes.HasPrefix(link.URL(src), []byte("http")) {
+ openInNewTab(link)
+ }
+ }
+ return ast.WalkContinue, nil
+ })
+}
+
var projects = []Project{
{
Slug: "krypton",
@@ -545,13 +596,13 @@ func main() {
}
jetbrains := FontPack{
- Monospace: "JetBrains Mono",
- Normal: `system-ui, sans-serif`,
+ Monospace: `JetBrains Mono, monospace`,
+ Normal: `Inter, system-ui, sans-serif`,
}
minecraft := FontPack{
- Monospace: `"Monocraft", "JetBrains Mono", monospace`,
- Normal: `"Monocraft", system-ui, sans-serif`,
+ Monospace: `Monocraft, JetBrains Mono, monospace`,
+ Normal: `Monocraft, Inter, system-ui, sans-serif`,
}
SetTheme("carbonight-cat", carbonightCat)
diff --git a/website.templ b/website.templ
index 454568c..94242ad 100644
--- a/website.templ
+++ b/website.templ
@@ -24,7 +24,7 @@ templ HeadComponent(title string, description string) {
<script src="/public/scrollbar.js" defer></script>
<script src="/public/my_uptime.js" defer></script>
<script src="/public/footnotes.js" defer></script>
- <link rel="stylesheet" href="/public/style.css"/>
+ <link rel="stylesheet" href="/public/styles/style.css"/>
{ children... }
</head>
}
@@ -152,9 +152,7 @@ templ Nav(path string) {
templ TerminalLayout(style Style, path string) {
<!DOCTYPE html>
<html lang="en" style={ styleToCss(style) }>
- @HeadComponent(path, "My personal website") {
- <link rel="stylesheet" href="/public/styles/terminal.css"/>
- }
+ @HeadComponent(path, "My personal website")
<body>
<main class="flex flex-col w-[75rem] h-[40rem] p-8 border-[0.2rem] border-(--text) overflow-hidden text-[1.125rem]">
@Nav(path)
@@ -756,7 +754,7 @@ templ BlogPage(style Style, blog Blog, prev *Blog, next *Blog) {
@TerminalLayout(style, blog.Title) {
@ScrollBox("") {
@BlogItem("", blog, "mb-[1rem]")
- <article class="prose select-text font-(family-name:--font-normal) text-[18px] leading-[1.7]">
+ <article class="prose select-text font-(family-name:--font-normal) text-[17.6px] leading-[1.7]">
@templ.Raw(blog.HTML)
</article>
<div class="grid grid-cols-2 gap-x-[1rem] mt-[1rem]">
@@ -768,17 +766,11 @@ templ BlogPage(style Style, blog Blog, prev *Blog, next *Blog) {
}
templ BlogNav(label string, blog *Blog, extra string) {
- @TerminalBorder(label, "", extra) {
- if blog != nil {
- <a href={ templ.SafeURL("/blogs/" + blog.Slug) }>vim ~/blogs/{ blog.Slug }</a>
+ if blog != nil {
+ @TerminalBorder(label, "", "min-w-0 "+extra) {
+ <a href={ templ.SafeURL("/blogs/" + blog.Slug) } class="block min-w-0 truncate">vim ~/blogs/{ blog.Slug }</a>
}
+ } else {
+ <div></div>
}
}
-
-templ FootnotePanel() {
- <aside data-footnote-panel class="hidden fixed left-[calc(50%+38.5rem)] top-[calc(50%-20rem)] w-[10.5rem] max-h-[40rem] overflow-y-auto">
- @TerminalBorder("note", "", "text-[14px]") {
- <div data-footnote-body class="font-(family-name:--font-normal)"></div>
- }
- </aside>
-}
diff --git a/website_templ.go b/website_templ.go
index 62d81a4..0af20ab 100644
--- a/website_templ.go
+++ b/website_templ.go
@@ -81,7 +81,7 @@ func HeadComponent(title string, description string) templ.Component {
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 5, "\"><meta property=\"og:type\" content=\"website\"><meta property=\"og:url\" content=\"https://kyren.codes/\"><meta property=\"og:image\" content=\"https://kyren.codes/public/image.png\"><meta property=\"og:image:alt\" content=\"a cyan sphere with a dark background\"><meta property=\"og:site_name\" content=\"Kyren's Website\"><script src=\"/public/copy.js\" defer></script><script src=\"/public/theme.js\" defer></script><script src=\"/public/scrollbar.js\" defer></script><script src=\"/public/my_uptime.js\" defer></script><script src=\"/public/footnotes.js\" defer></script><link rel=\"stylesheet\" href=\"/public/style.css\">")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 5, "\"><meta property=\"og:type\" content=\"website\"><meta property=\"og:url\" content=\"https://kyren.codes/\"><meta property=\"og:image\" content=\"https://kyren.codes/public/image.png\"><meta property=\"og:image:alt\" content=\"a cyan sphere with a dark background\"><meta property=\"og:site_name\" content=\"Kyren's Website\"><script src=\"/public/copy.js\" defer></script><script src=\"/public/theme.js\" defer></script><script src=\"/public/scrollbar.js\" defer></script><script src=\"/public/my_uptime.js\" defer></script><script src=\"/public/footnotes.js\" defer></script><link rel=\"stylesheet\" href=\"/public/styles/style.css\">")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -882,29 +882,11 @@ func TerminalLayout(style Style, path string) templ.Component {
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Var44 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
- templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
- templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
- if !templ_7745c5c3_IsBuffer {
- defer func() {
- templ_7745c5c3_BufErr := templruntime.ReleaseBuffer(templ_7745c5c3_Buffer)
- if templ_7745c5c3_Err == nil {
- templ_7745c5c3_Err = templ_7745c5c3_BufErr
- }
- }()
- }
- ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 55, "<link rel=\"stylesheet\" href=\"/public/styles/terminal.css\">")
- if templ_7745c5c3_Err != nil {
- return templ_7745c5c3_Err
- }
- return nil
- })
- templ_7745c5c3_Err = HeadComponent(path, "My personal website").Render(templ.WithChildren(ctx, templ_7745c5c3_Var44), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = HeadComponent(path, "My personal website").Render(ctx, templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 56, "<body><main class=\"flex flex-col w-[75rem] h-[40rem] p-8 border-[0.2rem] border-(--text) overflow-hidden text-[1.125rem]\">")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 55, "<body><main class=\"flex flex-col w-[75rem] h-[40rem] p-8 border-[0.2rem] border-(--text) overflow-hidden text-[1.125rem]\">")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -916,7 +898,7 @@ func TerminalLayout(style Style, path string) templ.Component {
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 57, "</main></body></html>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 56, "</main></body></html>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -953,12 +935,12 @@ func HomePage(style Style, latestBlog *Blog) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var45 := templ.GetChildren(ctx)
- if templ_7745c5c3_Var45 == nil {
- templ_7745c5c3_Var45 = templ.NopComponent
+ templ_7745c5c3_Var44 := templ.GetChildren(ctx)
+ if templ_7745c5c3_Var44 == nil {
+ templ_7745c5c3_Var44 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
- templ_7745c5c3_Var46 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var45 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -970,29 +952,29 @@ func HomePage(style Style, latestBlog *Blog) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- var templ_7745c5c3_Var47 = []any{"grid grid-cols-[29%_1fr] gap-x-8 flex-1 min-h-0", templ.KV("gap-y-4", !false)}
- templ_7745c5c3_Err = templ.RenderCSSItems(ctx, templ_7745c5c3_Buffer, templ_7745c5c3_Var47...)
+ var templ_7745c5c3_Var46 = []any{"grid grid-cols-[29%_1fr] gap-x-8 flex-1 min-h-0", templ.KV("gap-y-4", !false)}
+ templ_7745c5c3_Err = templ.RenderCSSItems(ctx, templ_7745c5c3_Buffer, templ_7745c5c3_Var46...)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 58, "<div class=\"")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 57, "<div class=\"")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- var templ_7745c5c3_Var48 string
- templ_7745c5c3_Var48, templ_7745c5c3_Err = templ.ResolveAttributeValue(templ.CSSClasses(templ_7745c5c3_Var47).String())
+ var templ_7745c5c3_Var47 string
+ templ_7745c5c3_Var47, templ_7745c5c3_Err = templ.ResolveAttributeValue(templ.CSSClasses(templ_7745c5c3_Var46).String())
if templ_7745c5c3_Err != nil {
return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 1, Col: 0}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var48)
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var47)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 59, "\"><div class=\"flex flex-col min-h-0 [--border-py:0.75rem]\">")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 58, "\"><div class=\"flex flex-col min-h-0 [--border-py:0.75rem]\">")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Var49 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var48 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -1004,7 +986,7 @@ func HomePage(style Style, latestBlog *Blog) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var50 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var49 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -1016,11 +998,11 @@ func HomePage(style Style, latestBlog *Blog) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 60, "<div class=\"flex items-center gap-4 h-38\"><img src=\"/public/favicon.svg\" alt=\"picture\" class=\"h-full object-cover\">")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 59, "<div class=\"flex items-center gap-4 h-38\"><img src=\"/public/favicon.svg\" alt=\"picture\" class=\"h-full object-cover\">")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Var51 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var50 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -1032,32 +1014,32 @@ func HomePage(style Style, latestBlog *Blog) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- var templ_7745c5c3_Var52 string
- templ_7745c5c3_Var52, templ_7745c5c3_Err = templ.JoinStringErrs(fingerprint)
+ var templ_7745c5c3_Var51 string
+ templ_7745c5c3_Var51, templ_7745c5c3_Err = templ.JoinStringErrs(fingerprint)
if templ_7745c5c3_Err != nil {
- return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 189, Col: 21}
+ return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 187, Col: 21}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var52))
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var51))
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = CopyPre(sshKey, "shrink-0 text-[0.675rem] leading-[normal]").Render(templ.WithChildren(ctx, templ_7745c5c3_Var51), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = CopyPre(sshKey, "shrink-0 text-[0.675rem] leading-[normal]").Render(templ.WithChildren(ctx, templ_7745c5c3_Var50), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 61, "</div>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 60, "</div>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = TerminalBorder("Profile", "", "[--border-py:0.875rem]").Render(templ.WithChildren(ctx, templ_7745c5c3_Var50), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = TerminalBorder("Profile", "", "[--border-py:0.875rem]").Render(templ.WithChildren(ctx, templ_7745c5c3_Var49), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Var53 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var52 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -1069,17 +1051,17 @@ func HomePage(style Style, latestBlog *Blog) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 62, "contact@kyren.codes")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 61, "contact@kyren.codes")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = TerminalBorderWithCopy("Email", "", "", "contact@kyren.codes", "mailto:contact@kyren.codes", false).Render(templ.WithChildren(ctx, templ_7745c5c3_Var53), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = TerminalBorderWithCopy("Email", "", "", "contact@kyren.codes", "mailto:contact@kyren.codes", false).Render(templ.WithChildren(ctx, templ_7745c5c3_Var52), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Var54 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var53 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -1091,7 +1073,7 @@ func HomePage(style Style, latestBlog *Blog) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var55 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var54 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -1103,23 +1085,23 @@ func HomePage(style Style, latestBlog *Blog) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 63, "git.kyren.codes")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 62, "git.kyren.codes")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = Link("https://git.kyren.codes", true).Render(templ.WithChildren(ctx, templ_7745c5c3_Var55), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = Link("https://git.kyren.codes", true).Render(templ.WithChildren(ctx, templ_7745c5c3_Var54), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = TerminalBorder("Git Repos (main)", "", "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var54), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = TerminalBorder("Git Repos (main)", "", "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var53), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Var56 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var55 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -1131,7 +1113,7 @@ func HomePage(style Style, latestBlog *Blog) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var57 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var56 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -1143,23 +1125,23 @@ func HomePage(style Style, latestBlog *Blog) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 64, "github.com/Kyren223")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 63, "github.com/Kyren223")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = Link("https://github.com/kyren223", true).Render(templ.WithChildren(ctx, templ_7745c5c3_Var57), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = Link("https://github.com/kyren223", true).Render(templ.WithChildren(ctx, templ_7745c5c3_Var56), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = TerminalBorder("GitHub (secondary)", "", "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var56), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = TerminalBorder("GitHub (secondary)", "", "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var55), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Var58 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var57 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -1171,7 +1153,7 @@ func HomePage(style Style, latestBlog *Blog) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var59 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var58 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -1183,33 +1165,33 @@ func HomePage(style Style, latestBlog *Blog) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 65, "Kyren223")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 64, "Kyren223")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = Link("https://discord.com/users/481884415090229258", true).Render(templ.WithChildren(ctx, templ_7745c5c3_Var59), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = Link("https://discord.com/users/481884415090229258", true).Render(templ.WithChildren(ctx, templ_7745c5c3_Var58), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = TerminalBorder("Discord", "", "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var58), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = TerminalBorder("Discord", "", "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var57), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = TerminalStack(true, "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var49), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = TerminalStack(true, "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var48), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 66, "</div><div class=\"flex flex-col gap-10 min-h-0 select-text\">")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 65, "</div><div class=\"flex flex-col gap-10 min-h-0 select-text\">")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Var60 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var59 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -1221,11 +1203,11 @@ func HomePage(style Style, latestBlog *Blog) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 67, "<div class=\"flex gap-[1ch] text-[1rem]\"><span>Working on</span> <span>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 66, "<div class=\"flex gap-[1ch] text-[1rem]\"><span>Working on</span> <span>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Var61 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var60 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -1237,27 +1219,27 @@ func HomePage(style Style, latestBlog *Blog) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 68, "Krypton")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 67, "Krypton")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = Link("/projects/krypton", false).Render(templ.WithChildren(ctx, templ_7745c5c3_Var61), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = Link("/projects/krypton", false).Render(templ.WithChildren(ctx, templ_7745c5c3_Var60), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 69, "</span> <span>|</span> <span>Learning Langdev & Compiler Design</span> <span>|</span> <span>Available for hire</span></div>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 68, "</span> <span>|</span> <span>Learning Langdev & Compiler Design</span> <span>|</span> <span>Available for hire</span></div>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = TerminalBorder("Status", "", "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var60), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = TerminalBorder("Status", "", "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var59), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Var62 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var61 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -1269,13 +1251,13 @@ func HomePage(style Style, latestBlog *Blog) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 70, "Hi! I'm Kyren, a softwarea engineer and game developer. I love working with low level languages and learning things deeply. I am also a terminal nerd and Linux enthusiast who uses NVIM btw. And when I am not coding, I am most likely playing video games, watching Anime, or solving Rubik's cubes fast.")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 69, "Hi! I'm Kyren, a softwarea engineer and game developer. I love working with low level languages and learning things deeply. I am also a terminal nerd and Linux enthusiast who uses NVIM btw. And when I am not coding, I am most likely playing video games, watching Anime, or solving Rubik's cubes fast.")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = TerminalBorder("About Me", "", "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var62), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = TerminalBorder("About Me", "", "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var61), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -1283,11 +1265,11 @@ func HomePage(style Style, latestBlog *Blog) templ.Component {
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 71, "</div>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 70, "</div>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Var63 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var62 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -1299,28 +1281,28 @@ func HomePage(style Style, latestBlog *Blog) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- var templ_7745c5c3_Var64 string
- templ_7745c5c3_Var64, templ_7745c5c3_Err = templ.JoinStringErrs(sshKey)
+ var templ_7745c5c3_Var63 string
+ templ_7745c5c3_Var63, templ_7745c5c3_Err = templ.JoinStringErrs(sshKey)
if templ_7745c5c3_Err != nil {
- return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 238, Col: 12}
+ return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 236, Col: 12}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var64))
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var63))
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = TerminalBorderWithCopy("SSH Key", "", footerClass(false), sshKey, "", true).Render(templ.WithChildren(ctx, templ_7745c5c3_Var63), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = TerminalBorderWithCopy("SSH Key", "", footerClass(false), sshKey, "", true).Render(templ.WithChildren(ctx, templ_7745c5c3_Var62), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 72, "</div>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 71, "</div>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = TerminalLayout(style, "/home/kyren/").Render(templ.WithChildren(ctx, templ_7745c5c3_Var46), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = TerminalLayout(style, "/home/kyren/").Render(templ.WithChildren(ctx, templ_7745c5c3_Var45), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -1352,12 +1334,12 @@ func InfoPage(style Style) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var65 := templ.GetChildren(ctx)
- if templ_7745c5c3_Var65 == nil {
- templ_7745c5c3_Var65 = templ.NopComponent
+ templ_7745c5c3_Var64 := templ.GetChildren(ctx)
+ if templ_7745c5c3_Var64 == nil {
+ templ_7745c5c3_Var64 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
- templ_7745c5c3_Var66 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var65 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -1369,7 +1351,7 @@ func InfoPage(style Style) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var67 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var66 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -1381,7 +1363,7 @@ func InfoPage(style Style) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var68 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var67 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -1393,7 +1375,7 @@ func InfoPage(style Style) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 73, "<span>$ fastfetch")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 72, "<span>$ fastfetch")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -1401,25 +1383,25 @@ func InfoPage(style Style) templ.Component {
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 74, "</span>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 73, "</span>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = TerminalBorder("Info", "", "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var68), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = TerminalBorder("Info", "", "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var67), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = TerminalStack(false, "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var67), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = TerminalStack(false, "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var66), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = TerminalLayout(style, "/home/kyren/info.md").Render(templ.WithChildren(ctx, templ_7745c5c3_Var66), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = TerminalLayout(style, "/home/kyren/info.md").Render(templ.WithChildren(ctx, templ_7745c5c3_Var65), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -1488,12 +1470,12 @@ func FlagshipProject(project Project, extra string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var69 := templ.GetChildren(ctx)
- if templ_7745c5c3_Var69 == nil {
- templ_7745c5c3_Var69 = templ.NopComponent
+ templ_7745c5c3_Var68 := templ.GetChildren(ctx)
+ if templ_7745c5c3_Var68 == nil {
+ templ_7745c5c3_Var68 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
- templ_7745c5c3_Var70 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var69 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -1505,7 +1487,7 @@ func FlagshipProject(project Project, extra string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 75, "<div class=\"flex gap-8 w-full\"><div class=\"flex flex-col gap-4 flex-1 min-w-0\"><div class=\"flex flex-wrap items-baseline gap-x-[1ch] gap-y-[0.4rem]\">")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 74, "<div class=\"flex gap-8 w-full\"><div class=\"flex flex-col gap-4 flex-1 min-w-0\"><div class=\"flex flex-wrap items-baseline gap-x-[1ch] gap-y-[0.4rem]\">")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -1513,92 +1495,92 @@ func FlagshipProject(project Project, extra string) templ.Component {
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 76, "<a href=\"")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 75, "<a href=\"")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- var templ_7745c5c3_Var71 templ.SafeURL
- templ_7745c5c3_Var71, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL("/projects/" + project.Slug))
+ var templ_7745c5c3_Var70 templ.SafeURL
+ templ_7745c5c3_Var70, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL("/projects/" + project.Slug))
if templ_7745c5c3_Err != nil {
- return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 316, Col: 57}
+ return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 314, Col: 57}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var71))
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var70))
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 77, "\" class=\"no-underline text-[170%] font-bold text-(--accent) after:absolute after:inset-0 after:z-0\">")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 76, "\" class=\"no-underline text-[170%] font-bold text-(--accent) after:absolute after:inset-0 after:z-0\">")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- var templ_7745c5c3_Var72 string
- templ_7745c5c3_Var72, templ_7745c5c3_Err = templ.JoinStringErrs(project.Title)
+ var templ_7745c5c3_Var71 string
+ templ_7745c5c3_Var71, templ_7745c5c3_Err = templ.JoinStringErrs(project.Title)
if templ_7745c5c3_Err != nil {
- return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 316, Col: 173}
+ return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 314, Col: 173}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var72))
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var71))
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 78, "</a> <span class=\"text-[85%] text-(--primary)\">")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 77, "</a> <span class=\"text-[85%] text-(--primary)\">")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- var templ_7745c5c3_Var73 string
- templ_7745c5c3_Var73, templ_7745c5c3_Err = templ.JoinStringErrs(project.Category)
+ var templ_7745c5c3_Var72 string
+ templ_7745c5c3_Var72, templ_7745c5c3_Err = templ.JoinStringErrs(project.Category)
if templ_7745c5c3_Err != nil {
- return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 317, Col: 65}
+ return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 315, Col: 65}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var73))
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var72))
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 79, "</span> ")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 78, "</span> ")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
for _, tag := range project.Tags {
- var templ_7745c5c3_Var74 = []any{"text-[75%] px-[0.4rem] inline-block rounded-[0.3rem] border-[0.01rem] bg-(--alt)/25" + " " + tag.Color}
- templ_7745c5c3_Err = templ.RenderCSSItems(ctx, templ_7745c5c3_Buffer, templ_7745c5c3_Var74...)
+ var templ_7745c5c3_Var73 = []any{"text-[75%] px-[0.4rem] inline-block rounded-[0.3rem] border-[0.01rem] bg-(--alt)/25" + " " + tag.Color}
+ templ_7745c5c3_Err = templ.RenderCSSItems(ctx, templ_7745c5c3_Buffer, templ_7745c5c3_Var73...)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 80, "<code class=\"")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 79, "<code class=\"")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- var templ_7745c5c3_Var75 string
- templ_7745c5c3_Var75, templ_7745c5c3_Err = templ.ResolveAttributeValue(templ.CSSClasses(templ_7745c5c3_Var74).String())
+ var templ_7745c5c3_Var74 string
+ templ_7745c5c3_Var74, templ_7745c5c3_Err = templ.ResolveAttributeValue(templ.CSSClasses(templ_7745c5c3_Var73).String())
if templ_7745c5c3_Err != nil {
return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 1, Col: 0}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var75)
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var74)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 81, "\">")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 80, "\">")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- var templ_7745c5c3_Var76 string
- templ_7745c5c3_Var76, templ_7745c5c3_Err = templ.JoinStringErrs(tag.Name)
+ var templ_7745c5c3_Var75 string
+ templ_7745c5c3_Var75, templ_7745c5c3_Err = templ.JoinStringErrs(tag.Name)
if templ_7745c5c3_Err != nil {
- return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 319, Col: 136}
+ return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 317, Col: 136}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var76))
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var75))
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 82, "</code> ")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 81, "</code> ")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 83, "<span class=\"ml-auto flex items-center self-center relative z-10\">")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 82, "<span class=\"ml-auto flex items-center self-center relative z-10\">")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
for _, link := range project.Links {
- templ_7745c5c3_Var77 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var76 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -1616,30 +1598,30 @@ func FlagshipProject(project Project, extra string) templ.Component {
}
return nil
})
- templ_7745c5c3_Err = IconLink(link.URL, link.Label, "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var77), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = IconLink(link.URL, link.Label, "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var76), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 84, "</span></div><p class=\"leading-relaxed max-w-3xl\">")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 83, "</span></div><p class=\"leading-relaxed max-w-3xl\">")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- var templ_7745c5c3_Var78 string
- templ_7745c5c3_Var78, templ_7745c5c3_Err = templ.JoinStringErrs(project.Desc)
+ var templ_7745c5c3_Var77 string
+ templ_7745c5c3_Var77, templ_7745c5c3_Err = templ.JoinStringErrs(project.Desc)
if templ_7745c5c3_Err != nil {
- return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 329, Col: 55}
+ return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 327, Col: 55}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var78))
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var77))
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 85, "</p>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 84, "</p>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
if len(flagship.Downloads) > 0 || flagship.Version != "" {
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 86, "<div class=\"flex flex-wrap items-center gap-x-4 gap-y-2 relative z-10\">")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 85, "<div class=\"flex flex-wrap items-center gap-x-4 gap-y-2 relative z-10\">")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -1661,63 +1643,63 @@ func FlagshipProject(project Project, extra string) templ.Component {
return templ_7745c5c3_Err
}
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 87, "</div>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 86, "</div>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
}
if len(flagship.Stats) > 0 {
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 88, "<div class=\"flex flex-wrap gap-x-[2rem] gap-y-[0.4rem] text-[85%]\">")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 87, "<div class=\"flex flex-wrap gap-x-[2rem] gap-y-[0.4rem] text-[85%]\">")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
for _, stat := range flagship.Stats {
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 89, "<span class=\"flex gap-[1ch]\"><span class=\"font-bold text-(--primary)\">")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 88, "<span class=\"flex gap-[1ch]\"><span class=\"font-bold text-(--primary)\">")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- var templ_7745c5c3_Var79 string
- templ_7745c5c3_Var79, templ_7745c5c3_Err = templ.JoinStringErrs(stat.Value)
+ var templ_7745c5c3_Var78 string
+ templ_7745c5c3_Var78, templ_7745c5c3_Err = templ.JoinStringErrs(stat.Value)
if templ_7745c5c3_Err != nil {
- return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 347, Col: 61}
+ return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 345, Col: 61}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var79))
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var78))
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 90, "</span> <span class=\"text-(--alt)\">")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 89, "</span> <span class=\"text-(--alt)\">")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- var templ_7745c5c3_Var80 string
- templ_7745c5c3_Var80, templ_7745c5c3_Err = templ.JoinStringErrs(stat.Label)
+ var templ_7745c5c3_Var79 string
+ templ_7745c5c3_Var79, templ_7745c5c3_Err = templ.JoinStringErrs(stat.Label)
if templ_7745c5c3_Err != nil {
- return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 348, Col: 47}
+ return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 346, Col: 47}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var80))
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var79))
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 91, "</span></span>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 90, "</span></span>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 92, "</div>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 91, "</div>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 93, "</div>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 92, "</div>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
if flagship.Snippet != "" {
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 94, "<div class=\"shrink-0 self-start flex flex-col gap-[0.5rem] p-[1rem] rounded-[0.4rem] bg-black/30 relative z-10\"><span class=\"text-[75%] text-(--alt)\">example</span>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 93, "<div class=\"shrink-0 self-start flex flex-col gap-[0.5rem] p-[1rem] rounded-[0.4rem] bg-black/30 relative z-10\"><span class=\"text-[75%] text-(--alt)\">example</span>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Var81 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var80 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -1729,33 +1711,33 @@ func FlagshipProject(project Project, extra string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- var templ_7745c5c3_Var82 string
- templ_7745c5c3_Var82, templ_7745c5c3_Err = templ.JoinStringErrs(flagship.Snippet)
+ var templ_7745c5c3_Var81 string
+ templ_7745c5c3_Var81, templ_7745c5c3_Err = templ.JoinStringErrs(flagship.Snippet)
if templ_7745c5c3_Err != nil {
- return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 358, Col: 24}
+ return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 356, Col: 24}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var82))
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var81))
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = CopyPre(flagship.Snippet, "text-[80%] leading-[normal]").Render(templ.WithChildren(ctx, templ_7745c5c3_Var81), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = CopyPre(flagship.Snippet, "text-[80%] leading-[normal]").Render(templ.WithChildren(ctx, templ_7745c5c3_Var80), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 95, "</div>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 94, "</div>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 96, "</div>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 95, "</div>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = TerminalBorder("", "", flagshipClasses+" "+extra).Render(templ.WithChildren(ctx, templ_7745c5c3_Var70), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = TerminalBorder("", "", flagshipClasses+" "+extra).Render(templ.WithChildren(ctx, templ_7745c5c3_Var69), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -1779,26 +1761,26 @@ func VersionTag(project Project) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var83 := templ.GetChildren(ctx)
- if templ_7745c5c3_Var83 == nil {
- templ_7745c5c3_Var83 = templ.NopComponent
+ templ_7745c5c3_Var82 := templ.GetChildren(ctx)
+ if templ_7745c5c3_Var82 == nil {
+ templ_7745c5c3_Var82 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
if flagship.Version != "" {
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 97, "<span class=\"flex items-baseline gap-[1ch] text-[85%]\"><code class=\"text-[#46d46c]\">")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 96, "<span class=\"flex items-baseline gap-[1ch] text-[85%]\"><code class=\"text-[#46d46c]\">")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- var templ_7745c5c3_Var84 string
- templ_7745c5c3_Var84, templ_7745c5c3_Err = templ.JoinStringErrs(flagship.Version)
+ var templ_7745c5c3_Var83 string
+ templ_7745c5c3_Var83, templ_7745c5c3_Err = templ.JoinStringErrs(flagship.Version)
if templ_7745c5c3_Err != nil {
- return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 369, Col: 50}
+ return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 367, Col: 50}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var84))
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var83))
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 98, "</code></span>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 97, "</code></span>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -1823,56 +1805,56 @@ func DownloadButton(download Download) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var85 := templ.GetChildren(ctx)
- if templ_7745c5c3_Var85 == nil {
- templ_7745c5c3_Var85 = templ.NopComponent
+ templ_7745c5c3_Var84 := templ.GetChildren(ctx)
+ if templ_7745c5c3_Var84 == nil {
+ templ_7745c5c3_Var84 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
- var templ_7745c5c3_Var86 = []any{"no-underline inline-flex items-center gap-[1ch] px-[0.6rem] py-[0.1rem] rounded-[0.4rem] border-[0.1rem] border-solid text-[85%] transition-colors",
+ var templ_7745c5c3_Var85 = []any{"no-underline inline-flex items-center gap-[1ch] px-[0.6rem] py-[0.1rem] rounded-[0.4rem] border-[0.1rem] border-solid text-[85%] transition-colors",
templ.KV("border-(--secondary)/60 text-(--secondary) hover:bg-(--secondary)/15", download.Enabled),
templ.KV("border-(--alt)/30 text-(--alt)/80 bg-white/2", !download.Enabled),
}
- templ_7745c5c3_Err = templ.RenderCSSItems(ctx, templ_7745c5c3_Buffer, templ_7745c5c3_Var86...)
+ templ_7745c5c3_Err = templ.RenderCSSItems(ctx, templ_7745c5c3_Buffer, templ_7745c5c3_Var85...)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 99, "<a")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 98, "<a")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
if download.Enabled {
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 100, " href=\"")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 99, " href=\"")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- var templ_7745c5c3_Var87 templ.SafeURL
- templ_7745c5c3_Var87, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(download.URL))
+ var templ_7745c5c3_Var86 templ.SafeURL
+ templ_7745c5c3_Var86, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(download.URL))
if templ_7745c5c3_Err != nil {
- return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 378, Col: 37}
+ return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 376, Col: 37}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var87))
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var86))
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 101, "\"")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 100, "\"")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 102, " class=\"")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 101, " class=\"")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- var templ_7745c5c3_Var88 string
- templ_7745c5c3_Var88, templ_7745c5c3_Err = templ.ResolveAttributeValue(templ.CSSClasses(templ_7745c5c3_Var86).String())
+ var templ_7745c5c3_Var87 string
+ templ_7745c5c3_Var87, templ_7745c5c3_Err = templ.ResolveAttributeValue(templ.CSSClasses(templ_7745c5c3_Var85).String())
if templ_7745c5c3_Err != nil {
return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 1, Col: 0}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var88)
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var87)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 103, "\">")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 102, "\">")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -1887,43 +1869,43 @@ func DownloadButton(download Download) templ.Component {
return templ_7745c5c3_Err
}
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 104, "<span>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 103, "<span>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- var templ_7745c5c3_Var89 string
- templ_7745c5c3_Var89, templ_7745c5c3_Err = templ.JoinStringErrs(download.Label)
+ var templ_7745c5c3_Var88 string
+ templ_7745c5c3_Var88, templ_7745c5c3_Err = templ.JoinStringErrs(download.Label)
if templ_7745c5c3_Err != nil {
- return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 391, Col: 24}
+ return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 389, Col: 24}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var89))
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var88))
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 105, "</span> ")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 104, "</span> ")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
if download.Size != "" {
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 106, "<span class=\"text-(--alt)\">")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 105, "<span class=\"text-(--alt)\">")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- var templ_7745c5c3_Var90 string
- templ_7745c5c3_Var90, templ_7745c5c3_Err = templ.JoinStringErrs(download.Size)
+ var templ_7745c5c3_Var89 string
+ templ_7745c5c3_Var89, templ_7745c5c3_Err = templ.JoinStringErrs(download.Size)
if templ_7745c5c3_Err != nil {
- return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 393, Col: 45}
+ return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 391, Col: 45}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var90))
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var89))
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 107, "</span>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 106, "</span>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 108, "</a>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 107, "</a>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -1947,12 +1929,12 @@ func IconArchive(color string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var91 := templ.GetChildren(ctx)
- if templ_7745c5c3_Var91 == nil {
- templ_7745c5c3_Var91 = templ.NopComponent
+ templ_7745c5c3_Var90 := templ.GetChildren(ctx)
+ if templ_7745c5c3_Var90 == nil {
+ templ_7745c5c3_Var90 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
- templ_7745c5c3_Var92 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var91 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -1964,13 +1946,13 @@ func IconArchive(color string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 109, "<rect width=\"20\" height=\"5\" x=\"2\" y=\"3\" rx=\"1\"></rect> <path d=\"M4 8v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8\"></path> <path d=\"M10 12h4\"></path>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 108, "<rect width=\"20\" height=\"5\" x=\"2\" y=\"3\" rx=\"1\"></rect> <path d=\"M4 8v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8\"></path> <path d=\"M10 12h4\"></path>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var92), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var91), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -1994,77 +1976,77 @@ func IconLink(href string, label string, extra string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var93 := templ.GetChildren(ctx)
- if templ_7745c5c3_Var93 == nil {
- templ_7745c5c3_Var93 = templ.NopComponent
+ templ_7745c5c3_Var92 := templ.GetChildren(ctx)
+ if templ_7745c5c3_Var92 == nil {
+ templ_7745c5c3_Var92 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
- var templ_7745c5c3_Var94 = []any{"text-[90%] block p-[0.2rem] rounded-[0.4rem] transition-colors hover:bg-(--alt)/25" + " " + extra}
- templ_7745c5c3_Err = templ.RenderCSSItems(ctx, templ_7745c5c3_Buffer, templ_7745c5c3_Var94...)
+ var templ_7745c5c3_Var93 = []any{"text-[90%] block p-[0.2rem] rounded-[0.4rem] transition-colors hover:bg-(--alt)/25" + " " + extra}
+ templ_7745c5c3_Err = templ.RenderCSSItems(ctx, templ_7745c5c3_Buffer, templ_7745c5c3_Var93...)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 110, "<a href=\"")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 109, "<a href=\"")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- var templ_7745c5c3_Var95 templ.SafeURL
- templ_7745c5c3_Var95, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(href))
+ var templ_7745c5c3_Var94 templ.SafeURL
+ templ_7745c5c3_Var94, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(href))
if templ_7745c5c3_Err != nil {
- return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 407, Col: 30}
+ return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 405, Col: 30}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var95))
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var94))
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 111, "\" target=\"_blank\" rel=\"noopener noreferrer\" aria-label=\"")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 110, "\" target=\"_blank\" rel=\"noopener noreferrer\" aria-label=\"")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- var templ_7745c5c3_Var96 string
- templ_7745c5c3_Var96, templ_7745c5c3_Err = templ.ResolveAttributeValue(label)
+ var templ_7745c5c3_Var95 string
+ templ_7745c5c3_Var95, templ_7745c5c3_Err = templ.ResolveAttributeValue(label)
if templ_7745c5c3_Err != nil {
- return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 407, Col: 93}
+ return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 405, Col: 93}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var96)
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var95)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 112, "\" title=\"")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 111, "\" title=\"")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- var templ_7745c5c3_Var97 string
- templ_7745c5c3_Var97, templ_7745c5c3_Err = templ.ResolveAttributeValue(label)
+ var templ_7745c5c3_Var96 string
+ templ_7745c5c3_Var96, templ_7745c5c3_Err = templ.ResolveAttributeValue(label)
if templ_7745c5c3_Err != nil {
- return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 407, Col: 109}
+ return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 405, Col: 109}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var97)
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var96)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 113, "\" class=\"")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 112, "\" class=\"")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- var templ_7745c5c3_Var98 string
- templ_7745c5c3_Var98, templ_7745c5c3_Err = templ.ResolveAttributeValue(templ.CSSClasses(templ_7745c5c3_Var94).String())
+ var templ_7745c5c3_Var97 string
+ templ_7745c5c3_Var97, templ_7745c5c3_Err = templ.ResolveAttributeValue(templ.CSSClasses(templ_7745c5c3_Var93).String())
if templ_7745c5c3_Err != nil {
return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 1, Col: 0}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var98)
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var97)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 114, "\">")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 113, "\">")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templ_7745c5c3_Var93.Render(ctx, templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = templ_7745c5c3_Var92.Render(ctx, templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 115, "</a>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 114, "</a>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -2088,12 +2070,12 @@ func IconGit(color string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var99 := templ.GetChildren(ctx)
- if templ_7745c5c3_Var99 == nil {
- templ_7745c5c3_Var99 = templ.NopComponent
+ templ_7745c5c3_Var98 := templ.GetChildren(ctx)
+ if templ_7745c5c3_Var98 == nil {
+ templ_7745c5c3_Var98 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
- templ_7745c5c3_Var100 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var99 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -2105,13 +2087,13 @@ func IconGit(color string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 116, "<line x1=\"6\" x2=\"6\" y1=\"3\" y2=\"15\"></line> <circle cx=\"18\" cy=\"6\" r=\"3\"></circle> <circle cx=\"6\" cy=\"18\" r=\"3\"></circle> <path d=\"M18 9a9 9 0 0 1-9 9\"></path>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 115, "<line x1=\"6\" x2=\"6\" y1=\"3\" y2=\"15\"></line> <circle cx=\"18\" cy=\"6\" r=\"3\"></circle> <circle cx=\"6\" cy=\"18\" r=\"3\"></circle> <path d=\"M18 9a9 9 0 0 1-9 9\"></path>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var100), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var99), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -2135,12 +2117,12 @@ func IconGithub(color string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var101 := templ.GetChildren(ctx)
- if templ_7745c5c3_Var101 == nil {
- templ_7745c5c3_Var101 = templ.NopComponent
+ templ_7745c5c3_Var100 := templ.GetChildren(ctx)
+ if templ_7745c5c3_Var100 == nil {
+ templ_7745c5c3_Var100 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
- templ_7745c5c3_Var102 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var101 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -2152,13 +2134,13 @@ func IconGithub(color string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 117, "<path d=\"M15 22v-4a4.8 4.8 0 0 0-1-3.5c3 0 6-2 6-5.5.08-1.25-.27-2.48-1-3.5.28-1.15.28-2.35 0-3.5 0 0-1 0-3 1.5-2.64-.5-5.36-.5-8 0C6 2 5 2 5 2c-.3 1.15-.3 2.35 0 3.5A5.403 5.403 0 0 0 4 9c0 3.5 3 5.5 6 5.5-.39.49-.68 1.05-.85 1.65-.17.6-.22 1.23-.15 1.85v4\"></path> <path d=\"M9 18c-4.51 2-5-2-7-2\"></path>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 116, "<path d=\"M15 22v-4a4.8 4.8 0 0 0-1-3.5c3 0 6-2 6-5.5.08-1.25-.27-2.48-1-3.5.28-1.15.28-2.35 0-3.5 0 0-1 0-3 1.5-2.64-.5-5.36-.5-8 0C6 2 5 2 5 2c-.3 1.15-.3 2.35 0 3.5A5.403 5.403 0 0 0 4 9c0 3.5 3 5.5 6 5.5-.39.49-.68 1.05-.85 1.65-.17.6-.22 1.23-.15 1.85v4\"></path> <path d=\"M9 18c-4.51 2-5-2-7-2\"></path>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var102), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var101), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -2182,12 +2164,12 @@ func IconExternal(color string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var103 := templ.GetChildren(ctx)
- if templ_7745c5c3_Var103 == nil {
- templ_7745c5c3_Var103 = templ.NopComponent
+ templ_7745c5c3_Var102 := templ.GetChildren(ctx)
+ if templ_7745c5c3_Var102 == nil {
+ templ_7745c5c3_Var102 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
- templ_7745c5c3_Var104 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var103 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -2199,13 +2181,13 @@ func IconExternal(color string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 118, "<path d=\"M15 3h6v6\"></path> <path d=\"M10 14 21 3\"></path> <path d=\"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6\"></path>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 117, "<path d=\"M15 3h6v6\"></path> <path d=\"M10 14 21 3\"></path> <path d=\"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6\"></path>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var104), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var103), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -2229,12 +2211,12 @@ func IconKrypton() templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var105 := templ.GetChildren(ctx)
- if templ_7745c5c3_Var105 == nil {
- templ_7745c5c3_Var105 = templ.NopComponent
+ templ_7745c5c3_Var104 := templ.GetChildren(ctx)
+ if templ_7745c5c3_Var104 == nil {
+ templ_7745c5c3_Var104 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
- templ_7745c5c3_Var106 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var105 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -2246,13 +2228,13 @@ func IconKrypton() templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 119, "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 100 100\" width=\"24\" height=\"24\" fill=\"none\" stroke=\"currentColor\"><!-- Outer Circle --><circle cx=\"50\" cy=\"50\" r=\"42\" stroke-width=\"6\"></circle><!-- Inner Dot --><circle cx=\"50\" cy=\"50\" r=\"16\" fill=\"currentColor\" stroke=\"none\"></circle></svg>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 118, "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 100 100\" width=\"24\" height=\"24\" fill=\"none\" stroke=\"currentColor\"><!-- Outer Circle --><circle cx=\"50\" cy=\"50\" r=\"42\" stroke-width=\"6\"></circle><!-- Inner Dot --><circle cx=\"50\" cy=\"50\" r=\"16\" fill=\"currentColor\" stroke=\"none\"></circle></svg>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = Icon("text-[#00f1ff] scale-150").Render(templ.WithChildren(ctx, templ_7745c5c3_Var106), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = Icon("text-[#00f1ff] scale-150").Render(templ.WithChildren(ctx, templ_7745c5c3_Var105), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -2283,16 +2265,16 @@ func ProjectItem(project Project, extra string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var107 := templ.GetChildren(ctx)
- if templ_7745c5c3_Var107 == nil {
- templ_7745c5c3_Var107 = templ.NopComponent
+ templ_7745c5c3_Var106 := templ.GetChildren(ctx)
+ if templ_7745c5c3_Var106 == nil {
+ templ_7745c5c3_Var106 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 120, "<div>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 119, "<div>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Var108 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var107 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -2304,7 +2286,7 @@ func ProjectItem(project Project, extra string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 121, "<div class=\"flex flex-col gap-[0.0625rem] w-full\"><div class=\"flex flex-wrap items-baseline gap-x-[1ch] gap-y-[0.4rem]\">")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 120, "<div class=\"flex flex-col gap-[0.0625rem] w-full\"><div class=\"flex flex-wrap items-baseline gap-x-[1ch] gap-y-[0.4rem]\">")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -2312,102 +2294,102 @@ func ProjectItem(project Project, extra string) templ.Component {
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 122, "<a href=\"")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 121, "<a href=\"")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- var templ_7745c5c3_Var109 templ.SafeURL
- templ_7745c5c3_Var109, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(projectURL(project)))
+ var templ_7745c5c3_Var108 templ.SafeURL
+ templ_7745c5c3_Var108, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(projectURL(project)))
if templ_7745c5c3_Err != nil {
- return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 462, Col: 47}
+ return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 460, Col: 47}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var109))
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var108))
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 123, "\"")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 122, "\"")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
if project.Link != "" {
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 124, " target=\"_blank\" rel=\"noopener noreferrer\"")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 123, " target=\"_blank\" rel=\"noopener noreferrer\"")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 125, " class=\"text-[130%] font-bold text-(--accent) after:absolute after:inset-0 after:z-0\">")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 124, " class=\"text-[130%] font-bold text-(--accent) after:absolute after:inset-0 after:z-0\">")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- var templ_7745c5c3_Var110 string
- templ_7745c5c3_Var110, templ_7745c5c3_Err = templ.JoinStringErrs(project.Title)
+ var templ_7745c5c3_Var109 string
+ templ_7745c5c3_Var109, templ_7745c5c3_Err = templ.JoinStringErrs(project.Title)
if templ_7745c5c3_Err != nil {
- return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 468, Col: 21}
+ return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 466, Col: 21}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var110))
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var109))
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 126, "</a> <span class=\"text-[80%] text-(--primary)\">")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 125, "</a> <span class=\"text-[80%] text-(--primary)\">")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- var templ_7745c5c3_Var111 string
- templ_7745c5c3_Var111, templ_7745c5c3_Err = templ.JoinStringErrs(project.Category)
+ var templ_7745c5c3_Var110 string
+ templ_7745c5c3_Var110, templ_7745c5c3_Err = templ.JoinStringErrs(project.Category)
if templ_7745c5c3_Err != nil {
- return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 469, Col: 65}
+ return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 467, Col: 65}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var111))
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var110))
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 127, "</span> ")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 126, "</span> ")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
for _, tag := range project.Tags {
- var templ_7745c5c3_Var112 = []any{"text-[75%] px-[0.4rem] inline-block rounded-[0.3rem] border-[0.01rem] bg-(--alt)/25" + " " + tag.Color}
- templ_7745c5c3_Err = templ.RenderCSSItems(ctx, templ_7745c5c3_Buffer, templ_7745c5c3_Var112...)
+ var templ_7745c5c3_Var111 = []any{"text-[75%] px-[0.4rem] inline-block rounded-[0.3rem] border-[0.01rem] bg-(--alt)/25" + " " + tag.Color}
+ templ_7745c5c3_Err = templ.RenderCSSItems(ctx, templ_7745c5c3_Buffer, templ_7745c5c3_Var111...)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 128, "<code class=\"")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 127, "<code class=\"")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- var templ_7745c5c3_Var113 string
- templ_7745c5c3_Var113, templ_7745c5c3_Err = templ.ResolveAttributeValue(templ.CSSClasses(templ_7745c5c3_Var112).String())
+ var templ_7745c5c3_Var112 string
+ templ_7745c5c3_Var112, templ_7745c5c3_Err = templ.ResolveAttributeValue(templ.CSSClasses(templ_7745c5c3_Var111).String())
if templ_7745c5c3_Err != nil {
return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 1, Col: 0}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var113)
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var112)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 129, "\">")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 128, "\">")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- var templ_7745c5c3_Var114 string
- templ_7745c5c3_Var114, templ_7745c5c3_Err = templ.JoinStringErrs(tag.Name)
+ var templ_7745c5c3_Var113 string
+ templ_7745c5c3_Var113, templ_7745c5c3_Err = templ.JoinStringErrs(tag.Name)
if templ_7745c5c3_Err != nil {
- return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 471, Col: 136}
+ return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 469, Col: 136}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var114))
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var113))
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 130, "</code>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 129, "</code>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 131, "<span class=\"ml-auto flex items-center self-center relative z-10\">")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 130, "<span class=\"ml-auto flex items-center self-center relative z-10\">")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
for _, link := range project.Links {
- templ_7745c5c3_Var115 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var114 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -2425,35 +2407,35 @@ func ProjectItem(project Project, extra string) templ.Component {
}
return nil
})
- templ_7745c5c3_Err = IconLink(link.URL, link.Label, "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var115), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = IconLink(link.URL, link.Label, "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var114), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 132, "</span></div><p class=\"text-[95%]\">")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 131, "</span></div><p class=\"text-[95%]\">")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- var templ_7745c5c3_Var116 string
- templ_7745c5c3_Var116, templ_7745c5c3_Err = templ.JoinStringErrs(project.Desc)
+ var templ_7745c5c3_Var115 string
+ templ_7745c5c3_Var115, templ_7745c5c3_Err = templ.JoinStringErrs(project.Desc)
if templ_7745c5c3_Err != nil {
- return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 484, Col: 40}
+ return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 482, Col: 40}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var116))
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var115))
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 133, "</p></div>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 132, "</p></div>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = TerminalBorder("", "", "[--border-py:0.25rem] py-2 text-[80%] bg-black/20 hover:bg-white/5 transition-colors duration-150"+" "+extra).Render(templ.WithChildren(ctx, templ_7745c5c3_Var108), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = TerminalBorder("", "", "[--border-py:0.25rem] py-2 text-[80%] bg-black/20 hover:bg-white/5 transition-colors duration-150"+" "+extra).Render(templ.WithChildren(ctx, templ_7745c5c3_Var107), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 134, "</div>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 133, "</div>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -2482,12 +2464,12 @@ func ProjectsPage(style Style, projects []Project, pinned int) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var117 := templ.GetChildren(ctx)
- if templ_7745c5c3_Var117 == nil {
- templ_7745c5c3_Var117 = templ.NopComponent
+ templ_7745c5c3_Var116 := templ.GetChildren(ctx)
+ if templ_7745c5c3_Var116 == nil {
+ templ_7745c5c3_Var116 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
- templ_7745c5c3_Var118 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var117 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -2503,7 +2485,7 @@ func ProjectsPage(style Style, projects []Project, pinned int) templ.Component {
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Var119 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var118 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -2515,7 +2497,7 @@ func ProjectsPage(style Style, projects []Project, pinned int) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var120 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var119 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -2544,19 +2526,19 @@ func ProjectsPage(style Style, projects []Project, pinned int) templ.Component {
}
return nil
})
- templ_7745c5c3_Err = TerminalStack(false, "mt-[0.5rem]").Render(templ.WithChildren(ctx, templ_7745c5c3_Var120), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = TerminalStack(false, "mt-[0.5rem]").Render(templ.WithChildren(ctx, templ_7745c5c3_Var119), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = ScrollBox("").Render(templ.WithChildren(ctx, templ_7745c5c3_Var119), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = ScrollBox("").Render(templ.WithChildren(ctx, templ_7745c5c3_Var118), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = TerminalLayout(style, "/home/kyren/projects").Render(templ.WithChildren(ctx, templ_7745c5c3_Var118), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = TerminalLayout(style, "/home/kyren/projects").Render(templ.WithChildren(ctx, templ_7745c5c3_Var117), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -2580,12 +2562,12 @@ func NotFoundPage(style Style, path string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var121 := templ.GetChildren(ctx)
- if templ_7745c5c3_Var121 == nil {
- templ_7745c5c3_Var121 = templ.NopComponent
+ templ_7745c5c3_Var120 := templ.GetChildren(ctx)
+ if templ_7745c5c3_Var120 == nil {
+ templ_7745c5c3_Var120 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
- templ_7745c5c3_Var122 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var121 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -2597,7 +2579,7 @@ func NotFoundPage(style Style, path string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var123 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var122 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -2609,7 +2591,7 @@ func NotFoundPage(style Style, path string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var124 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var123 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -2621,43 +2603,43 @@ func NotFoundPage(style Style, path string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 135, "<span><p>$ cd ~")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 134, "<span><p>$ cd ~")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- var templ_7745c5c3_Var125 string
- templ_7745c5c3_Var125, templ_7745c5c3_Err = templ.JoinStringErrs(path)
+ var templ_7745c5c3_Var124 string
+ templ_7745c5c3_Var124, templ_7745c5c3_Err = templ.JoinStringErrs(path)
if templ_7745c5c3_Err != nil {
- return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 519, Col: 20}
+ return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 517, Col: 20}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var125))
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var124))
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 136, "</p><p class=\"pt-3\">\"")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 135, "</p><p class=\"pt-3\">\"")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- var templ_7745c5c3_Var126 string
- templ_7745c5c3_Var126, templ_7745c5c3_Err = templ.JoinStringErrs(path[1:])
+ var templ_7745c5c3_Var125 string
+ templ_7745c5c3_Var125, templ_7745c5c3_Err = templ.JoinStringErrs(path[1:])
if templ_7745c5c3_Err != nil {
- return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 520, Col: 32}
+ return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 518, Col: 32}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var126))
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var125))
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 137, "\": No such file or directory (os error 2) </p></span>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 136, "\": No such file or directory (os error 2) </p></span>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = TerminalBorder("Shell", "", "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var124), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = TerminalBorder("Shell", "", "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var123), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Var127 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var126 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -2669,24 +2651,24 @@ func NotFoundPage(style Style, path string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 138, "<span><div class=\"gap-[1ch]\"><span>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 137, "<span><div class=\"gap-[1ch]\"><span>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- var templ_7745c5c3_Var128 string
- templ_7745c5c3_Var128, templ_7745c5c3_Err = templ.JoinStringErrs(">")
+ var templ_7745c5c3_Var127 string
+ templ_7745c5c3_Var127, templ_7745c5c3_Err = templ.JoinStringErrs(">")
if templ_7745c5c3_Err != nil {
- return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 526, Col: 17}
+ return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 524, Col: 17}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var128))
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var127))
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 139, "</span> <span class=\"text-(--secondary)\">")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 138, "</span> <span class=\"text-(--secondary)\">")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Var129 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var128 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -2698,39 +2680,39 @@ func NotFoundPage(style Style, path string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- var templ_7745c5c3_Var130 string
- templ_7745c5c3_Var130, templ_7745c5c3_Err = templ.JoinStringErrs("cd -")
+ var templ_7745c5c3_Var129 string
+ templ_7745c5c3_Var129, templ_7745c5c3_Err = templ.JoinStringErrs("cd -")
if templ_7745c5c3_Err != nil {
- return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 529, Col: 16}
+ return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 527, Col: 16}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var130))
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var129))
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = Link("javascript:history.back()", false).Render(templ.WithChildren(ctx, templ_7745c5c3_Var129), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = Link("javascript:history.back()", false).Render(templ.WithChildren(ctx, templ_7745c5c3_Var128), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 140, "</span> <span class=\"text-(--alt)\"># Previous page</span></div><div class=\"gap-[1ch]\"><span>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 139, "</span> <span class=\"text-(--alt)\"># Previous page</span></div><div class=\"gap-[1ch]\"><span>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- var templ_7745c5c3_Var131 string
- templ_7745c5c3_Var131, templ_7745c5c3_Err = templ.JoinStringErrs(">")
+ var templ_7745c5c3_Var130 string
+ templ_7745c5c3_Var130, templ_7745c5c3_Err = templ.JoinStringErrs(">")
if templ_7745c5c3_Err != nil {
- return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 537, Col: 17}
+ return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 535, Col: 17}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var131))
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var130))
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 141, "</span> <span class=\"text-(--secondary)\">")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 140, "</span> <span class=\"text-(--secondary)\">")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Var132 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var131 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -2742,40 +2724,40 @@ func NotFoundPage(style Style, path string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- var templ_7745c5c3_Var133 string
- templ_7745c5c3_Var133, templ_7745c5c3_Err = templ.JoinStringErrs("cd $HOME")
+ var templ_7745c5c3_Var132 string
+ templ_7745c5c3_Var132, templ_7745c5c3_Err = templ.JoinStringErrs("cd $HOME")
if templ_7745c5c3_Err != nil {
- return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 540, Col: 20}
+ return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 538, Col: 20}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var133))
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var132))
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = Link("/", false).Render(templ.WithChildren(ctx, templ_7745c5c3_Var132), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = Link("/", false).Render(templ.WithChildren(ctx, templ_7745c5c3_Var131), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 142, "</span></div></span>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 141, "</span></div></span>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = TerminalBorder("", "", "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var127), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = TerminalBorder("", "", "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var126), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = TerminalStack(true, "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var123), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = TerminalStack(true, "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var122), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = TerminalLayout(style, path).Render(templ.WithChildren(ctx, templ_7745c5c3_Var122), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = TerminalLayout(style, path).Render(templ.WithChildren(ctx, templ_7745c5c3_Var121), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -2799,38 +2781,38 @@ func ScrollBox(extra string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var134 := templ.GetChildren(ctx)
- if templ_7745c5c3_Var134 == nil {
- templ_7745c5c3_Var134 = templ.NopComponent
+ templ_7745c5c3_Var133 := templ.GetChildren(ctx)
+ if templ_7745c5c3_Var133 == nil {
+ templ_7745c5c3_Var133 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
- var templ_7745c5c3_Var135 = []any{"flex flex-1 min-h-0", extra}
- templ_7745c5c3_Err = templ.RenderCSSItems(ctx, templ_7745c5c3_Buffer, templ_7745c5c3_Var135...)
+ var templ_7745c5c3_Var134 = []any{"flex flex-1 min-h-0", extra}
+ templ_7745c5c3_Err = templ.RenderCSSItems(ctx, templ_7745c5c3_Buffer, templ_7745c5c3_Var134...)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 143, "<div data-scrollbox class=\"")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 142, "<div data-scrollbox class=\"")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- var templ_7745c5c3_Var136 string
- templ_7745c5c3_Var136, templ_7745c5c3_Err = templ.ResolveAttributeValue(templ.CSSClasses(templ_7745c5c3_Var135).String())
+ var templ_7745c5c3_Var135 string
+ templ_7745c5c3_Var135, templ_7745c5c3_Err = templ.ResolveAttributeValue(templ.CSSClasses(templ_7745c5c3_Var134).String())
if templ_7745c5c3_Err != nil {
return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 1, Col: 0}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var136)
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var135)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 144, "\"><div data-scroll-area class=\"flex-1 min-w-0 overflow-y-auto border-[0.1rem] border-solid border-(--alt) p-[1rem] [scrollbar-width:none] [&::-webkit-scrollbar]:hidden\">")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 143, "\"><div data-scroll-area class=\"flex-1 min-w-0 overflow-y-auto border-[0.1rem] border-solid border-(--alt) p-[1rem] [scrollbar-width:none] [&::-webkit-scrollbar]:hidden\">")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templ_7745c5c3_Var134.Render(ctx, templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = templ_7745c5c3_Var133.Render(ctx, templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 145, "</div><div data-scroll-track class=\"relative w-8 -ml-[0.1rem] border-[0.1rem] border-solid border-(--alt)\"><div data-scroll-thumb class=\"absolute inset-x-[0.3rem] bg-(--secondary) cursor-grab touch-none\"></div></div></div>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 144, "</div><div data-scroll-track class=\"relative w-8 -ml-[0.1rem] border-[0.1rem] border-solid border-(--alt)\"><div data-scroll-thumb class=\"absolute inset-x-[0.3rem] bg-(--secondary) cursor-grab touch-none\"></div></div></div>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -2854,12 +2836,12 @@ func BlogsPage(style Style, blogs []Blog) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var137 := templ.GetChildren(ctx)
- if templ_7745c5c3_Var137 == nil {
- templ_7745c5c3_Var137 = templ.NopComponent
+ templ_7745c5c3_Var136 := templ.GetChildren(ctx)
+ if templ_7745c5c3_Var136 == nil {
+ templ_7745c5c3_Var136 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
- templ_7745c5c3_Var138 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var137 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -2871,7 +2853,7 @@ func BlogsPage(style Style, blogs []Blog) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var139 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var138 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -2883,17 +2865,17 @@ func BlogsPage(style Style, blogs []Blog) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 146, "$ ls -lh ~/blogs")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 145, "$ ls -lh ~/blogs")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = TerminalBorder("Shell", "", "mb-[1rem]").Render(templ.WithChildren(ctx, templ_7745c5c3_Var139), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = TerminalBorder("Shell", "", "mb-[1rem]").Render(templ.WithChildren(ctx, templ_7745c5c3_Var138), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Var140 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var139 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -2905,7 +2887,7 @@ func BlogsPage(style Style, blogs []Blog) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var141 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var140 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -2927,19 +2909,19 @@ func BlogsPage(style Style, blogs []Blog) templ.Component {
}
return nil
})
- templ_7745c5c3_Err = TerminalStack(false, "mt-[0.5rem]").Render(templ.WithChildren(ctx, templ_7745c5c3_Var141), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = TerminalStack(false, "mt-[0.5rem]").Render(templ.WithChildren(ctx, templ_7745c5c3_Var140), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = ScrollBox("").Render(templ.WithChildren(ctx, templ_7745c5c3_Var140), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = ScrollBox("").Render(templ.WithChildren(ctx, templ_7745c5c3_Var139), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = TerminalLayout(style, "blogs").Render(templ.WithChildren(ctx, templ_7745c5c3_Var138), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = TerminalLayout(style, "blogs").Render(templ.WithChildren(ctx, templ_7745c5c3_Var137), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -2970,12 +2952,12 @@ func IconMonitor(color string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var142 := templ.GetChildren(ctx)
- if templ_7745c5c3_Var142 == nil {
- templ_7745c5c3_Var142 = templ.NopComponent
+ templ_7745c5c3_Var141 := templ.GetChildren(ctx)
+ if templ_7745c5c3_Var141 == nil {
+ templ_7745c5c3_Var141 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
- templ_7745c5c3_Var143 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var142 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -2987,13 +2969,13 @@ func IconMonitor(color string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 147, "<rect width=\"20\" height=\"14\" x=\"2\" y=\"3\" rx=\"2\"></rect> <line x1=\"8\" x2=\"16\" y1=\"21\" y2=\"21\"></line> <line x1=\"12\" x2=\"12\" y1=\"17\" y2=\"21\"></line>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 146, "<rect width=\"20\" height=\"14\" x=\"2\" y=\"3\" rx=\"2\"></rect> <line x1=\"8\" x2=\"16\" y1=\"21\" y2=\"21\"></line> <line x1=\"12\" x2=\"12\" y1=\"17\" y2=\"21\"></line>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var143), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var142), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -3017,12 +2999,12 @@ func IconTerminal(color string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var144 := templ.GetChildren(ctx)
- if templ_7745c5c3_Var144 == nil {
- templ_7745c5c3_Var144 = templ.NopComponent
+ templ_7745c5c3_Var143 := templ.GetChildren(ctx)
+ if templ_7745c5c3_Var143 == nil {
+ templ_7745c5c3_Var143 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
- templ_7745c5c3_Var145 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var144 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -3034,13 +3016,13 @@ func IconTerminal(color string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 148, "<polyline points=\"4 17 10 11 4 5\"></polyline> <line x1=\"12\" x2=\"20\" y1=\"19\" y2=\"19\"></line>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 147, "<polyline points=\"4 17 10 11 4 5\"></polyline> <line x1=\"12\" x2=\"20\" y1=\"19\" y2=\"19\"></line>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var145), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var144), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -3064,12 +3046,12 @@ func IconCode(color string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var146 := templ.GetChildren(ctx)
- if templ_7745c5c3_Var146 == nil {
- templ_7745c5c3_Var146 = templ.NopComponent
+ templ_7745c5c3_Var145 := templ.GetChildren(ctx)
+ if templ_7745c5c3_Var145 == nil {
+ templ_7745c5c3_Var145 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
- templ_7745c5c3_Var147 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var146 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -3081,13 +3063,13 @@ func IconCode(color string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 149, "<polyline points=\"16 18 22 12 16 6\"></polyline> <polyline points=\"8 6 2 12 8 18\"></polyline>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 148, "<polyline points=\"16 18 22 12 16 6\"></polyline> <polyline points=\"8 6 2 12 8 18\"></polyline>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var147), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var146), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -3111,12 +3093,12 @@ func IconCpu(color string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var148 := templ.GetChildren(ctx)
- if templ_7745c5c3_Var148 == nil {
- templ_7745c5c3_Var148 = templ.NopComponent
+ templ_7745c5c3_Var147 := templ.GetChildren(ctx)
+ if templ_7745c5c3_Var147 == nil {
+ templ_7745c5c3_Var147 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
- templ_7745c5c3_Var149 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var148 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -3128,13 +3110,13 @@ func IconCpu(color string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 150, "<rect width=\"16\" height=\"16\" x=\"4\" y=\"4\" rx=\"2\"></rect> <rect width=\"6\" height=\"6\" x=\"9\" y=\"9\" rx=\"1\"></rect> <path d=\"M15 2v2M15 20v2M2 15h2M2 9h2M20 15h2M20 9h2M9 2v2M9 20v2\"></path>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 149, "<rect width=\"16\" height=\"16\" x=\"4\" y=\"4\" rx=\"2\"></rect> <rect width=\"6\" height=\"6\" x=\"9\" y=\"9\" rx=\"1\"></rect> <path d=\"M15 2v2M15 20v2M2 15h2M2 9h2M20 15h2M20 9h2M9 2v2M9 20v2\"></path>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var149), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var148), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -3158,12 +3140,12 @@ func IconScriptLang(color string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var150 := templ.GetChildren(ctx)
- if templ_7745c5c3_Var150 == nil {
- templ_7745c5c3_Var150 = templ.NopComponent
+ templ_7745c5c3_Var149 := templ.GetChildren(ctx)
+ if templ_7745c5c3_Var149 == nil {
+ templ_7745c5c3_Var149 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
- templ_7745c5c3_Var151 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var150 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -3175,13 +3157,13 @@ func IconScriptLang(color string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 151, "<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=\"lucide lucide-file-terminal preview-icon\"><path d=\"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z\"></path><path d=\"M14 2v5a1 1 0 0 0 1 1h5\"></path><path d=\"m8 16 2-2-2-2\"></path><path d=\"M12 18h4\"></path></svg>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 150, "<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=\"lucide lucide-file-terminal preview-icon\"><path d=\"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z\"></path><path d=\"M14 2v5a1 1 0 0 0 1 1h5\"></path><path d=\"m8 16 2-2-2-2\"></path><path d=\"M12 18h4\"></path></svg>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var151), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var150), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -3205,12 +3187,12 @@ func IconEditor(color string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var152 := templ.GetChildren(ctx)
- if templ_7745c5c3_Var152 == nil {
- templ_7745c5c3_Var152 = templ.NopComponent
+ templ_7745c5c3_Var151 := templ.GetChildren(ctx)
+ if templ_7745c5c3_Var151 == nil {
+ templ_7745c5c3_Var151 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
- templ_7745c5c3_Var153 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var152 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -3222,13 +3204,13 @@ func IconEditor(color string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 152, "<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=\"lucide lucide-square-pen preview-icon\"><path d=\"M12 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"></path><path d=\"M18.375 2.625a1 1 0 0 1 3 3l-9.013 9.014a2 2 0 0 1-.853.505l-2.873.84a.5.5 0 0 1-.62-.62l.84-2.873a2 2 0 0 1 .506-.852z\"></path></svg>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 151, "<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=\"lucide lucide-square-pen preview-icon\"><path d=\"M12 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"></path><path d=\"M18.375 2.625a1 1 0 0 1 3 3l-9.013 9.014a2 2 0 0 1-.853.505l-2.873.84a.5.5 0 0 1-.62-.62l.84-2.873a2 2 0 0 1 .506-.852z\"></path></svg>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var153), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var152), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -3252,12 +3234,12 @@ func IconDebugger(color string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var154 := templ.GetChildren(ctx)
- if templ_7745c5c3_Var154 == nil {
- templ_7745c5c3_Var154 = templ.NopComponent
+ templ_7745c5c3_Var153 := templ.GetChildren(ctx)
+ if templ_7745c5c3_Var153 == nil {
+ templ_7745c5c3_Var153 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
- templ_7745c5c3_Var155 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var154 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -3269,13 +3251,13 @@ func IconDebugger(color string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 153, "<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=\"lucide lucide-bug-off preview-icon\"><path d=\"M12 20v-8\"></path><path d=\"M12.656 7H14a4 4 0 0 1 4 4v1.344\"></path><path d=\"M14.12 3.88 16 2\"></path><path d=\"M17.123 17.123A6 6 0 0 1 6 14v-3a4 4 0 0 1 1.72-3.287\"></path><path d=\"m2 2 20 20\"></path><path d=\"M21 5a4 4 0 0 1-3.55 3.97\"></path><path d=\"M22 13h-3.344\"></path><path d=\"M3 21a4 4 0 0 1 3.81-4\"></path><path d=\"M3 5a4 4 0 0 0 3.55 3.97\"></path><path d=\"M6 13H2\"></path><path d=\"m8 2 1.88 1.88\"></path><path d=\"M9.712 4.06A3 3 0 0 1 15 6v1.13\"></path></svg>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 152, "<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=\"lucide lucide-bug-off preview-icon\"><path d=\"M12 20v-8\"></path><path d=\"M12.656 7H14a4 4 0 0 1 4 4v1.344\"></path><path d=\"M14.12 3.88 16 2\"></path><path d=\"M17.123 17.123A6 6 0 0 1 6 14v-3a4 4 0 0 1 1.72-3.287\"></path><path d=\"m2 2 20 20\"></path><path d=\"M21 5a4 4 0 0 1-3.55 3.97\"></path><path d=\"M22 13h-3.344\"></path><path d=\"M3 21a4 4 0 0 1 3.81-4\"></path><path d=\"M3 5a4 4 0 0 0 3.55 3.97\"></path><path d=\"M6 13H2\"></path><path d=\"m8 2 1.88 1.88\"></path><path d=\"M9.712 4.06A3 3 0 0 1 15 6v1.13\"></path></svg>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var155), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var154), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -3299,12 +3281,12 @@ func IconKeyboard(color string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var156 := templ.GetChildren(ctx)
- if templ_7745c5c3_Var156 == nil {
- templ_7745c5c3_Var156 = templ.NopComponent
+ templ_7745c5c3_Var155 := templ.GetChildren(ctx)
+ if templ_7745c5c3_Var155 == nil {
+ templ_7745c5c3_Var155 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
- templ_7745c5c3_Var157 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var156 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -3316,13 +3298,13 @@ func IconKeyboard(color string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 154, "<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=\"lucide lucide-keyboard preview-icon\"><path d=\"M10 8h.01\"></path><path d=\"M12 12h.01\"></path><path d=\"M14 8h.01\"></path><path d=\"M16 12h.01\"></path><path d=\"M18 8h.01\"></path><path d=\"M6 8h.01\"></path><path d=\"M7 16h10\"></path><path d=\"M8 12h.01\"></path><rect width=\"20\" height=\"16\" x=\"2\" y=\"4\" rx=\"2\"></rect></svg>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 153, "<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=\"lucide lucide-keyboard preview-icon\"><path d=\"M10 8h.01\"></path><path d=\"M12 12h.01\"></path><path d=\"M14 8h.01\"></path><path d=\"M16 12h.01\"></path><path d=\"M18 8h.01\"></path><path d=\"M6 8h.01\"></path><path d=\"M7 16h10\"></path><path d=\"M8 12h.01\"></path><rect width=\"20\" height=\"16\" x=\"2\" y=\"4\" rx=\"2\"></rect></svg>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var157), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var156), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -3346,12 +3328,12 @@ func IconUptime(color string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var158 := templ.GetChildren(ctx)
- if templ_7745c5c3_Var158 == nil {
- templ_7745c5c3_Var158 = templ.NopComponent
+ templ_7745c5c3_Var157 := templ.GetChildren(ctx)
+ if templ_7745c5c3_Var157 == nil {
+ templ_7745c5c3_Var157 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
- templ_7745c5c3_Var159 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var158 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -3363,13 +3345,13 @@ func IconUptime(color string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 155, "<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=\"lucide lucide-clock preview-icon\"><circle cx=\"12\" cy=\"12\" r=\"10\"></circle><path d=\"M12 6v6l4 2\"></path></svg>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 154, "<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=\"lucide lucide-clock preview-icon\"><circle cx=\"12\" cy=\"12\" r=\"10\"></circle><path d=\"M12 6v6l4 2\"></path></svg>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var159), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var158), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -3393,12 +3375,12 @@ func IconEko(color string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var160 := templ.GetChildren(ctx)
- if templ_7745c5c3_Var160 == nil {
- templ_7745c5c3_Var160 = templ.NopComponent
+ templ_7745c5c3_Var159 := templ.GetChildren(ctx)
+ if templ_7745c5c3_Var159 == nil {
+ templ_7745c5c3_Var159 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
- templ_7745c5c3_Var161 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var160 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -3410,13 +3392,13 @@ func IconEko(color string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 156, "<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=\"lucide lucide-wifi preview-icon\"><path d=\"M12 20h.01\"></path><path d=\"M2 8.82a15 15 0 0 1 20 0\"></path><path d=\"M5 12.859a10 10 0 0 1 14 0\"></path><path d=\"M8.5 16.429a5 5 0 0 1 7 0\"></path></svg>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 155, "<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=\"lucide lucide-wifi preview-icon\"><path d=\"M12 20h.01\"></path><path d=\"M2 8.82a15 15 0 0 1 20 0\"></path><path d=\"M5 12.859a10 10 0 0 1 14 0\"></path><path d=\"M8.5 16.429a5 5 0 0 1 7 0\"></path></svg>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var161), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var160), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -3440,12 +3422,12 @@ func IconTrident(color string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var162 := templ.GetChildren(ctx)
- if templ_7745c5c3_Var162 == nil {
- templ_7745c5c3_Var162 = templ.NopComponent
+ templ_7745c5c3_Var161 := templ.GetChildren(ctx)
+ if templ_7745c5c3_Var161 == nil {
+ templ_7745c5c3_Var161 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
- templ_7745c5c3_Var163 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var162 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -3457,13 +3439,13 @@ func IconTrident(color string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 157, "<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=\"lucide preview-icon\"><path d=\"m16 2-2.3 2.3a3 3 0 0 0 0 4.2l1.8 1.8a3 3 0 0 0 4.2 0L22 8\"></path> <path d=\"M19 5 2.1 21.9\"></path></svg>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 156, "<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=\"lucide preview-icon\"><path d=\"m16 2-2.3 2.3a3 3 0 0 0 0 4.2l1.8 1.8a3 3 0 0 0 4.2 0L22 8\"></path> <path d=\"M19 5 2.1 21.9\"></path></svg>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var163), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var162), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -3487,12 +3469,12 @@ func IconDotfiles(color string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var164 := templ.GetChildren(ctx)
- if templ_7745c5c3_Var164 == nil {
- templ_7745c5c3_Var164 = templ.NopComponent
+ templ_7745c5c3_Var163 := templ.GetChildren(ctx)
+ if templ_7745c5c3_Var163 == nil {
+ templ_7745c5c3_Var163 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
- templ_7745c5c3_Var165 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var164 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -3504,13 +3486,13 @@ func IconDotfiles(color string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 158, "<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=\"lucide lucide-settings preview-icon\"><path d=\"M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915\"></path><circle cx=\"12\" cy=\"12\" r=\"3\"></circle></svg>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 157, "<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=\"lucide lucide-settings preview-icon\"><path d=\"M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915\"></path><circle cx=\"12\" cy=\"12\" r=\"3\"></circle></svg>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var165), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var164), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -3534,12 +3516,12 @@ func IconVideo(color string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var166 := templ.GetChildren(ctx)
- if templ_7745c5c3_Var166 == nil {
- templ_7745c5c3_Var166 = templ.NopComponent
+ templ_7745c5c3_Var165 := templ.GetChildren(ctx)
+ if templ_7745c5c3_Var165 == nil {
+ templ_7745c5c3_Var165 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
- templ_7745c5c3_Var167 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var166 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -3551,13 +3533,13 @@ func IconVideo(color string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 159, " <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=\"lucide lucide-monitor-play preview-icon\"><path d=\"M15.033 9.44a.647.647 0 0 1 0 1.12l-4.065 2.352a.645.645 0 0 1-.968-.56V7.648a.645.645 0 0 1 .967-.56z\"></path><path d=\"M12 17v4\"></path><path d=\"M8 21h8\"></path><rect x=\"2\" y=\"3\" width=\"20\" height=\"14\" rx=\"2\"></rect></svg>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 158, " <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=\"lucide lucide-monitor-play preview-icon\"><path d=\"M15.033 9.44a.647.647 0 0 1 0 1.12l-4.065 2.352a.645.645 0 0 1-.968-.56V7.648a.645.645 0 0 1 .967-.56z\"></path><path d=\"M12 17v4\"></path><path d=\"M8 21h8\"></path><rect x=\"2\" y=\"3\" width=\"20\" height=\"14\" rx=\"2\"></rect></svg>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var167), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var166), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -3581,12 +3563,12 @@ func IconJetbrains(color string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var168 := templ.GetChildren(ctx)
- if templ_7745c5c3_Var168 == nil {
- templ_7745c5c3_Var168 = templ.NopComponent
+ templ_7745c5c3_Var167 := templ.GetChildren(ctx)
+ if templ_7745c5c3_Var167 == nil {
+ templ_7745c5c3_Var167 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
- templ_7745c5c3_Var169 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var168 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -3598,13 +3580,13 @@ func IconJetbrains(color string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 160, "<svg fill=\"none\" viewBox=\"0 0 64 64\" xmlns=\"http://www.w3.org/2000/svg\"><defs><linearGradient id=\"_R_34j5_\" x1=\"0.85\" x2=\"62.62\" y1=\"62.72\" y2=\"1.81\" gradientUnits=\"userSpaceOnUse\"><stop stop-color=\"#FF9419\"></stop> <stop offset=\"0.43\" stop-color=\"#FF021D\"></stop> <stop offset=\"0.99\" stop-color=\"#E600FF\"></stop></linearGradient></defs> <path fill=\"url(#_R_34j5_)\" d=\"M20.34 3.66 3.66 20.34A12.5 12.5 0 0 0 0 29.18V59c0 2.76 2.24 5 5 5h29.82c3.32 0 6.49-1.32 8.84-3.66l16.68-16.68c2.34-2.34 3.66-5.52 3.66-8.84V5c0-2.76-2.24-5-5-5H29.18c-3.32 0-6.49 1.32-8.84 3.66\"></path> <path fill=\"#000\" d=\"M48 16H8v40h40z\"></path> <path fill=\"#fff\" d=\"M30 47H13v4h17z\"></path></svg>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 159, "<svg fill=\"none\" viewBox=\"0 0 64 64\" xmlns=\"http://www.w3.org/2000/svg\"><defs><linearGradient id=\"_R_34j5_\" x1=\"0.85\" x2=\"62.62\" y1=\"62.72\" y2=\"1.81\" gradientUnits=\"userSpaceOnUse\"><stop stop-color=\"#FF9419\"></stop> <stop offset=\"0.43\" stop-color=\"#FF021D\"></stop> <stop offset=\"0.99\" stop-color=\"#E600FF\"></stop></linearGradient></defs> <path fill=\"url(#_R_34j5_)\" d=\"M20.34 3.66 3.66 20.34A12.5 12.5 0 0 0 0 29.18V59c0 2.76 2.24 5 5 5h29.82c3.32 0 6.49-1.32 8.84-3.66l16.68-16.68c2.34-2.34 3.66-5.52 3.66-8.84V5c0-2.76-2.24-5-5-5H29.18c-3.32 0-6.49 1.32-8.84 3.66\"></path> <path fill=\"#000\" d=\"M48 16H8v40h40z\"></path> <path fill=\"#fff\" d=\"M30 47H13v4h17z\"></path></svg>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var169), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var168), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -3628,12 +3610,12 @@ func IconDocs(color string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var170 := templ.GetChildren(ctx)
- if templ_7745c5c3_Var170 == nil {
- templ_7745c5c3_Var170 = templ.NopComponent
+ templ_7745c5c3_Var169 := templ.GetChildren(ctx)
+ if templ_7745c5c3_Var169 == nil {
+ templ_7745c5c3_Var169 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
- templ_7745c5c3_Var171 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var170 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -3645,13 +3627,13 @@ func IconDocs(color string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 161, "<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=\"lucide lucide-book-open preview-icon\"><path d=\"M12 5v16\"></path><path d=\"M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z\"></path></svg>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 160, "<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=\"lucide lucide-book-open preview-icon\"><path d=\"M12 5v16\"></path><path d=\"M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z\"></path></svg>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var171), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var170), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -3675,12 +3657,12 @@ func IconReleases(color string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var172 := templ.GetChildren(ctx)
- if templ_7745c5c3_Var172 == nil {
- templ_7745c5c3_Var172 = templ.NopComponent
+ templ_7745c5c3_Var171 := templ.GetChildren(ctx)
+ if templ_7745c5c3_Var171 == nil {
+ templ_7745c5c3_Var171 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
- templ_7745c5c3_Var173 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var172 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -3692,13 +3674,13 @@ func IconReleases(color string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 162, "<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=\"lucide lucide-tags preview-icon\"><path d=\"M13.172 2a2 2 0 0 1 1.414.586l6.71 6.71a2.4 2.4 0 0 1 0 3.408l-4.592 4.592a2.4 2.4 0 0 1-3.408 0l-6.71-6.71A2 2 0 0 1 6 9.172V3a1 1 0 0 1 1-1z\"></path><path d=\"M2 7v6.172a2 2 0 0 0 .586 1.414l6.71 6.71a2.4 2.4 0 0 0 3.191.193\"></path><circle cx=\"10.5\" cy=\"6.5\" r=\".5\" fill=\"currentColor\"></circle></svg>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 161, "<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=\"lucide lucide-tags preview-icon\"><path d=\"M13.172 2a2 2 0 0 1 1.414.586l6.71 6.71a2.4 2.4 0 0 1 0 3.408l-4.592 4.592a2.4 2.4 0 0 1-3.408 0l-6.71-6.71A2 2 0 0 1 6 9.172V3a1 1 0 0 1 1-1z\"></path><path d=\"M2 7v6.172a2 2 0 0 0 .586 1.414l6.71 6.71a2.4 2.4 0 0 0 3.191.193\"></path><circle cx=\"10.5\" cy=\"6.5\" r=\".5\" fill=\"currentColor\"></circle></svg>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var173), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var172), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -3750,30 +3732,30 @@ func Fastfetch(rows []FetchRow) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var174 := templ.GetChildren(ctx)
- if templ_7745c5c3_Var174 == nil {
- templ_7745c5c3_Var174 = templ.NopComponent
+ templ_7745c5c3_Var173 := templ.GetChildren(ctx)
+ if templ_7745c5c3_Var173 == nil {
+ templ_7745c5c3_Var173 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 163, "<div style=\"\n\t\tdisplay: grid;\n\t\tgrid-template-columns: auto auto auto 1fr;\n\t\talign-items: center;\n\t\tcolumn-gap: 1ch;\n\t\tline-height: normal;\n\t\">")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 162, "<div style=\"\n\t\tdisplay: grid;\n\t\tgrid-template-columns: auto auto auto 1fr;\n\t\talign-items: center;\n\t\tcolumn-gap: 1ch;\n\t\tline-height: normal;\n\t\">")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
for i, row := range rows {
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 164, "<span class=\"text-(--alt)\">")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 163, "<span class=\"text-(--alt)\">")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- var templ_7745c5c3_Var175 string
- templ_7745c5c3_Var175, templ_7745c5c3_Err = templ.JoinStringErrs(branch(i, len(rows)))
+ var templ_7745c5c3_Var174 string
+ templ_7745c5c3_Var174, templ_7745c5c3_Err = templ.JoinStringErrs(branch(i, len(rows)))
if templ_7745c5c3_Err != nil {
- return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 741, Col: 52}
+ return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 739, Col: 52}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var175))
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var174))
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 165, "</span>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 164, "</span>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -3781,69 +3763,69 @@ func Fastfetch(rows []FetchRow) templ.Component {
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- var templ_7745c5c3_Var176 = []any{row.Color, "font-bold"}
- templ_7745c5c3_Err = templ.RenderCSSItems(ctx, templ_7745c5c3_Buffer, templ_7745c5c3_Var176...)
+ var templ_7745c5c3_Var175 = []any{row.Color, "font-bold"}
+ templ_7745c5c3_Err = templ.RenderCSSItems(ctx, templ_7745c5c3_Buffer, templ_7745c5c3_Var175...)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 166, "<span class=\"")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 165, "<span class=\"")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- var templ_7745c5c3_Var177 string
- templ_7745c5c3_Var177, templ_7745c5c3_Err = templ.ResolveAttributeValue(templ.CSSClasses(templ_7745c5c3_Var176).String())
+ var templ_7745c5c3_Var176 string
+ templ_7745c5c3_Var176, templ_7745c5c3_Err = templ.ResolveAttributeValue(templ.CSSClasses(templ_7745c5c3_Var175).String())
if templ_7745c5c3_Err != nil {
return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 1, Col: 0}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var177)
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var176)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 167, "\">")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 166, "\">")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- var templ_7745c5c3_Var178 string
- templ_7745c5c3_Var178, templ_7745c5c3_Err = templ.JoinStringErrs(row.Label)
+ var templ_7745c5c3_Var177 string
+ templ_7745c5c3_Var177, templ_7745c5c3_Err = templ.JoinStringErrs(row.Label)
if templ_7745c5c3_Err != nil {
- return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 743, Col: 53}
+ return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 741, Col: 53}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var178))
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var177))
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 168, "</span> <span id=\"")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 167, "</span> <span id=\"")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- var templ_7745c5c3_Var179 string
- templ_7745c5c3_Var179, templ_7745c5c3_Err = templ.ResolveAttributeValue(row.Label)
+ var templ_7745c5c3_Var178 string
+ templ_7745c5c3_Var178, templ_7745c5c3_Err = templ.ResolveAttributeValue(row.Label)
if templ_7745c5c3_Err != nil {
- return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 744, Col: 23}
+ return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 742, Col: 23}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var179)
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var178)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 169, "\">")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 168, "\">")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- var templ_7745c5c3_Var180 string
- templ_7745c5c3_Var180, templ_7745c5c3_Err = templ.JoinStringErrs(row.Value)
+ var templ_7745c5c3_Var179 string
+ templ_7745c5c3_Var179, templ_7745c5c3_Err = templ.JoinStringErrs(row.Value)
if templ_7745c5c3_Err != nil {
- return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 744, Col: 37}
+ return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 742, Col: 37}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var180))
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var179))
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 170, "</span>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 169, "</span>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 171, "</div>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 170, "</div>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -3867,38 +3849,38 @@ func Icon(color string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var181 := templ.GetChildren(ctx)
- if templ_7745c5c3_Var181 == nil {
- templ_7745c5c3_Var181 = templ.NopComponent
+ templ_7745c5c3_Var180 := templ.GetChildren(ctx)
+ if templ_7745c5c3_Var180 == nil {
+ templ_7745c5c3_Var180 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
- var templ_7745c5c3_Var182 = []any{"shrink-0", Color(color), "self-center"}
- templ_7745c5c3_Err = templ.RenderCSSItems(ctx, templ_7745c5c3_Buffer, templ_7745c5c3_Var182...)
+ var templ_7745c5c3_Var181 = []any{"shrink-0", Color(color), "self-center"}
+ templ_7745c5c3_Err = templ.RenderCSSItems(ctx, templ_7745c5c3_Buffer, templ_7745c5c3_Var181...)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 172, "<svg width=\"1.1em\" height=\"1.1em\" class=\"")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 171, "<svg width=\"1.1em\" height=\"1.1em\" class=\"")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- var templ_7745c5c3_Var183 string
- templ_7745c5c3_Var183, templ_7745c5c3_Err = templ.ResolveAttributeValue(templ.CSSClasses(templ_7745c5c3_Var182).String())
+ var templ_7745c5c3_Var182 string
+ templ_7745c5c3_Var182, templ_7745c5c3_Err = templ.ResolveAttributeValue(templ.CSSClasses(templ_7745c5c3_Var181).String())
if templ_7745c5c3_Err != nil {
return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 1, Col: 0}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var183)
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var182)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 173, "\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\">")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 172, "\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\">")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templ_7745c5c3_Var181.Render(ctx, templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = templ_7745c5c3_Var180.Render(ctx, templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 174, "</svg>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 173, "</svg>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -3922,12 +3904,12 @@ func BlogPage(style Style, blog Blog, prev *Blog, next *Blog) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var184 := templ.GetChildren(ctx)
- if templ_7745c5c3_Var184 == nil {
- templ_7745c5c3_Var184 = templ.NopComponent
+ templ_7745c5c3_Var183 := templ.GetChildren(ctx)
+ if templ_7745c5c3_Var183 == nil {
+ templ_7745c5c3_Var183 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
- templ_7745c5c3_Var185 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var184 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -3939,7 +3921,7 @@ func BlogPage(style Style, blog Blog, prev *Blog, next *Blog) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var186 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_Var185 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
@@ -3955,7 +3937,7 @@ func BlogPage(style Style, blog Blog, prev *Blog, next *Blog) templ.Component {
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 175, "<article class=\"prose select-text font-(family-name:--font-normal) text-[18px] leading-[1.7]\">")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 174, "<article class=\"prose select-text font-(family-name:--font-normal) text-[17.6px] leading-[1.7]\">")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -3963,7 +3945,7 @@ func BlogPage(style Style, blog Blog, prev *Blog, next *Blog) templ.Component {
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 176, "</article><div class=\"grid grid-cols-2 gap-x-[1rem] mt-[1rem]\">")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 175, "</article><div class=\"grid grid-cols-2 gap-x-[1rem] mt-[1rem]\">")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -3975,19 +3957,19 @@ func BlogPage(style Style, blog Blog, prev *Blog, next *Blog) templ.Component {
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 177, "</div>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 176, "</div>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = ScrollBox("").Render(templ.WithChildren(ctx, templ_7745c5c3_Var186), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = ScrollBox("").Render(templ.WithChildren(ctx, templ_7745c5c3_Var185), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return nil
})
- templ_7745c5c3_Err = TerminalLayout(style, blog.Title).Render(templ.WithChildren(ctx, templ_7745c5c3_Var185), templ_7745c5c3_Buffer)
+ templ_7745c5c3_Err = TerminalLayout(style, blog.Title).Render(templ.WithChildren(ctx, templ_7745c5c3_Var184), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -4011,115 +3993,65 @@ func BlogNav(label string, blog *Blog, extra string) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var187 := templ.GetChildren(ctx)
- if templ_7745c5c3_Var187 == nil {
- templ_7745c5c3_Var187 = templ.NopComponent
+ templ_7745c5c3_Var186 := templ.GetChildren(ctx)
+ if templ_7745c5c3_Var186 == nil {
+ templ_7745c5c3_Var186 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
- templ_7745c5c3_Var188 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
- templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
- templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
- if !templ_7745c5c3_IsBuffer {
- defer func() {
- templ_7745c5c3_BufErr := templruntime.ReleaseBuffer(templ_7745c5c3_Buffer)
- if templ_7745c5c3_Err == nil {
- templ_7745c5c3_Err = templ_7745c5c3_BufErr
- }
- }()
- }
- ctx = templ.InitializeContext(ctx)
- if blog != nil {
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 178, "<a href=\"")
+ if blog != nil {
+ templ_7745c5c3_Var187 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
+ templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
+ templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
+ if !templ_7745c5c3_IsBuffer {
+ defer func() {
+ templ_7745c5c3_BufErr := templruntime.ReleaseBuffer(templ_7745c5c3_Buffer)
+ if templ_7745c5c3_Err == nil {
+ templ_7745c5c3_Err = templ_7745c5c3_BufErr
+ }
+ }()
+ }
+ ctx = templ.InitializeContext(ctx)
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 177, "<a href=\"")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- var templ_7745c5c3_Var189 templ.SafeURL
- templ_7745c5c3_Var189, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL("/blogs/" + blog.Slug))
+ var templ_7745c5c3_Var188 templ.SafeURL
+ templ_7745c5c3_Var188, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL("/blogs/" + blog.Slug))
if templ_7745c5c3_Err != nil {
- return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 773, Col: 49}
+ return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 771, Col: 49}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var189))
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var188))
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 179, "\">vim ~/blogs/")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 178, "\" class=\"block min-w-0 truncate\">vim ~/blogs/")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- var templ_7745c5c3_Var190 string
- templ_7745c5c3_Var190, templ_7745c5c3_Err = templ.JoinStringErrs(blog.Slug)
+ var templ_7745c5c3_Var189 string
+ templ_7745c5c3_Var189, templ_7745c5c3_Err = templ.JoinStringErrs(blog.Slug)
if templ_7745c5c3_Err != nil {
- return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 773, Col: 75}
+ return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 771, Col: 106}
}
- _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var190))
+ _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var189))
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 180, "</a>")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 179, "</a>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
+ return nil
+ })
+ templ_7745c5c3_Err = TerminalBorder(label, "", "min-w-0 "+extra).Render(templ.WithChildren(ctx, templ_7745c5c3_Var187), templ_7745c5c3_Buffer)
+ if templ_7745c5c3_Err != nil {
+ return templ_7745c5c3_Err
}
- return nil
- })
- templ_7745c5c3_Err = TerminalBorder(label, "", extra).Render(templ.WithChildren(ctx, templ_7745c5c3_Var188), templ_7745c5c3_Buffer)
- if templ_7745c5c3_Err != nil {
- return templ_7745c5c3_Err
- }
- return nil
- })
-}
-
-func FootnotePanel() templ.Component {
- return templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
- templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
- if templ_7745c5c3_CtxErr := ctx.Err(); templ_7745c5c3_CtxErr != nil {
- return templ_7745c5c3_CtxErr
- }
- templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
- if !templ_7745c5c3_IsBuffer {
- defer func() {
- templ_7745c5c3_BufErr := templruntime.ReleaseBuffer(templ_7745c5c3_Buffer)
- if templ_7745c5c3_Err == nil {
- templ_7745c5c3_Err = templ_7745c5c3_BufErr
- }
- }()
- }
- ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Var191 := templ.GetChildren(ctx)
- if templ_7745c5c3_Var191 == nil {
- templ_7745c5c3_Var191 = templ.NopComponent
- }
- ctx = templ.ClearChildren(ctx)
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 181, "<aside data-footnote-panel class=\"hidden fixed left-[calc(50%+38.5rem)] top-[calc(50%-20rem)] w-[10.5rem] max-h-[40rem] overflow-y-auto\">")
- if templ_7745c5c3_Err != nil {
- return templ_7745c5c3_Err
- }
- templ_7745c5c3_Var192 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
- templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
- templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
- if !templ_7745c5c3_IsBuffer {
- defer func() {
- templ_7745c5c3_BufErr := templruntime.ReleaseBuffer(templ_7745c5c3_Buffer)
- if templ_7745c5c3_Err == nil {
- templ_7745c5c3_Err = templ_7745c5c3_BufErr
- }
- }()
- }
- ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 182, "<div data-footnote-body class=\"font-(family-name:--font-normal)\"></div>")
+ } else {
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 180, "<div></div>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
- return nil
- })
- templ_7745c5c3_Err = TerminalBorder("note", "", "text-[14px]").Render(templ.WithChildren(ctx, templ_7745c5c3_Var192), templ_7745c5c3_Buffer)
- if templ_7745c5c3_Err != nil {
- return templ_7745c5c3_Err
- }
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 183, "</aside>")
- if templ_7745c5c3_Err != nil {
- return templ_7745c5c3_Err
}
return nil
})