From 26ac862befb195a9e03e0d554dbe1480d2e55775 Mon Sep 17 00:00:00 2001 From: Kyren223 Date: Fri, 9 Oct 2026 17:42:43 +0300 Subject: Foobar --- public/scrollbar.js | 24 + public/style.css | 923 ++-------------- website.go | 163 ++- website.templ | 416 ++------ website_templ.go | 2916 ++++++++++++++------------------------------------- 5 files changed, 1053 insertions(+), 3389 deletions(-) diff --git a/public/scrollbar.js b/public/scrollbar.js index da6aded..2218b55 100644 --- a/public/scrollbar.js +++ b/public/scrollbar.js @@ -50,3 +50,27 @@ function initScrollbox(box) { } document.querySelectorAll("[data-scrollbox]").forEach(initScrollbox); + +// Vim style j/k scrolling +document.addEventListener("keydown", (e) => { + // Don't scroll in input elements + const tag = document.activeElement.tagName; + if ( + ["INPUT", "TEXTAREA", "SELECT"].includes(tag) || + document.activeElement.isContentEditable + ) { + return; + } + + // Only work for "j" and "k", no ctrl/alt/shift + if (e.ctrlKey || e.altKey || e.metaKey) return; + + const dir = key === "j" ? step : -step; + const scrollTarget = document.scrollingElement || document.documentElement; + const scrollAmount = 100; // in pixels + if (scrollTarget && scrollTarget.scrollHeight > scrollTarget.clientHeight) { + scrollTarget.scrollBy({ top: dir, behavior: "auto" }); + } else { + window.scrollBy({ top: dir, behavior: "auto" }); + } +}); diff --git a/public/style.css b/public/style.css index 684c599..11879d3 100644 --- a/public/style.css +++ b/public/style.css @@ -28,8 +28,6 @@ --text-sm--line-height: calc(1.25 / 0.875); --text-2xl: 1.5rem; --text-2xl--line-height: calc(2 / 1.5); - --text-3xl: 1.875rem; - --text-3xl--line-height: calc(2.25 / 1.875); --font-weight-normal: 400; --font-weight-bold: 700; --tracking-wider: 0.05em; @@ -211,9 +209,6 @@ .inset-x-\[0\.3rem\] { inset-inline: 0.3rem; } - .top-1 { - top: var(--spacing); - } .top-1\/2 { top: calc(1 / 2 * 100%); } @@ -232,21 +227,9 @@ .right-full { right: 100%; } - .bottom-\[-0\.5rem\] { - bottom: -0.5rem; - } .bottom-\[-0\.7em\] { bottom: -0.7em; } - .bottom-\[-0\.30rem\] { - bottom: -0.30rem; - } - .bottom-\[-0\.35rem\] { - bottom: -0.35rem; - } - .bottom-\[-0\.45rem\] { - bottom: -0.45rem; - } .bottom-\[-0\.55rem\] { bottom: -0.55rem; } @@ -262,9 +245,6 @@ .col-span-2 { grid-column: span 2 / span 2; } - .col-span-3 { - grid-column: span 3 / span 3; - } .-m-\[0\.4rem\] { margin: calc(0.4rem * -1); } @@ -283,39 +263,9 @@ .mx-\[1vw\] { margin-inline: 1vw; } - .my-0 { - margin-block: 0px; - } - .my-\[-0\.5rem\] { - margin-block: -0.5rem; - } - .my-\[-0\.10rem\] { - margin-block: -0.10rem; - } .my-\[-0\.15rem\] { margin-block: -0.15rem; } - .my-\[-0\.20rem\] { - margin-block: -0.20rem; - } - .my-\[-0\.25\] { - margin-block: -0.25; - } - .my-\[-0\.25rem\] { - margin-block: -0.25rem; - } - .my-\[-0\.30rem\] { - margin-block: -0.30rem; - } - .my-\[-0\.50rem\] { - margin-block: -0.50rem; - } - .my-\[-0\.rem\] { - margin-block: -0.rem; - } - .my-\[0\.0rem\] { - margin-block: 0.0rem; - } .my-\[0\.625vw\] { margin-block: 0.625vw; } @@ -328,21 +278,12 @@ .my-\[5vw\] { margin-block: 5vw; } - .mt-0 { - margin-top: 0px; - } - .mt-\[0\.0rem\] { - margin-top: 0.0rem; - } .mt-\[0\.5rem\] { margin-top: 0.5rem; } .mt-\[0\.625vw\] { margin-top: 0.625vw; } - .mt-\[0\.rem\] { - margin-top: 0.rem; - } .mt-\[1vw\] { margin-top: 1vw; } @@ -364,30 +305,9 @@ .mb-0 { margin-bottom: 0px; } - .mb-2 { - margin-bottom: calc(var(--spacing) * 2); - } - .mb-4 { - margin-bottom: calc(var(--spacing) * 4); - } .mb-6 { margin-bottom: calc(var(--spacing) * 6); } - .mb-10 { - margin-bottom: calc(var(--spacing) * 10); - } - .mb-12 { - margin-bottom: calc(var(--spacing) * 12); - } - .mb-\[0\.0rem\] { - margin-bottom: 0.0rem; - } - .mb-\[0\.1rem\] { - margin-bottom: 0.1rem; - } - .mb-\[0\.5rem\] { - margin-bottom: 0.5rem; - } .mb-\[0\.30rem\] { margin-bottom: 0.30rem; } @@ -400,9 +320,6 @@ .mb-\[1rem\] { margin-bottom: 1rem; } - .mb-\[2rem\] { - margin-bottom: 2rem; - } .mb-\[5vw\] { margin-bottom: 5vw; } @@ -418,12 +335,6 @@ .ml-auto { margin-left: auto; } - .line-clamp-2 { - overflow: hidden; - display: -webkit-box; - -webkit-box-orient: vertical; - -webkit-line-clamp: 2; - } .block { display: block; } @@ -448,15 +359,9 @@ .h-0 { height: 0px; } - .h-2 { - height: calc(var(--spacing) * 2); - } .h-38 { height: calc(var(--spacing) * 38); } - .h-\[0\.1rem\] { - height: 0.1rem; - } .h-\[9\.5vw\] { height: 9.5vw; } @@ -466,9 +371,6 @@ .h-\[62\%\] { height: 62%; } - .h-\[80\%\] { - height: 80%; - } .h-\[80svh\] { height: 80svh; } @@ -493,27 +395,12 @@ .w-0 { width: 0px; } - .w-2 { - width: calc(var(--spacing) * 2); - } .w-8 { width: calc(var(--spacing) * 8); } - .w-\[\%\] { - width: %; - } - .w-\[0\%\] { - width: 0%; - } - .w-\[0\.625rem\] { - width: 0.625rem; - } .w-\[30\%\] { width: 30%; } - .w-\[50\%\] { - width: 50%; - } .w-\[67\%\] { width: 67%; } @@ -523,9 +410,6 @@ .w-\[75rem\] { width: 75rem; } - .w-\[80\%\] { - width: 80%; - } .w-\[95vw\] { width: 95vw; } @@ -544,25 +428,12 @@ .min-w-0 { min-width: 0px; } - .min-w-\[260px\] { - min-width: 260px; - } .flex-1 { flex: 1; } - .flex-shrink { - flex-shrink: 1; - } .shrink-0 { flex-shrink: 0; } - .border-collapse { - border-collapse: collapse; - } - .-translate-y-1 { - --tw-translate-y: calc(var(--spacing) * -1); - translate: var(--tw-translate-x) var(--tw-translate-y); - } .-translate-y-1\/2 { --tw-translate-y: calc(calc(1 / 2 * 100%) * -1); translate: var(--tw-translate-x) var(--tw-translate-y); @@ -570,9 +441,6 @@ .transform { transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,); } - .animate-pulse { - animation: var(--animate-pulse); - } .cursor-grab { cursor: grab; } @@ -588,9 +456,6 @@ .\[scrollbar-width\:none\] { scrollbar-width: none; } - .grid-cols-1 { - grid-template-columns: repeat(1, minmax(0, 1fr)); - } .grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); } @@ -615,21 +480,9 @@ .items-center { align-items: center; } - .items-end { - align-items: flex-end; - } .justify-between { justify-content: space-between; } - .gap-1 { - gap: var(--spacing); - } - .gap-2 { - gap: calc(var(--spacing) * 2); - } - .gap-3 { - gap: calc(var(--spacing) * 3); - } .gap-4 { gap: calc(var(--spacing) * 4); } @@ -642,15 +495,9 @@ .gap-16 { gap: calc(var(--spacing) * 16); } - .gap-\[0\.5ch\] { - gap: 0.5ch; - } .gap-\[0\.5rem\] { gap: 0.5rem; } - .gap-\[0\.25rem\] { - gap: 0.25rem; - } .gap-\[0\.0625rem\] { gap: 0.0625rem; } @@ -660,12 +507,6 @@ .gap-\[1ch\] { gap: 1ch; } - .gap-\[1rem\] { - gap: 1rem; - } - .gap-\[2rem\] { - gap: 2rem; - } .gap-x-4 { column-gap: calc(var(--spacing) * 4); } @@ -675,12 +516,6 @@ .gap-x-\[1ch\] { column-gap: 1ch; } - .gap-x-\[1rem\] { - column-gap: 1rem; - } - .gap-x-\[2\.5rem\] { - column-gap: 2.5rem; - } .gap-x-\[2rem\] { column-gap: 2rem; } @@ -701,28 +536,6 @@ .gap-y-\[0\.4rem\] { row-gap: 0.4rem; } - .gap-y-\[0\.5rem\] { - row-gap: 0.5rem; - } - .gap-y-\[0\.75rem\] { - row-gap: 0.75rem; - } - :where(.divide-y > :not(:last-child)) { - --tw-divide-y-reverse: 0; - border-bottom-style: var(--tw-border-style); - border-top-style: var(--tw-border-style); - border-top-width: calc(1px * var(--tw-divide-y-reverse)); - border-bottom-width: calc(1px * calc(1 - var(--tw-divide-y-reverse))); - } - :where(.divide-white > :not(:last-child)) { - border-color: var(--color-white); - } - :where(.divide-white\/5 > :not(:last-child)) { - border-color: color-mix(in srgb, #fff 5%, transparent); - @supports (color: color-mix(in lab, red, red)) { - border-color: color-mix(in oklab, var(--color-white) 5%, transparent); - } - } .self-center { align-self: center; } @@ -746,33 +559,16 @@ .overflow-y-auto { overflow-y: auto; } - .rounded { - border-radius: 0.25rem; - } - .rounded-\[0\.2rem\] { - border-radius: 0.2rem; - } .rounded-\[0\.3rem\] { border-radius: 0.3rem; } .rounded-\[0\.4rem\] { border-radius: 0.4rem; } - .rounded-full { - border-radius: calc(infinity * 1px); - } .border { border-style: var(--tw-border-style); border-width: 1px; } - .border-1 { - border-style: var(--tw-border-style); - border-width: 1px; - } - .border-2 { - border-style: var(--tw-border-style); - border-width: 2px; - } .border-\[0\.01rem\] { border-style: var(--tw-border-style); border-width: 0.01rem; @@ -789,30 +585,10 @@ border-style: var(--tw-border-style); border-width: 0.2rem; } - .border-\[0\.03rem\] { - border-style: var(--tw-border-style); - border-width: 0.03rem; - } .border-\[0\.05rem\] { border-style: var(--tw-border-style); border-width: 0.05rem; } - .border-\[0\.06rem\] { - border-style: var(--tw-border-style); - border-width: 0.06rem; - } - .border-\[0\.13rem\] { - border-style: var(--tw-border-style); - border-width: 0.13rem; - } - .border-\[0\.16rem\] { - border-style: var(--tw-border-style); - border-width: 0.16rem; - } - .border-\[0\.25rem\] { - border-style: var(--tw-border-style); - border-width: 0.25rem; - } .border-\[0\.25vh\] { border-style: var(--tw-border-style); border-width: 0.25vh; @@ -821,30 +597,6 @@ border-style: var(--tw-border-style); border-width: 0.125rem; } - .border-\[0\.0625rem\] { - border-style: var(--tw-border-style); - border-width: 0.0625rem; - } - .border-\[0\.03125rem\] { - border-style: var(--tw-border-style); - border-width: 0.03125rem; - } - .border-\[1rem\] { - border-style: var(--tw-border-style); - border-width: 1rem; - } - .border-x-\[0\.1rem\] { - border-inline-style: var(--tw-border-style); - border-inline-width: 0.1rem; - } - .border-t { - border-top-style: var(--tw-border-style); - border-top-width: 1px; - } - .border-b { - border-bottom-style: var(--tw-border-style); - border-bottom-width: 1px; - } .border-solid { --tw-border-style: solid; border-style: solid; @@ -852,18 +604,9 @@ .border-\(--accent\)\! { border-color: var(--accent) !important; } - .border-\(--accent\)\/50 { - border-color: var(--accent); - @supports (color: color-mix(in lab, red, red)) { - border-color: color-mix(in oklab, var(--accent) 50%, transparent); - } - } .border-\(--alt\) { border-color: var(--alt); } - .border-\(--primary\)\! { - border-color: var(--primary) !important; - } .border-\(--secondary\)\/60 { border-color: var(--secondary); @supports (color: color-mix(in lab, red, red)) { @@ -873,54 +616,12 @@ .border-\(--text\) { border-color: var(--text); } - .border-\[--text\] { - border-color: --text; - } .border-\[color\:var\(--alt\)\] { border-color: var(--alt); } .border-\[var\(--alt\)\] { border-color: var(--alt); } - .border-\[var\(--primary\)\]\/40 { - border-color: var(--primary); - @supports (color: color-mix(in lab, red, red)) { - border-color: color-mix(in oklab, var(--primary) 40%, transparent); - } - } - .border-emerald-800 { - border-color: var(--color-emerald-800); - } - .border-emerald-800\/30 { - border-color: color-mix(in srgb, oklch(43.2% 0.095 166.913) 30%, transparent); - @supports (color: color-mix(in lab, red, red)) { - border-color: color-mix(in oklab, var(--color-emerald-800) 30%, transparent); - } - } - .border-red-800 { - border-color: var(--color-red-800); - } - .border-red-800\/30 { - border-color: color-mix(in srgb, oklch(44.4% 0.177 26.899) 30%, transparent); - @supports (color: color-mix(in lab, red, red)) { - border-color: color-mix(in oklab, var(--color-red-800) 30%, transparent); - } - } - .border-white { - border-color: var(--color-white); - } - .border-white\/5 { - border-color: color-mix(in srgb, #fff 5%, transparent); - @supports (color: color-mix(in lab, red, red)) { - border-color: color-mix(in oklab, var(--color-white) 5%, transparent); - } - } - .border-white\/10 { - border-color: color-mix(in srgb, #fff 10%, transparent); - @supports (color: color-mix(in lab, red, red)) { - border-color: color-mix(in oklab, var(--color-white) 10%, transparent); - } - } .bg-\(--alt\)\/25 { background-color: var(--alt); @supports (color: color-mix(in lab, red, red)) { @@ -930,24 +631,6 @@ .bg-\(--background\) { background-color: var(--background); } - .bg-\(--extra\)\/0 { - background-color: var(--extra); - @supports (color: color-mix(in lab, red, red)) { - background-color: color-mix(in oklab, var(--extra) 0%, transparent); - } - } - .bg-\(--extra\)\/25 { - background-color: var(--extra); - @supports (color: color-mix(in lab, red, red)) { - background-color: color-mix(in oklab, var(--extra) 25%, transparent); - } - } - .bg-\(--extra\)\/50 { - background-color: var(--extra); - @supports (color: color-mix(in lab, red, red)) { - background-color: color-mix(in oklab, var(--extra) 50%, transparent); - } - } .bg-\(--extra\)\/70 { background-color: var(--extra); @supports (color: color-mix(in lab, red, red)) { @@ -957,27 +640,12 @@ .bg-\(--secondary\) { background-color: var(--secondary); } - .bg-\(--text\) { - background-color: var(--text); - } - .bg-\(--var\) { - background-color: var(--var); - } - .bg-\[color\:var\(--alt\)\] { - background-color: var(--alt); - } - .bg-\[var\(--\)\] { - background-color: var(--); - } .bg-\[var\(--background\)\] { background-color: var(--background); } .bg-\[var\(--text\)\] { background-color: var(--text); } - .bg-black { - background-color: var(--color-black); - } .bg-black\/20 { background-color: color-mix(in srgb, #000 20%, transparent); @supports (color: color-mix(in lab, red, red)) { @@ -990,51 +658,6 @@ background-color: color-mix(in oklab, var(--color-black) 30%, transparent); } } - .bg-emerald-400 { - background-color: var(--color-emerald-400); - } - .bg-emerald-950 { - background-color: var(--color-emerald-950); - } - .bg-emerald-950\/40 { - background-color: color-mix(in srgb, oklch(26.2% 0.051 172.552) 40%, transparent); - @supports (color: color-mix(in lab, red, red)) { - background-color: color-mix(in oklab, var(--color-emerald-950) 40%, transparent); - } - } - .bg-red-950 { - background-color: var(--color-red-950); - } - .bg-red-950\/40 { - background-color: color-mix(in srgb, oklch(25.8% 0.092 26.042) 40%, transparent); - @supports (color: color-mix(in lab, red, red)) { - background-color: color-mix(in oklab, var(--color-red-950) 40%, transparent); - } - } - .bg-transparent { - background-color: transparent; - } - .bg-white { - background-color: var(--color-white); - } - .bg-white\/5 { - background-color: color-mix(in srgb, #fff 5%, transparent); - @supports (color: color-mix(in lab, red, red)) { - background-color: color-mix(in oklab, var(--color-white) 5%, transparent); - } - } - .bg-white\/\[0\.01\] { - background-color: color-mix(in srgb, #fff 1%, transparent); - @supports (color: color-mix(in lab, red, red)) { - background-color: color-mix(in oklab, var(--color-white) 1%, transparent); - } - } - .bg-white\/\[0\.02\] { - 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)) { @@ -1044,39 +667,9 @@ .bg-\[linear-gradient\(to_bottom\,\#181825\,var\(--background\)\)\] { background-image: linear-gradient(to bottom,#181825,var(--background)); } - .bg-\[linear-gradient\(to_bottom\,\,var\(--background\)\)\] { - background-image: linear-gradient(to bottom,,var(--background)); - } - .bg-\[linear-gradient\(to_bottom\,var\(\)\,var\(--background\)\)\] { - background-image: linear-gradient(to bottom,var(),var(--background)); - } - .bg-\[linear-gradient\(to_bottom\,var\(--backgrou\)\,var\(--background\)\)\] { - background-image: linear-gradient(to bottom,var(--backgrou),var(--background)); - } - .bg-\[linear-gradient\(to_bottom\,var\(--background\)\,var\(--background\)\)\] { - background-image: linear-gradient(to bottom,var(--background),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)); } - .bg-\[linear-gradient\(to_bottom\,var\(--cmp-bg\,\)\,var\(--background\)\)\] { - background-image: linear-gradient(to bottom,var(--cmp-bg,),var(--background)); - } - .bg-\[linear-gradient\(to_bottom\,var\(--cmp-bg\,black\)\,var\(--background\)\)\] { - background-image: linear-gradient(to bottom,var(--cmp-bg,black),var(--background)); - } - .bg-\[linear-gradient\(to_bottom\,var\(--cmp-bg\,transparent\)\,var\(--background\)\)\] { - background-image: linear-gradient(to bottom,var(--cmp-bg,transparent),var(--background)); - } - .bg-\[linear-gradient\(to_bottom\,var\(--cmp-bg\,white\)\,var\(--background\)\)\] { - background-image: linear-gradient(to bottom,var(--cmp-bg,white),var(--background)); - } - .bg-\[linear-gradient\(to_bottom\,var\(--text\)\,var\(--background\)\)\] { - background-image: linear-gradient(to bottom,var(--text),var(--background)); - } - .bg-\[linear-gradient\(to_bottom\,var\(white\)\,var\(--background\)\)\] { - background-image: linear-gradient(to bottom,var(white),var(--background)); - } .fill-\[\#7ed4fb\]\/50 { fill: color-mix(in oklab, #7ed4fb 50%, transparent); } @@ -1092,21 +685,9 @@ .p-0 { padding: 0px; } - .p-3 { - padding: calc(var(--spacing) * 3); - } - .p-3\.5 { - padding: calc(var(--spacing) * 3.5); - } .p-4 { padding: calc(var(--spacing) * 4); } - .p-5 { - padding: calc(var(--spacing) * 5); - } - .p-6 { - padding: calc(var(--spacing) * 6); - } .p-8 { padding: calc(var(--spacing) * 8); } @@ -1128,54 +709,27 @@ .p-\[3vw\] { padding: 3vw; } - .px-1 { - padding-inline: var(--spacing); - } - .px-1\.5 { - padding-inline: calc(var(--spacing) * 1.5); - } - .px-2 { - padding-inline: calc(var(--spacing) * 2); - } - .px-3 { - padding-inline: calc(var(--spacing) * 3); - } .px-3\.5 { padding-inline: calc(var(--spacing) * 3.5); } .px-\[0\.1vw\] { padding-inline: 0.1vw; } - .px-\[0\.2rem\] { - padding-inline: 0.2rem; - } .px-\[0\.4rem\] { padding-inline: 0.4rem; } .px-\[0\.5em\] { padding-inline: 0.5em; } - .px-\[0\.5rem\] { - padding-inline: 0.5rem; - } .px-\[0\.6rem\] { padding-inline: 0.6rem; } - .px-\[0\.8rem\] { - padding-inline: 0.8rem; - } .px-\[0\.625rem\] { padding-inline: 0.625rem; } .py-\(--ypad\) { padding-block: var(--ypad); } - .py-0 { - padding-block: 0px; - } - .py-0\.5 { - padding-block: calc(var(--spacing) * 0.5); - } .py-2 { padding-block: calc(var(--spacing) * 2); } @@ -1185,30 +739,15 @@ .py-\[0\.1rem\] { padding-block: 0.1rem; } - .py-\[0\.3rem\] { - padding-block: 0.3rem; - } - .py-\[0\.25rem\] { - padding-block: 0.25rem; - } .py-\[0\.625vw\] { padding-block: 0.625vw; } - .py-\[var\(--border-py\,0\.875rem\)\] { - padding-block: var(--border-py,0.875rem); - } .pt-3 { padding-top: calc(var(--spacing) * 3); } - .pt-4 { - padding-top: calc(var(--spacing) * 4); - } .pt-\[1\.0625em\] { padding-top: 1.0625em; } - .pt-\[1rem\] { - padding-top: 1rem; - } .pt-\[1vw\] { padding-top: 1vw; } @@ -1221,15 +760,6 @@ .pr-\[1\.25vw\] { padding-right: 1.25vw; } - .pb-2 { - padding-bottom: calc(var(--spacing) * 2); - } - .pb-3 { - padding-bottom: calc(var(--spacing) * 3); - } - .pb-4 { - padding-bottom: calc(var(--spacing) * 4); - } .text-left { text-align: left; } @@ -1242,45 +772,18 @@ .font-mono { font-family: var(--font-mono); } - .text-2xl { - font-size: var(--text-2xl); - line-height: var(--tw-leading, var(--text-2xl--line-height)); - } - .text-sm { - font-size: var(--text-sm); - line-height: var(--tw-leading, var(--text-sm--line-height)); - } - .text-xs { - font-size: var(--text-xs); - line-height: var(--tw-leading, var(--text-xs--line-height)); - } - .text-\[0\%\] { - font-size: 0%; - } - .text-\[0\.5rem\] { - font-size: 0.5rem; - } .text-\[0\.6rem\] { font-size: 0.6rem; } - .text-\[0\.7rem\] { - font-size: 0.7rem; - } .text-\[0\.8rem\] { font-size: 0.8rem; } - .text-\[0\.75rem\] { - font-size: 0.75rem; - } .text-\[0\.96vw\] { font-size: 0.96vw; } .text-\[0\.675rem\] { font-size: 0.675rem; } - .text-\[1\.6rem\] { - font-size: 1.6rem; - } .text-\[1\.125rem\] { font-size: 1.125rem; } @@ -1299,30 +802,12 @@ .text-\[3vw\] { font-size: 3vw; } - .text-\[5\%\] { - font-size: 5%; - } .text-\[5vw\] { font-size: 5vw; } - .text-\[7\%\] { - font-size: 7%; - } - .text-\[10px\] { - font-size: 10px; - } - .text-\[11px\] { - font-size: 11px; - } - .text-\[50\%\] { - font-size: 50%; - } .text-\[60\%\] { font-size: 60%; } - .text-\[70\%\] { - font-size: 70%; - } .text-\[75\%\] { font-size: 75%; } @@ -1338,18 +823,12 @@ .text-\[95\%\] { font-size: 95%; } - .text-\[100\%\] { - font-size: 100%; - } .text-\[110\%\] { font-size: 110%; } .text-\[130\%\] { font-size: 130%; } - .text-\[150\%\] { - font-size: 150%; - } .text-\[170\%\] { font-size: 170%; } @@ -1357,30 +836,10 @@ --tw-leading: normal; line-height: normal; } - .leading-none { - --tw-leading: 1; - line-height: 1; - } .leading-relaxed { --tw-leading: var(--leading-relaxed); line-height: var(--leading-relaxed); } - .font-\[50\%\] { - --tw-font-weight: 50%; - font-weight: 50%; - } - .font-\[80\%\] { - --tw-font-weight: 80%; - font-weight: 80%; - } - .font-\[85\%\] { - --tw-font-weight: 85%; - font-weight: 85%; - } - .font-\[150\%\] { - --tw-font-weight: 150%; - font-weight: 150%; - } .font-bold { --tw-font-weight: var(--font-weight-bold); font-weight: var(--font-weight-bold); @@ -1389,10 +848,6 @@ --tw-font-weight: var(--font-weight-normal); font-weight: var(--font-weight-normal); } - .tracking-wider { - --tw-tracking: var(--tracking-wider); - letter-spacing: var(--tracking-wider); - } .wrap-anywhere { overflow-wrap: anywhere; } @@ -1408,111 +863,117 @@ .text-\(--background\) { color: var(--background); } - .text-\(--bg\) { - color: var(--bg); - } - .text-\(--extra\) { - color: var(--extra); - } .text-\(--primary\) { color: var(--primary); } .text-\(--secondary\) { color: var(--secondary); } - .text-\(--text\) { - color: var(--text); + .text-\[\#00ADD7\] { + color: #00ADD7; } .text-\[\#00f1ff\] { color: #00f1ff; } + .text-\[\#5C6CC1\] { + color: #5C6CC1; + } + .text-\[\#8eb0c8\] { + color: #8eb0c8; + } + .text-\[\#9A38F4\] { + color: #9A38F4; + } + .text-\[\#9e55e1\] { + color: #9e55e1; + } .text-\[\#46d46c\] { color: #46d46c; } .text-\[\#54D7A9\] { color: #54D7A9; } + .text-\[\#739ebb\] { + color: #739ebb; + } + .text-\[\#897ccb\] { + color: #897ccb; + } + .text-\[\#5079DB\] { + color: #5079DB; + } + .text-\[\#5487ac\] { + color: #5487ac; + } .text-\[\#5874FF\] { color: #5874FF; } + .text-\[\#5947B4\] { + color: #5947B4; + } + .text-\[\#7847D1\] { + color: #7847D1; + } + .text-\[\#487494\] { + color: #487494; + } + .text-\[\#BDC3C7\] { + color: #BDC3C7; + } + .text-\[\#C7727F\] { + color: #C7727F; + } .text-\[\#D8C44B\] { color: #D8C44B; } + .text-\[\#D27D9B\] { + color: #D27D9B; + } + .text-\[\#DD6718\] { + color: #DD6718; + } + .text-\[\#ED532D\] { + color: #ED532D; + } .text-\[\#F5A670\] { color: #F5A670; } + .text-\[\#F9B010\] { + color: #F9B010; + } .text-\[\#F16265\] { color: #F16265; } - .text-\[\#FF0000\] { - color: #FF0000; + .text-\[\#FF8019\] { + color: #FF8019; } .text-\[\#FFFFFF\] { color: #FFFFFF; } - .text-\[\#\] { - color: #; + .text-\[\#a34eeb\] { + color: #a34eeb; + } + .text-\[\#ad72c7\] { + color: #ad72c7; } - .text-\[\#ffffff\] { - color: #ffffff; + .text-\[\#b56df7\] { + color: #b56df7; } .text-\[\%v\] { color: %v; } - .text-\[--\] { - color: --; - } - .text-\[--accent\] { - color: --accent; - } - .text-\[--extra\] { - color: --extra; - } - .text-\[--secondary\] { - color: --secondary; - } - .text-\[0\.rem\] { - color: 0.rem; - } .text-\[color\:var\(--alt\)\] { color: var(--alt); } .text-\[var\(--accent\)\] { color: var(--accent); } - .text-\[var\(--primary\)\] { - color: var(--primary); - } .text-\[var\(--secondary\)\] { color: var(--secondary); } - .text-emerald-400 { - color: var(--color-emerald-400); - } - .text-red-400 { - color: var(--color-red-400); - } - .text-zinc-200 { - color: var(--color-zinc-200); - } - .text-zinc-300 { - color: var(--color-zinc-300); - } - .text-zinc-400 { - color: var(--color-zinc-400); - } - .text-zinc-500 { - color: var(--color-zinc-500); - } - .uppercase { - text-transform: uppercase; - } .no-underline { text-decoration-line: none; } - .underline { - text-decoration-line: underline; - } .opacity-0 { opacity: 0%; } @@ -1523,39 +984,11 @@ } box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); } - .shadow-\[0_0_1\.5rem_color-mix\(in_srgb\,var\(--primary\)_25\%\,transparent\)\] { - --tw-shadow: 0 0 1.5rem var(--tw-shadow-color, var(--primary)); - @supports (color: color-mix(in lab, red, red)) { - --tw-shadow: 0 0 1.5rem var(--tw-shadow-color, color-mix(in srgb,var(--primary) 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); - } - .shadow-\[0_0_15px_rgba\(0\,0\,0\,0\.3\)\] { - --tw-shadow: 0 0 15px var(--tw-shadow-color, rgba(0,0,0,0.3)); - box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); - } - .outline { - outline-style: var(--tw-outline-style); - outline-width: 1px; - } - .filter { - filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,); - } - .transition-all { - transition-property: all; - transition-timing-function: var(--tw-ease, var(--default-transition-timing-function)); - transition-duration: var(--tw-duration, var(--default-transition-duration)); - } .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)); } - .transition-transform { - transition-property: transform, translate, scale, rotate; - 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; @@ -1564,15 +997,6 @@ -webkit-user-select: text; user-select: text; } - .\[--border-py\:0\.0rem\] { - --border-py: 0.0rem; - } - .\[--border-py\:0\.2rem\] { - --border-py: 0.2rem; - } - .\[--border-py\:0\.3rem\] { - --border-py: 0.3rem; - } .\[--border-py\:0\.5rem\] { --border-py: 0.5rem; } @@ -1585,9 +1009,6 @@ .\[--border-py\:0\.875rem\] { --border-py: 0.875rem; } - .\[--border-py\:0\.rem\] { - --border-py: 0.rem; - } .\[--border-py\:1\.25rem\] { --border-py: 1.25rem; } @@ -1595,9 +1016,6 @@ --ypad: var(--border-py,0.875rem); } @media (hover: hover) { - .group-hover\:text-\[var\(--accent\)\]:is(:where(.group):hover *) { - color: var(--accent); - } .group-hover\:text-\[var\(--alt\)\]:is(:where(.group):hover *) { color: var(--alt); } @@ -1621,18 +1039,6 @@ } } @media (hover: hover) { - .hover\:translate-x-1:hover { - --tw-translate-x: var(--spacing); - translate: var(--tw-translate-x) var(--tw-translate-y); - } - .hover\:border-white\/20:hover { - border-color: color-mix(in srgb, #fff 20%, transparent); - } - @supports (color: color-mix(in lab, red, red)) { - .hover\:border-white\/20:hover { - border-color: color-mix(in oklab, var(--color-white) 20%, transparent); - } - } .hover\:bg-\(--alt\)\/25:hover { background-color: var(--alt); } @@ -1649,54 +1055,6 @@ background-color: color-mix(in oklab, var(--secondary) 15%, transparent); } } - .hover\:bg-black\/0:hover { - background-color: color-mix(in srgb, #000 0%, transparent); - } - @supports (color: color-mix(in lab, red, red)) { - .hover\:bg-black\/0:hover { - background-color: color-mix(in oklab, var(--color-black) 0%, transparent); - } - } - .hover\:bg-black\/20:hover { - background-color: color-mix(in srgb, #000 20%, transparent); - } - @supports (color: color-mix(in lab, red, red)) { - .hover\:bg-black\/20:hover { - background-color: color-mix(in oklab, var(--color-black) 20%, transparent); - } - } - .hover\:bg-black\/50:hover { - background-color: color-mix(in srgb, #000 50%, transparent); - } - @supports (color: color-mix(in lab, red, red)) { - .hover\:bg-black\/50:hover { - background-color: color-mix(in oklab, var(--color-black) 50%, transparent); - } - } - .hover\:bg-white\/0:hover { - background-color: color-mix(in srgb, #fff 0%, transparent); - } - @supports (color: color-mix(in lab, red, red)) { - .hover\:bg-white\/0:hover { - background-color: color-mix(in oklab, var(--color-white) 0%, transparent); - } - } - .hover\:bg-white\/1:hover { - background-color: color-mix(in srgb, #fff 1%, transparent); - } - @supports (color: color-mix(in lab, red, red)) { - .hover\:bg-white\/1:hover { - background-color: color-mix(in oklab, var(--color-white) 1%, transparent); - } - } - .hover\:bg-white\/2:hover { - background-color: color-mix(in srgb, #fff 2%, transparent); - } - @supports (color: color-mix(in lab, red, red)) { - .hover\:bg-white\/2:hover { - background-color: color-mix(in oklab, var(--color-white) 2%, transparent); - } - } .hover\:bg-white\/5:hover { background-color: color-mix(in srgb, #fff 5%, transparent); } @@ -1705,78 +1063,24 @@ 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\:bg-white\/20:hover { - background-color: color-mix(in srgb, #fff 20%, transparent); - } - @supports (color: color-mix(in lab, red, red)) { - .hover\:bg-white\/20:hover { - background-color: color-mix(in oklab, var(--color-white) 20%, transparent); - } - } - .hover\:bg-white\/50:hover { - background-color: color-mix(in srgb, #fff 50%, transparent); - } - @supports (color: color-mix(in lab, red, red)) { - .hover\:bg-white\/50:hover { - background-color: color-mix(in oklab, var(--color-white) 50%, transparent); - } - } - .hover\:bg-white\/\[0\.04\]:hover { - background-color: color-mix(in srgb, #fff 4%, transparent); - } - @supports (color: color-mix(in lab, red, red)) { - .hover\:bg-white\/\[0\.04\]:hover { - background-color: color-mix(in oklab, var(--color-white) 4%, transparent); - } - } - .hover\:bg-white\/\[0\.05\]:hover { - background-color: color-mix(in srgb, #fff 5%, transparent); - } - @supports (color: color-mix(in lab, red, red)) { - .hover\:bg-white\/\[0\.05\]:hover { - background-color: color-mix(in oklab, var(--color-white) 5%, transparent); - } - } .hover\:text-\(--accent\):hover { color: var(--accent); } .hover\:text-\[var\(--alt\)\]:hover { color: var(--alt); } - .hover\:text-\[var\(--primary\)\]:hover { - color: var(--primary); - } .hover\:text-\[var\(--secondary\)\]:hover { color: var(--secondary); } .hover\:text-gray-700:hover { color: var(--color-gray-700); } - .hover\:text-white:hover { - color: var(--color-white); - } .hover\:no-underline:hover { text-decoration-line: none; } .hover\:underline:hover { text-decoration-line: underline; } - .hover\:brightness-100:hover { - --tw-brightness: brightness(100%); - filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,); - } - .hover\:brightness-200:hover { - --tw-brightness: brightness(200%); - filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,); - } } .data-copied\:animate-\[bump_0\.25s\][data-copied] { animation: bump 0.25s; @@ -1944,29 +1248,9 @@ } } @media (width >= 48rem) { - .md\:col-span-2 { - grid-column: span 2 / span 2; - } - .md\:col-span-3 { - grid-column: span 3 / span 3; - } .md\:grid-cols-1 { grid-template-columns: repeat(1, minmax(0, 1fr)); } - .md\:grid-cols-6 { - grid-template-columns: repeat(6, minmax(0, 1fr)); - } - .md\:flex-row { - flex-direction: row; - } - .md\:items-center { - align-items: center; - } - } - @media (width >= 64rem) { - .lg\:flex { - display: flex; - } } .\[\&\:\:-webkit-scrollbar\]\:hidden::-webkit-scrollbar { display: none; @@ -2028,11 +1312,6 @@ inherits: false; initial-value: 0; } -@property --tw-divide-y-reverse { - syntax: "*"; - inherits: false; - initial-value: 0; -} @property --tw-border-style { syntax: "*"; inherits: false; @@ -2046,10 +1325,6 @@ syntax: "*"; inherits: false; } -@property --tw-tracking { - syntax: "*"; - inherits: false; -} @property --tw-shadow { syntax: "*"; inherits: false; @@ -2115,64 +1390,6 @@ inherits: false; initial-value: 0 0 #0000; } -@property --tw-outline-style { - syntax: "*"; - inherits: false; - initial-value: solid; -} -@property --tw-blur { - syntax: "*"; - inherits: false; -} -@property --tw-brightness { - syntax: "*"; - inherits: false; -} -@property --tw-contrast { - syntax: "*"; - inherits: false; -} -@property --tw-grayscale { - syntax: "*"; - inherits: false; -} -@property --tw-hue-rotate { - syntax: "*"; - inherits: false; -} -@property --tw-invert { - syntax: "*"; - inherits: false; -} -@property --tw-opacity { - syntax: "*"; - inherits: false; -} -@property --tw-saturate { - syntax: "*"; - inherits: false; -} -@property --tw-sepia { - syntax: "*"; - inherits: false; -} -@property --tw-drop-shadow { - syntax: "*"; - inherits: false; -} -@property --tw-drop-shadow-color { - syntax: "*"; - inherits: false; -} -@property --tw-drop-shadow-alpha { - syntax: ""; - inherits: false; - initial-value: 100%; -} -@property --tw-drop-shadow-size { - syntax: "*"; - inherits: false; -} @property --tw-duration { syntax: "*"; inherits: false; @@ -2194,11 +1411,9 @@ --tw-skew-x: initial; --tw-skew-y: initial; --tw-space-x-reverse: 0; - --tw-divide-y-reverse: 0; --tw-border-style: solid; --tw-leading: initial; --tw-font-weight: initial; - --tw-tracking: initial; --tw-shadow: 0 0 #0000; --tw-shadow-color: initial; --tw-shadow-alpha: 100%; @@ -2213,20 +1428,6 @@ --tw-ring-offset-width: 0px; --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; - --tw-outline-style: solid; - --tw-blur: initial; - --tw-brightness: initial; - --tw-contrast: initial; - --tw-grayscale: initial; - --tw-hue-rotate: initial; - --tw-invert: initial; - --tw-opacity: initial; - --tw-saturate: initial; - --tw-sepia: initial; - --tw-drop-shadow: initial; - --tw-drop-shadow-color: initial; - --tw-drop-shadow-alpha: 100%; - --tw-drop-shadow-size: initial; --tw-duration: initial; } } diff --git a/website.go b/website.go index 03b598a..d64eab5 100644 --- a/website.go +++ b/website.go @@ -264,53 +264,117 @@ func latestBlog(blogs []Blog) *Blog { return &blogs[0] } -// type Project struct { -// Name string -// Type string -// Desc []string -// Cmd string -// Link string -// } -// -// var projects = []Project{ -// { -// Name: "CPU vs AI", -// Type: "Game (made with Zig)", -// Desc: []string{ -// "A tower defense game where an AI chip on your motherboard", -// "generates bugs! Place CPUs to destroy the bugs!", -// "Don't let them corrupt your RAM!", -// }, -// }, -// { -// Name: "Eko", -// Type: "Social Media Platform", -// Desc: []string{ -// "A terminal-native alternative", -// "to Discord for Terminal", -// "nerds!", -// }, -// }, -// { -// Name: "Trident", -// Type: "IntelliJ Plugin", -// Desc: []string{ -// "A blazingly fast way to", -// "Navigate to your mosta used", -// "files. Minimize keystrokes", -// "and maximize productivity!", -// }, -// }, -// { -// Name: "Dotfiles", -// Type: "Configuration", -// Desc: []string{ -// "My Linux configuration,", -// "includes Neovim, tmux and", -// "other programs.", -// }, -// }, -// } +var projects = []Project{ + { + Slug: "krypton", + Title: "Krypton", + Category: "Programming Language Compiler", + Desc: "A modern Minecraft creator event. As a developer, I helped with minor improvements to the cosmetics system. ", + Icon: IconCpu("text-[#F5A670] self-center"), + // Icon: IconKrypton(), + Tags: []ProjectTag{ + // {"Programming Language", Color("--extra")}, + // {"Compiler", Color("--extra")}, + {"C", Color("text-[#5C6CC1]")}, + {"LLVM", Color("text-[#FFFFFF]")}, + // {"Java", Color("#F5A670")}, + }, + Links: []ProjectLink{ + {IconGit("text-[#F5A670]"), "Git", "https://"}, + {IconGithub("text-(--secondary)"), "GitHub", "https://github.com/kyren223/"}, + }, + }, + + { + Slug: "cpu-vs-ai", + Title: "CPU vs AI", + Category: "Video Game", + Desc: "A tower defense game where an AI chip on your motherboard " + + "generates bugs! Place CPUs to destroy the bugs! " + + "Don't let them corrupt your RAM!", + Icon: IconCpu("text-[#F16265]"), + Tags: []ProjectTag{ + {"Zig", Color("text-[#D8C44B]")}, + }, + Links: []ProjectLink{ + {IconGit("text-[#F5A670]"), "Git", "https://git.kyren.codes/kyren/cpu-vs-ai.git"}, + {IconGithub("text-(--secondary)"), "GitHub", "https://github.com/the-memory-managers/cpu-vs-ai"}, + {IconVideo("text-[#F16265]"), "Showcase", "https://www.youtube.com/watch?v=_clLDGNlef0"}, + }, + }, + + { + Slug: "eko", + Title: "Eko", + Category: "Social Media Platform", + Desc: "A terminal-native alternative to Discord for Terminal nerds!", + Icon: IconEko("text-[#D27D9B]"), + Tags: []ProjectTag{ + {"Golang", Color("text-[#00ADD7]")}, + {"Sqlite", Color("text-[#BDC3C7]")}, + {"Bubbletea", Color("text-[#C7727F]")}, + {"Prometheus", Color("text-[#ED532D]")}, + {"Grafana", Color("text-[#F9B010]")}, + }, + Links: []ProjectLink{ + {IconGit("text-[#F5A670]"), "Git", "https://git.kyren.codes/kyren/eko.git"}, + {IconGithub("text-(--secondary)"), "GitHub", "https://github.com/kyren223/eko"}, + }, + }, + + { + Slug: "trident", + Title: "Trident", + Category: "IntelliJ Plugin", + Desc: "A blazingly fast way to navigate to your most used files. Minimize keystrokes and maximize productivity!", + Icon: IconTrident("text-[#739ebb]"), + Tags: []ProjectTag{ + // {"Kotlin", Color("text-[#897ccb]")}, + {"Kotlin", Color("text-[#a34eeb]")}, + {"JetBrains Plugin SDK", Color("text-[#FF8019]")}, + }, + Links: []ProjectLink{ + {IconGit("text-[#F5A670]"), "Git", "https://git.kyren.codes/kyren/trident.git"}, + {IconGithub("text-(--secondary)"), "GitHub", "https://github.com/kyren223/trident"}, + {IconJetbrains("text-[#FF8019]"), "JetBrains Marketplace", "https://plugins.jetbrains.com/plugin/23818-trident"}, + }, + }, + + { + Slug: "dotfiles", + Title: "Dotfiles", + Category: "Configuration", + Desc: "My Linux configuration, includes Neovim, tmux and other programs.", + Icon: IconDotfiles("text-[#5874FF]"), + Tags: []ProjectTag{ + {"Neovim", Color("text-[#46d46c]")}, + {"Scripts", Color("text-[#D8C44B]")}, + {"Git", Color("text-[#F5A670]")}, + }, + Links: []ProjectLink{ + {IconGit("text-[#F5A670]"), "Git", "https://git.kyren.codes/kyren/dotfiles.git/"}, + {IconGithub("text-(--secondary)"), "GitHub", "https://github.com/kyren223/dotfiles"}, + }, + }, +} + +var flagship FlagshipInfo = FlagshipInfo{ + Version: "Sprout.0 2026-08-13", + Downloads: []Download{ + {"linux-amd64", "https://foobar", "23 MB"}, + // {"linux-arm64", "https://foobar", "52 MB"}, + // {"macos-arm64", "https://fooshit", "47 MB"}, + {"windows-amd64", "https://fooshit", "65.7 MB"}, + }, + // Stats: []Stat{{"lines of code", "18.7k"}}, + Snippet: ` +io :: import "core/io"; + +main :: proc() { + io.printf("Hello, %s", "world"); +} +`, +} func styleHandler(cookie string, lookup func(string) (map[string]string, bool)) http.HandlerFunc { return func(w http.ResponseWriter, r *http.Request) { @@ -482,12 +546,11 @@ func main() { HomePage(currentStyle(r), latestBlog(getBlogs())).Render(r.Context(), w) }) - mux.HandleFunc("GET /skills", func(w http.ResponseWriter, r *http.Request) { - SkillsPage(currentStyle(r)).Render(r.Context(), w) + mux.HandleFunc("GET /info", func(w http.ResponseWriter, r *http.Request) { + InfoPage(currentStyle(r)).Render(r.Context(), w) }) mux.HandleFunc("GET /projects", func(w http.ResponseWriter, r *http.Request) { - projects := []Project{p, p, p, p, p, p, p, p} ProjectsPage(currentStyle(r), projects, 2).Render(r.Context(), w) }) diff --git a/website.templ b/website.templ index bec1453..53992f7 100644 --- a/website.templ +++ b/website.templ @@ -1,7 +1,5 @@ package main -import "flag" - templ HeadComponent(title string, description string) { @@ -142,7 +140,7 @@ templ Nav(path string) { { path } @NavLink("/", "home") - for _, dir := range []string{"skills", "projects", "blogs"} { + for _, dir := range []string{"projects", "info", "blogs"} { @NavLink("/"+dir, dir) } @NavLink("/shell", "shell") @@ -250,8 +248,8 @@ func footerClass(connected bool) string { return style } -templ SkillsPage(style Style) { - @TerminalLayout(style, "/home/kyren/skills.md") { +templ InfoPage(style Style) { + @TerminalLayout(style, "/home/kyren/info.md") { @TerminalStack(false, "") { @TerminalBorder("Info", "", "") { @@ -264,15 +262,13 @@ templ SkillsPage(style Style) { } type Project struct { - Slug string // e.g. "my-game" - Title string // e.g. "MyGame" - Category string // e.g. "Game written in Zig" - Desc string // 1-2 line description/pitch - Tags []ProjectTag // ["Zig", "OpenGL", "Linux"] - Status string - Icon templ.Component - CgitURL string // e.g. "https://cgit.yourdomain.com/my-game" - GithubURL string // Fallback mirror link + Slug string + Title string + Category string + Desc string + Icon templ.Component + Tags []ProjectTag + Links []ProjectLink } type ProjectTag struct { @@ -281,8 +277,9 @@ type ProjectTag struct { } type ProjectLink struct { - URL string - Icon templ.Component + Icon templ.Component + Label string + URL string } type FlagshipInfo struct { @@ -303,43 +300,6 @@ type Stat struct { Value string } -var p Project = Project{ - Slug: "krypton", - Title: "Krypton", - Category: "Programming Language Compiler", - Desc: "A modern Minecraft creator event. As a developer, I helped with minor improvements to the cosmetics system. ", - Icon: IconCpu("text-[#F5A670] self-center"), - // Icon: IconKrypton(), - Status: "ON", - Tags: []ProjectTag{ - // {"Programming Language", Color("--extra")}, - // {"Compiler", Color("--extra")}, - {"C", Color("text-[#5874FF]")}, - {"LLVM", Color("text-[#FFFFFF]")}, - // {"Java", Color("#F5A670")}, - }, - CgitURL: "https://whatever", - GithubURL: "", -} - -var flagship FlagshipInfo = FlagshipInfo{ - Version: "Sprout.0 2026-08-13", - Downloads: []Download{ - {"linux-amd64", "https://foobar", "23 MB"}, - // {"linux-arm64", "https://foobar", "52 MB"}, - // {"macos-arm64", "https://fooshit", "47 MB"}, - {"windows-amd64", "https://fooshit", "65.7 MB"}, - }, - // Stats: []Stat{{"lines of code", "18.7k"}}, - Snippet: ` -io :: import "core/io"; - -main :: proc() { - io.printf("Hello, %s", "world"); -} -`, -} - var versionBeforeDownloads = false const flagshipClasses = "[--border-py:1.25rem] border-(--accent)! bg-white/[0.03] shadow-[0_0_1.5rem_color-mix(in_srgb,var(--accent)_25%,transparent)]" @@ -356,14 +316,10 @@ templ FlagshipProject(project Project, extra string) { { tag.Name } } - @IconLink("https://git.example.com/foo", "git", "") { - @IconGit("text-(--primary)") - } - @IconLink("https://github.com/foo", "github", "") { - @IconGithub("text-(--secondary)") - } - @IconLink("https://example.com", "website", "") { - @IconExternal("text-(--accent)") + for _, link := range project.Links { + @IconLink(link.URL, link.Label, "") { + @link.Icon + } } @@ -431,271 +387,6 @@ templ IconArchive(color string) { } } -const flagshipClassesV4 = "[--border-py:1.25rem] border-(--accent)! bg-white/[0.03] shadow-[0_0_1.5rem_color-mix(in_srgb,var(--accent)_25%,transparent)]" - -templ FlagshipProjectV4(project Project, extra string) { - @TerminalBorder("", "", flagshipClasses+" "+extra) { -
-
-
- @project.Icon - { project.Title } - { project.Category } - for _, tag := range project.Tags { - { tag.Name } - } - - @IconLink("https://git.example.com/foo", "git", "") { - @IconGit("text-(--primary)") - } - @IconLink("https://github.com/foo", "github", "") { - @IconGithub("text-(--secondary)") - } - @IconLink("https://example.com", "website", "") { - @IconExternal("text-(--accent)") - } - -
-

{ project.Desc }

- if len(project.Downloads) > 0 || project.Version != "" { -
- for _, d := range project.Downloads { - @DownloadButton(d) - } - if project.Version != "" { - { project.Version } - } -
- } - if len(project.Stats) > 0 { -
- for _, stat := range project.Stats { - - { stat.Value } - { stat.Label } - - } -
- } -
- if project.Snippet != "" { -
- example - @CopyPre(project.Snippet, "text-[80%] leading-[normal]") { - { project.Snippet } - } -
- } -
- } -} - -templ DownloadButtonV4(d Download) { - - @IconDownload("text-(--primary)") - { d.Label } - -} - -templ IconDownload(color string) { - @Icon(color) { - - - - } -} - -const flagshipClassesV3 = "[--border-py:1.25rem] border-(--primary)! bg-white/[0.03] shadow-[0_0_1.5rem_color-mix(in_srgb,var(--primary)_25%,transparent)]" - -templ FlagshipProjectV3(project Project, extra string) { - @TerminalBorder("", "", flagshipClasses+" "+extra) { -
-
-
- @project.Icon - { project.Title } - { project.Version } - { project.Category } - for _, tag := range project.Tags { - { tag.Name } - } - - @IconLink("https://git.example.com/foo", "git", "") { - @IconGit("text-(--primary)") - } - @IconLink("https://github.com/foo", "github", "") { - @IconGithub("text-(--secondary)") - } - @IconLink("https://example.com", "website", "") { - @IconExternal("text-(--accent)") - } - -
-

{ project.Desc }

- if project.Install != "" { - @CopyPre(project.Install, "text-[85%] leading-[normal]") { - { "$ " + project.Install } - } - } - if project.Devlog != nil { - - { "latest devlog: " + project.Devlog.Title } - - } -
- if project.Snippet != "" { -
- example - @CopyPre(project.Snippet, "text-[80%] leading-[normal]") { - { project.Snippet } - } -
- } -
- } -} - -templ FlagshipProjectV2(project Project, extra string) { - @TerminalBorder(project.Version, "", flagshipClasses+" "+extra) { -
-
-
- @project.Icon - { project.Title } - { project.Category } - for _, tag := range project.Tags { - { tag.Name } - } - - @IconLink("https://git.example.com/foo", "git", "") { - @IconGit("text-(--primary)") - } - @IconLink("https://github.com/foo", "github", "") { - @IconGithub("text-(--secondary)") - } - @IconLink("https://example.com", "website", "") { - @IconExternal("text-(--accent)") - } - -
-

{ project.Desc }

-
- for i, stage := range project.Pipeline { - if i > 0 { - → - } - { stage } - } -
-
- for _, stat := range project.Stats { -
- { stat.Value } - { stat.Label } -
- } -
-
- if project.Snippet != "" { -
- example - @CopyPre(project.Snippet, "text-[80%] leading-[normal]") { - { project.Snippet } - } -
- } -
- } -} - -templ FlagshipProjectV1(project Project) { -
- -
-
- - FLAGSHIP BUILD - | - { project.Status } -
-
- if project.CgitURL != "" { - [cgit] - } - if project.GithubURL != "" { - [github] - } -
-
- -
-

- { project.Title } -

- { project.Category } -
- -

{ project.Desc }

- -
-
- for _, tag := range project.Tags { - { tag.Name } - } -
- - View Project Details → - -
-
-} - -templ PinnedGrid(projects []Project) { -
-
- // Notable Projects
-
- for i, project := range projects { - -
= 2) } - > -
- -
-

- { project.Title } -

- { project.Category } -
- -

{ project.Desc }

-
- -
-
- for _, tag := range project.Tags { - { tag.Name } - } -
-
- if project.CgitURL != "" { - [cgit] - } - if project.GithubURL != "" { - [gh] - } -
-
-
- } -
-
- -} - templ IconLink(href string, label string, extra string) { { children... } @@ -748,14 +439,10 @@ templ ProjectItem(project Project, extra string) { // { tag } // } - @IconLink("https://git.example.com/foo", "git", "") { - @IconGit("text-(--primary)") - } - @IconLink("https://github.com/foo", "github", "") { - @IconGithub("text-(--secondary)") - } - @IconLink("https://example.com", "website", "") { - @IconExternal("text-(--accent)") + for _, link := range project.Links { + @IconLink(link.URL, link.Label, "") { + @link.Icon + } } @@ -790,7 +477,7 @@ templ ProjectsPage(style Style, projects []Project, pinned int) { } templ NotFoundPage(style Style, path string) { - @TerminalLayout(style, "404") { + @TerminalLayout(style, path) { @TerminalStack(true, "") { @TerminalBorder("Shell", "", "") { @@ -920,18 +607,63 @@ templ IconUptime(color string) { } } +templ IconEko(color string) { + @Icon(color) { + + } +} + +templ IconTrident(color string) { + @Icon(color) { + + + + + } +} + +templ IconDotfiles(color string) { + @Icon(color) { + + } +} + +templ IconVideo(color string) { + @Icon(color) { + // + + } +} + +templ IconJetbrains(color string) { + @Icon(color) { + + + + + + + + + + + + + } +} + func row(icon func(color string) templ.Component, color, label, value string) FetchRow { return FetchRow{Icon: icon(color), Color: color, Label: label, Value: value} } var fetchRows = []FetchRow{ // row(IconTerminal, "text-(--secondary)", "Terminal", "Ghostty & Zsh"), - row(IconCode, "--accent", "Main Language", "C"), - row(IconScriptLang, "--accent", "Scripting Langs", "Go and Python"), - row(IconDebugger, "#F16265", "Debugger", "Raddebugger"), - row(IconMonitor, "#54D7A9", "Operating System", "Fedora KDE Linux"), - row(IconEditor, "#54D7A9", "Text Editor", "Neovim"), - row(IconUptime, "#D8C44B", "Uptime", "Asleep"), + row(IconCode, "text-(--accent)", "Main Language", "C"), + row(IconScriptLang, "text-(--accent)", "Scripting Langs", "Go and Python"), + row(IconDebugger, "text-[#F16265]", "Debugger", "Raddebugger"), + row(IconMonitor, "text-[#54D7A9]", "Operating System", "Fedora KDE Linux"), + row(IconEditor, "text-[#54D7A9]", "Text Editor", "Neovim"), + row(IconUptime, "text-[#D8C44B]", "Uptime", "Asleep"), // row(IconCpu, "--extra", "Hardware", "..."), } @@ -968,7 +700,7 @@ templ Fastfetch(rows []FetchRow) { } templ Icon(color string) { -

") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - var templ_7745c5c3_Var80 string - templ_7745c5c3_Var80, templ_7745c5c3_Err = templ.JoinStringErrs(project.Desc) + var templ_7745c5c3_Var78 string + templ_7745c5c3_Var78, templ_7745c5c3_Err = templ.JoinStringErrs(project.Desc) if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 370, Col: 55} + return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 326, Col: 55} } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var80)) + _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var78)) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } @@ -1756,12 +1674,12 @@ func FlagshipProject(project Project, extra string) templ.Component { if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - var templ_7745c5c3_Var81 string - templ_7745c5c3_Var81, templ_7745c5c3_Err = templ.JoinStringErrs(stat.Value) + var templ_7745c5c3_Var79 string + templ_7745c5c3_Var79, templ_7745c5c3_Err = templ.JoinStringErrs(stat.Value) if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 388, Col: 61} + return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 344, Col: 61} } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var81)) + _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var79)) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } @@ -1769,12 +1687,12 @@ func FlagshipProject(project Project, extra string) templ.Component { if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - var templ_7745c5c3_Var82 string - templ_7745c5c3_Var82, templ_7745c5c3_Err = templ.JoinStringErrs(stat.Label) + var templ_7745c5c3_Var80 string + templ_7745c5c3_Var80, templ_7745c5c3_Err = templ.JoinStringErrs(stat.Label) if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 389, Col: 47} + return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 345, Col: 47} } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var82)) + _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var80)) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } @@ -1797,7 +1715,7 @@ func FlagshipProject(project Project, extra string) templ.Component { if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - templ_7745c5c3_Var83 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) { + templ_7745c5c3_Var81 := 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 { @@ -1809,18 +1727,18 @@ func FlagshipProject(project Project, extra string) templ.Component { }() } ctx = templ.InitializeContext(ctx) - var templ_7745c5c3_Var84 string - templ_7745c5c3_Var84, templ_7745c5c3_Err = templ.JoinStringErrs(flagship.Snippet) + var templ_7745c5c3_Var82 string + templ_7745c5c3_Var82, templ_7745c5c3_Err = templ.JoinStringErrs(flagship.Snippet) if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 399, Col: 24} + return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 355, Col: 24} } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var84)) + _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var82)) 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_Var83), templ_7745c5c3_Buffer) + templ_7745c5c3_Err = CopyPre(flagship.Snippet, "text-[80%] leading-[normal]").Render(templ.WithChildren(ctx, templ_7745c5c3_Var81), templ_7745c5c3_Buffer) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } @@ -1859,9 +1777,9 @@ func VersionTag(project Project) templ.Component { }() } ctx = templ.InitializeContext(ctx) - templ_7745c5c3_Var85 := templ.GetChildren(ctx) - if templ_7745c5c3_Var85 == nil { - templ_7745c5c3_Var85 = templ.NopComponent + templ_7745c5c3_Var83 := templ.GetChildren(ctx) + if templ_7745c5c3_Var83 == nil { + templ_7745c5c3_Var83 = templ.NopComponent } ctx = templ.ClearChildren(ctx) if flagship.Version != "" { @@ -1869,12 +1787,12 @@ func VersionTag(project Project) templ.Component { if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - var templ_7745c5c3_Var86 string - templ_7745c5c3_Var86, templ_7745c5c3_Err = templ.JoinStringErrs(flagship.Version) + var templ_7745c5c3_Var84 string + templ_7745c5c3_Var84, templ_7745c5c3_Err = templ.JoinStringErrs(flagship.Version) if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 410, Col: 50} + return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 366, Col: 50} } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var86)) + _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var84)) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } @@ -1903,21 +1821,21 @@ func DownloadButton(d Download) templ.Component { }() } ctx = templ.InitializeContext(ctx) - templ_7745c5c3_Var87 := templ.GetChildren(ctx) - if templ_7745c5c3_Var87 == nil { - templ_7745c5c3_Var87 = templ.NopComponent + templ_7745c5c3_Var85 := templ.GetChildren(ctx) + if templ_7745c5c3_Var85 == nil { + templ_7745c5c3_Var85 = templ.NopComponent } ctx = templ.ClearChildren(ctx) templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 99, "") + if templ_7745c5c3_Err != nil { + return templ_7745c5c3_Err + } + templ_7745c5c3_Err = templ_7745c5c3_Var91.Render(ctx, templ_7745c5c3_Buffer) + if templ_7745c5c3_Err != nil { + return templ_7745c5c3_Err + } + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 112, "") + if templ_7745c5c3_Err != nil { + return templ_7745c5c3_Err + } + return nil + }) +} -func FlagshipProjectV4(project Project, extra string) templ.Component { +func IconGit(color string) 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 { @@ -2038,12 +2048,12 @@ func FlagshipProjectV4(project Project, 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_Var97 := templ.GetChildren(ctx) + if templ_7745c5c3_Var97 == nil { + templ_7745c5c3_Var97 = templ.NopComponent } ctx = templ.ClearChildren(ctx) - templ_7745c5c3_Var94 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) { + templ_7745c5c3_Var98 := 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 { @@ -2055,1666 +2065,107 @@ func FlagshipProjectV4(project Project, extra string) templ.Component { }() } ctx = templ.InitializeContext(ctx) - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 107, "

") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = project.Icon.Render(ctx, templ_7745c5c3_Buffer) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 108, "") + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 113, " ") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - var templ_7745c5c3_Var96 string - templ_7745c5c3_Var96, templ_7745c5c3_Err = templ.JoinStringErrs(project.Title) - if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 442, Col: 137} - } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var96)) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err + return nil + }) + templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var98), templ_7745c5c3_Buffer) + if templ_7745c5c3_Err != nil { + return templ_7745c5c3_Err + } + return nil + }) +} + +func IconGithub(color string) 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_Var99 := templ.GetChildren(ctx) + if templ_7745c5c3_Var99 == nil { + templ_7745c5c3_Var99 = templ.NopComponent + } + ctx = templ.ClearChildren(ctx) + templ_7745c5c3_Var100 := 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 + } + }() } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 110, " ") + ctx = templ.InitializeContext(ctx) + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 114, " ") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - var templ_7745c5c3_Var97 string - templ_7745c5c3_Var97, templ_7745c5c3_Err = templ.JoinStringErrs(project.Category) - if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 443, Col: 65} + return nil + }) + templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var100), templ_7745c5c3_Buffer) + if templ_7745c5c3_Err != nil { + return templ_7745c5c3_Err + } + return nil + }) +} + +func IconExternal(color string) 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_Var101 := templ.GetChildren(ctx) + if templ_7745c5c3_Var101 == nil { + templ_7745c5c3_Var101 = templ.NopComponent + } + ctx = templ.ClearChildren(ctx) + templ_7745c5c3_Var102 := 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 + } + }() } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var97)) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 111, " ") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - for _, tag := range project.Tags { - var templ_7745c5c3_Var98 = []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_Var98...) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 112, "") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - var templ_7745c5c3_Var100 string - templ_7745c5c3_Var100, templ_7745c5c3_Err = templ.JoinStringErrs(tag.Name) - if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 445, Col: 136} - } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var100)) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 114, " ") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 115, "") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - 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 { - 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 = IconGit("text-(--primary)").Render(ctx, templ_7745c5c3_Buffer) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - return nil - }) - templ_7745c5c3_Err = IconLink("https://git.example.com/foo", "git", "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var101), templ_7745c5c3_Buffer) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Var102 := 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 = IconGithub("text-(--secondary)").Render(ctx, templ_7745c5c3_Buffer) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - return nil - }) - templ_7745c5c3_Err = IconLink("https://github.com/foo", "github", "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var102), templ_7745c5c3_Buffer) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - 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 { - 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 = IconExternal("text-(--accent)").Render(ctx, templ_7745c5c3_Buffer) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - return nil - }) - templ_7745c5c3_Err = IconLink("https://example.com", "website", "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var103), templ_7745c5c3_Buffer) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 116, "

") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - var templ_7745c5c3_Var104 string - templ_7745c5c3_Var104, templ_7745c5c3_Err = templ.JoinStringErrs(project.Desc) - if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 459, Col: 55} - } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var104)) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 117, "

") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - if len(project.Downloads) > 0 || project.Version != "" { - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 118, "
") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - for _, d := range project.Downloads { - templ_7745c5c3_Err = DownloadButton(d).Render(ctx, templ_7745c5c3_Buffer) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - } - if project.Version != "" { - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 119, "") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - var templ_7745c5c3_Var105 string - templ_7745c5c3_Var105, templ_7745c5c3_Err = templ.JoinStringErrs(project.Version) - if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 466, Col: 62} - } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var105)) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 120, "") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 121, "
") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - } - if len(project.Stats) > 0 { - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 122, "
") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - for _, stat := range project.Stats { - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 123, "") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - var templ_7745c5c3_Var106 string - templ_7745c5c3_Var106, templ_7745c5c3_Err = templ.JoinStringErrs(stat.Value) - if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 474, Col: 61} - } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var106)) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 124, " ") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - var templ_7745c5c3_Var107 string - templ_7745c5c3_Var107, templ_7745c5c3_Err = templ.JoinStringErrs(stat.Label) - if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 475, Col: 47} - } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var107)) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 125, "") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 126, "
") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 127, "
") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - if project.Snippet != "" { - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 128, "
example") - 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_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) - var templ_7745c5c3_Var109 string - templ_7745c5c3_Var109, templ_7745c5c3_Err = templ.JoinStringErrs(project.Snippet) - if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 485, Col: 23} - } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var109)) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - return nil - }) - templ_7745c5c3_Err = CopyPre(project.Snippet, "text-[80%] leading-[normal]").Render(templ.WithChildren(ctx, templ_7745c5c3_Var108), templ_7745c5c3_Buffer) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 129, "
") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 130, "
") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - return nil - }) - templ_7745c5c3_Err = TerminalBorder("", "", flagshipClasses+" "+extra).Render(templ.WithChildren(ctx, templ_7745c5c3_Var94), templ_7745c5c3_Buffer) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - return nil - }) -} - -func DownloadButtonV4(d Download) 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_Var110 := templ.GetChildren(ctx) - if templ_7745c5c3_Var110 == nil { - templ_7745c5c3_Var110 = templ.NopComponent - } - ctx = templ.ClearChildren(ctx) - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 131, "") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = IconDownload("text-(--primary)").Render(ctx, templ_7745c5c3_Buffer) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 133, " ") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - var templ_7745c5c3_Var112 string - templ_7745c5c3_Var112, templ_7745c5c3_Err = templ.JoinStringErrs(d.Label) - if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 496, Col: 11} - } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var112)) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 134, "") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - return nil - }) -} - -func IconDownload(color string) 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_Var113 := templ.GetChildren(ctx) - if templ_7745c5c3_Var113 == nil { - templ_7745c5c3_Var113 = templ.NopComponent - } - ctx = templ.ClearChildren(ctx) - 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 { - 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, 135, " ") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - return nil - }) - templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var114), templ_7745c5c3_Buffer) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - return nil - }) -} - -const flagshipClassesV3 = "[--border-py:1.25rem] border-(--primary)! bg-white/[0.03] shadow-[0_0_1.5rem_color-mix(in_srgb,var(--primary)_25%,transparent)]" - -func FlagshipProjectV3(project Project, extra string) 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_Var115 := templ.GetChildren(ctx) - if templ_7745c5c3_Var115 == nil { - templ_7745c5c3_Var115 = templ.NopComponent - } - ctx = templ.ClearChildren(ctx) - templ_7745c5c3_Var116 := 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, 136, "
") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = project.Icon.Render(ctx, templ_7745c5c3_Buffer) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 137, "") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - var templ_7745c5c3_Var118 string - templ_7745c5c3_Var118, templ_7745c5c3_Err = templ.JoinStringErrs(project.Title) - if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 516, Col: 137} - } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var118)) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 139, " ") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - var templ_7745c5c3_Var119 string - templ_7745c5c3_Var119, templ_7745c5c3_Err = templ.JoinStringErrs(project.Version) - if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 517, Col: 129} - } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var119)) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 140, " ") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - var templ_7745c5c3_Var120 string - templ_7745c5c3_Var120, templ_7745c5c3_Err = templ.JoinStringErrs(project.Category) - if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 518, Col: 65} - } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var120)) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 141, " ") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - for _, tag := range project.Tags { - var templ_7745c5c3_Var121 = []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_Var121...) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 142, "") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - var templ_7745c5c3_Var123 string - templ_7745c5c3_Var123, templ_7745c5c3_Err = templ.JoinStringErrs(tag.Name) - if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 520, Col: 136} - } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var123)) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 144, " ") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 145, "") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Var124 := 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 = IconGit("text-(--primary)").Render(ctx, templ_7745c5c3_Buffer) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - return nil - }) - templ_7745c5c3_Err = IconLink("https://git.example.com/foo", "git", "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var124), templ_7745c5c3_Buffer) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Var125 := 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 = IconGithub("text-(--secondary)").Render(ctx, templ_7745c5c3_Buffer) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - return nil - }) - templ_7745c5c3_Err = IconLink("https://github.com/foo", "github", "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var125), templ_7745c5c3_Buffer) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - 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 { - 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 = IconExternal("text-(--accent)").Render(ctx, templ_7745c5c3_Buffer) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - return nil - }) - templ_7745c5c3_Err = IconLink("https://example.com", "website", "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var126), templ_7745c5c3_Buffer) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 146, "

") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - var templ_7745c5c3_Var127 string - templ_7745c5c3_Var127, templ_7745c5c3_Err = templ.JoinStringErrs(project.Desc) - if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 534, Col: 55} - } - _, 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, 147, "

") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - if project.Install != "" { - 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 { - 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) - var templ_7745c5c3_Var129 string - templ_7745c5c3_Var129, templ_7745c5c3_Err = templ.JoinStringErrs("$ " + project.Install) - if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 537, Col: 30} - } - _, 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 = CopyPre(project.Install, "text-[85%] leading-[normal]").Render(templ.WithChildren(ctx, templ_7745c5c3_Var128), templ_7745c5c3_Buffer) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - } - if project.Devlog != nil { - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 148, "") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - var templ_7745c5c3_Var131 string - templ_7745c5c3_Var131, templ_7745c5c3_Err = templ.JoinStringErrs("latest devlog: " + project.Devlog.Title) - if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 542, Col: 48} - } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var131)) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 150, "") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 151, "
") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - if project.Snippet != "" { - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 152, "
example") - 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_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) - var templ_7745c5c3_Var133 string - templ_7745c5c3_Var133, templ_7745c5c3_Err = templ.JoinStringErrs(project.Snippet) - if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 550, Col: 23} - } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var133)) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - return nil - }) - templ_7745c5c3_Err = CopyPre(project.Snippet, "text-[80%] leading-[normal]").Render(templ.WithChildren(ctx, templ_7745c5c3_Var132), templ_7745c5c3_Buffer) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 153, "
") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 154, "
") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - return nil - }) - templ_7745c5c3_Err = TerminalBorder("", "", flagshipClasses+" "+extra).Render(templ.WithChildren(ctx, templ_7745c5c3_Var116), templ_7745c5c3_Buffer) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - return nil - }) -} - -func FlagshipProjectV2(project Project, extra string) 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_Var134 := templ.GetChildren(ctx) - if templ_7745c5c3_Var134 == nil { - templ_7745c5c3_Var134 = templ.NopComponent - } - ctx = templ.ClearChildren(ctx) - templ_7745c5c3_Var135 := 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, 155, "
") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = project.Icon.Render(ctx, templ_7745c5c3_Buffer) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 156, "") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - var templ_7745c5c3_Var137 string - templ_7745c5c3_Var137, templ_7745c5c3_Err = templ.JoinStringErrs(project.Title) - if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 564, Col: 138} - } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var137)) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 158, " ") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - var templ_7745c5c3_Var138 string - templ_7745c5c3_Var138, templ_7745c5c3_Err = templ.JoinStringErrs(project.Category) - if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 565, Col: 67} - } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var138)) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 159, " ") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - for _, tag := range project.Tags { - var templ_7745c5c3_Var139 = []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_Var139...) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 160, "") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - var templ_7745c5c3_Var141 string - templ_7745c5c3_Var141, templ_7745c5c3_Err = templ.JoinStringErrs(tag.Name) - if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 567, Col: 136} - } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var141)) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 162, " ") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 163, "") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - 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 { - 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 = IconGit("text-(--primary)").Render(ctx, templ_7745c5c3_Buffer) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - return nil - }) - templ_7745c5c3_Err = IconLink("https://git.example.com/foo", "git", "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var142), templ_7745c5c3_Buffer) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Var143 := 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 = IconGithub("text-(--secondary)").Render(ctx, templ_7745c5c3_Buffer) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - return nil - }) - templ_7745c5c3_Err = IconLink("https://github.com/foo", "github", "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var143), templ_7745c5c3_Buffer) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - 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 { - 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 = IconExternal("text-(--accent)").Render(ctx, templ_7745c5c3_Buffer) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - return nil - }) - templ_7745c5c3_Err = IconLink("https://example.com", "website", "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var144), templ_7745c5c3_Buffer) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 164, "

") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - var templ_7745c5c3_Var145 string - templ_7745c5c3_Var145, templ_7745c5c3_Err = templ.JoinStringErrs(project.Desc) - if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 581, Col: 55} - } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var145)) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 165, "

") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - for i, stage := range project.Pipeline { - if i > 0 { - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 166, "→") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 167, " ") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - var templ_7745c5c3_Var146 string - templ_7745c5c3_Var146, templ_7745c5c3_Err = templ.JoinStringErrs(stage) - if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 587, Col: 86} - } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var146)) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 168, "") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 169, "
") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - for _, stat := range project.Stats { - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 170, "
") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - var templ_7745c5c3_Var147 string - templ_7745c5c3_Var147, templ_7745c5c3_Err = templ.JoinStringErrs(stat.Value) - if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 593, Col: 72} - } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var147)) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 171, " ") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - var templ_7745c5c3_Var148 string - templ_7745c5c3_Var148, templ_7745c5c3_Err = templ.JoinStringErrs(stat.Label) - if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 594, Col: 57} - } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var148)) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 172, "
") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 173, "
") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - if project.Snippet != "" { - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 174, "
example") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Var149 := 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) - var templ_7745c5c3_Var150 string - templ_7745c5c3_Var150, templ_7745c5c3_Err = templ.JoinStringErrs(project.Snippet) - if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 603, Col: 23} - } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var150)) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - return nil - }) - templ_7745c5c3_Err = CopyPre(project.Snippet, "text-[80%] leading-[normal]").Render(templ.WithChildren(ctx, templ_7745c5c3_Var149), templ_7745c5c3_Buffer) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 175, "
") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 176, "
") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - return nil - }) - templ_7745c5c3_Err = TerminalBorder(project.Version, "", flagshipClasses+" "+extra).Render(templ.WithChildren(ctx, templ_7745c5c3_Var135), templ_7745c5c3_Buffer) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - return nil - }) -} - -func FlagshipProjectV1(project Project) 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_Var151 := templ.GetChildren(ctx) - if templ_7745c5c3_Var151 == nil { - templ_7745c5c3_Var151 = templ.NopComponent - } - ctx = templ.ClearChildren(ctx) - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 177, "
FLAGSHIP BUILD | ") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - var templ_7745c5c3_Var152 string - templ_7745c5c3_Var152, templ_7745c5c3_Err = templ.JoinStringErrs(project.Status) - if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 619, Col: 48} - } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var152)) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 178, "
") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - if project.CgitURL != "" { - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 179, "[cgit] ") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - } - if project.GithubURL != "" { - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 181, "[github]") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 183, "

") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - var templ_7745c5c3_Var156 string - templ_7745c5c3_Var156, templ_7745c5c3_Err = templ.JoinStringErrs(project.Title) - if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 633, Col: 94} - } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var156)) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 185, "

") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - var templ_7745c5c3_Var157 string - templ_7745c5c3_Var157, templ_7745c5c3_Err = templ.JoinStringErrs(project.Category) - if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 635, Col: 67} - } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var157)) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 186, "

") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - var templ_7745c5c3_Var158 string - templ_7745c5c3_Var158, templ_7745c5c3_Err = templ.JoinStringErrs(project.Desc) - if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 638, Col: 80} - } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var158)) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 187, "

") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - for _, tag := range project.Tags { - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 188, "") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - var templ_7745c5c3_Var159 string - templ_7745c5c3_Var159, templ_7745c5c3_Err = templ.JoinStringErrs(tag.Name) - if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 643, Col: 97} - } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var159)) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 189, "") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 190, "
View Project Details →
") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - return nil - }) -} - -func PinnedGrid(projects []Project) 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_Var161 := templ.GetChildren(ctx) - if templ_7745c5c3_Var161 == nil { - templ_7745c5c3_Var161 = templ.NopComponent - } - ctx = templ.ClearChildren(ctx) - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 192, "
") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - for i, project := range projects { - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 193, " ") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - var templ_7745c5c3_Var162 = []any{"group border border-white/10 rounded bg-white/[0.02] hover:bg-white/[0.05] hover:border-white/20 transition-all p-5 flex flex-col justify-between", - templ.KV("md:col-span-3", i < 2), - templ.KV("md:col-span-2", i >= 2)} - templ_7745c5c3_Err = templ.RenderCSSItems(ctx, templ_7745c5c3_Buffer, templ_7745c5c3_Var162...) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 194, "

") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - var templ_7745c5c3_Var165 string - templ_7745c5c3_Var165, templ_7745c5c3_Err = templ.JoinStringErrs(project.Title) - if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 669, Col: 99} - } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var165)) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 197, "

") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - var templ_7745c5c3_Var166 string - templ_7745c5c3_Var166, templ_7745c5c3_Err = templ.JoinStringErrs(project.Category) - if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 671, Col: 81} - } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var166)) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 198, "

") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - var templ_7745c5c3_Var167 string - templ_7745c5c3_Var167, templ_7745c5c3_Err = templ.JoinStringErrs(project.Desc) - if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 674, Col: 88} - } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var167)) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 199, "

") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - for _, tag := range project.Tags { - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 200, "") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - var templ_7745c5c3_Var168 string - templ_7745c5c3_Var168, templ_7745c5c3_Err = templ.JoinStringErrs(tag.Name) - if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 680, Col: 102} - } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var168)) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 201, "") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 202, "
") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - if project.CgitURL != "" { - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 203, "[cgit] ") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - } - if project.GithubURL != "" { - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 205, "[gh]") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 207, "
") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 208, "
") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - return nil - }) -} - -func IconLink(href string, label string, extra string) 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_Var171 := templ.GetChildren(ctx) - if templ_7745c5c3_Var171 == nil { - templ_7745c5c3_Var171 = templ.NopComponent - } - ctx = templ.ClearChildren(ctx) - var templ_7745c5c3_Var172 = []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_Var172...) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 209, "") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templ_7745c5c3_Var171.Render(ctx, templ_7745c5c3_Buffer) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 214, "") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - return nil - }) -} - -func IconGit(color string) 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_Var177 := templ.GetChildren(ctx) - if templ_7745c5c3_Var177 == nil { - templ_7745c5c3_Var177 = templ.NopComponent - } - ctx = templ.ClearChildren(ctx) - templ_7745c5c3_Var178 := 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, 215, " ") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - return nil - }) - templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var178), templ_7745c5c3_Buffer) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - return nil - }) -} - -func IconGithub(color string) 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_Var179 := templ.GetChildren(ctx) - if templ_7745c5c3_Var179 == nil { - templ_7745c5c3_Var179 = templ.NopComponent - } - ctx = templ.ClearChildren(ctx) - templ_7745c5c3_Var180 := 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, 216, " ") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - return nil - }) - templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var180), templ_7745c5c3_Buffer) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - return nil - }) -} - -func IconExternal(color string) 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_Var181 := templ.GetChildren(ctx) - if templ_7745c5c3_Var181 == nil { - templ_7745c5c3_Var181 = templ.NopComponent - } - ctx = templ.ClearChildren(ctx) - templ_7745c5c3_Var182 := 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, 217, " ") + ctx = templ.InitializeContext(ctx) + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 115, " ") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } return nil }) - templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var182), templ_7745c5c3_Buffer) + templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var102), templ_7745c5c3_Buffer) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } @@ -3738,12 +2189,12 @@ func IconKrypton() templ.Component { }() } ctx = templ.InitializeContext(ctx) - templ_7745c5c3_Var183 := templ.GetChildren(ctx) - if templ_7745c5c3_Var183 == nil { - templ_7745c5c3_Var183 = templ.NopComponent + templ_7745c5c3_Var103 := templ.GetChildren(ctx) + if templ_7745c5c3_Var103 == nil { + templ_7745c5c3_Var103 = templ.NopComponent } ctx = templ.ClearChildren(ctx) - templ_7745c5c3_Var184 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) { + templ_7745c5c3_Var104 := 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 { @@ -3755,13 +2206,13 @@ func IconKrypton() templ.Component { }() } ctx = templ.InitializeContext(ctx) - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 218, "") + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 116, "") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } return nil }) - templ_7745c5c3_Err = Icon("text-[#00f1ff]").Render(templ.WithChildren(ctx, templ_7745c5c3_Var184), templ_7745c5c3_Buffer) + templ_7745c5c3_Err = Icon("text-[#00f1ff]").Render(templ.WithChildren(ctx, templ_7745c5c3_Var104), templ_7745c5c3_Buffer) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } @@ -3785,16 +2236,16 @@ func ProjectItem(project Project, extra string) templ.Component { }() } ctx = templ.InitializeContext(ctx) - templ_7745c5c3_Var185 := templ.GetChildren(ctx) - if templ_7745c5c3_Var185 == nil { - templ_7745c5c3_Var185 = templ.NopComponent + templ_7745c5c3_Var105 := templ.GetChildren(ctx) + if templ_7745c5c3_Var105 == nil { + templ_7745c5c3_Var105 = templ.NopComponent } ctx = templ.ClearChildren(ctx) - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 219, "
") + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 117, "
") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - templ_7745c5c3_Var186 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) { + templ_7745c5c3_Var106 := 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 { @@ -3806,7 +2257,7 @@ func ProjectItem(project Project, extra string) templ.Component { }() } ctx = templ.InitializeContext(ctx) - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 220, "
") + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 118, "
") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } @@ -3814,180 +2265,138 @@ 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, 221, "") + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 120, "\" class=\"text-[130%] font-bold text-(--accent)\">") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - var templ_7745c5c3_Var188 string - templ_7745c5c3_Var188, templ_7745c5c3_Err = templ.JoinStringErrs(project.Title) + var templ_7745c5c3_Var108 string + templ_7745c5c3_Var108, templ_7745c5c3_Err = templ.JoinStringErrs(project.Title) if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 742, Col: 121} + return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 433, Col: 121} } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var188)) + _, 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, 223, " ") + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 121, " ") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - var templ_7745c5c3_Var189 string - templ_7745c5c3_Var189, templ_7745c5c3_Err = templ.JoinStringErrs(project.Category) + var templ_7745c5c3_Var109 string + templ_7745c5c3_Var109, templ_7745c5c3_Err = templ.JoinStringErrs(project.Category) if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 743, Col: 65} + return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 434, Col: 65} } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var189)) + _, 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, 224, " ") + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 122, " ") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } for _, tag := range project.Tags { - var templ_7745c5c3_Var190 = []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_Var190...) + var templ_7745c5c3_Var110 = []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_Var110...) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 225, "") + _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var111) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - var templ_7745c5c3_Var192 string - templ_7745c5c3_Var192, templ_7745c5c3_Err = templ.JoinStringErrs(tag.Name) - if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 745, Col: 136} - } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var192)) + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 124, "\">") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 227, "") + var templ_7745c5c3_Var112 string + templ_7745c5c3_Var112, templ_7745c5c3_Err = templ.JoinStringErrs(tag.Name) if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 228, "") - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Var193 := 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 - } - }() + return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 436, Col: 136} } - ctx = templ.InitializeContext(ctx) - templ_7745c5c3_Err = IconGit("text-(--primary)").Render(ctx, templ_7745c5c3_Buffer) + _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var112)) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - return nil - }) - templ_7745c5c3_Err = IconLink("https://git.example.com/foo", "git", "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var193), templ_7745c5c3_Buffer) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err - } - templ_7745c5c3_Var194 := 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 = IconGithub("text-(--secondary)").Render(ctx, templ_7745c5c3_Buffer) + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 125, "") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - return nil - }) - templ_7745c5c3_Err = IconLink("https://github.com/foo", "github", "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var194), templ_7745c5c3_Buffer) + } + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 126, "") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - templ_7745c5c3_Var195 := 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 = IconExternal("text-(--accent)").Render(ctx, templ_7745c5c3_Buffer) + for _, link := range project.Links { + templ_7745c5c3_Var113 := 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 = link.Icon.Render(ctx, templ_7745c5c3_Buffer) + if templ_7745c5c3_Err != nil { + return templ_7745c5c3_Err + } + return nil + }) + templ_7745c5c3_Err = IconLink(link.URL, link.Label, "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var113), templ_7745c5c3_Buffer) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - return nil - }) - templ_7745c5c3_Err = IconLink("https://example.com", "website", "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var195), templ_7745c5c3_Buffer) - if templ_7745c5c3_Err != nil { - return templ_7745c5c3_Err } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 229, "

") + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 127, "

") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - var templ_7745c5c3_Var196 string - templ_7745c5c3_Var196, templ_7745c5c3_Err = templ.JoinStringErrs(project.Desc) + var templ_7745c5c3_Var114 string + templ_7745c5c3_Var114, templ_7745c5c3_Err = templ.JoinStringErrs(project.Desc) if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 762, Col: 40} + return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 449, Col: 40} } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var196)) + _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var114)) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 230, "

") + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 128, "

") 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_Var186), 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_Var106), templ_7745c5c3_Buffer) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 231, "
") + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 129, "
") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } @@ -4016,12 +2425,12 @@ func ProjectsPage(style Style, projects []Project, pinned int) templ.Component { }() } ctx = templ.InitializeContext(ctx) - templ_7745c5c3_Var197 := templ.GetChildren(ctx) - if templ_7745c5c3_Var197 == nil { - templ_7745c5c3_Var197 = templ.NopComponent + templ_7745c5c3_Var115 := templ.GetChildren(ctx) + if templ_7745c5c3_Var115 == nil { + templ_7745c5c3_Var115 = templ.NopComponent } ctx = templ.ClearChildren(ctx) - templ_7745c5c3_Var198 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) { + templ_7745c5c3_Var116 := 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 { @@ -4037,7 +2446,7 @@ func ProjectsPage(style Style, projects []Project, pinned int) templ.Component { if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - templ_7745c5c3_Var199 := 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 { @@ -4049,7 +2458,7 @@ func ProjectsPage(style Style, projects []Project, pinned int) templ.Component { }() } ctx = templ.InitializeContext(ctx) - templ_7745c5c3_Var200 := 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 { @@ -4078,19 +2487,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_Var200), templ_7745c5c3_Buffer) + templ_7745c5c3_Err = TerminalStack(false, "mt-[0.5rem]").Render(templ.WithChildren(ctx, templ_7745c5c3_Var118), templ_7745c5c3_Buffer) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } return nil }) - templ_7745c5c3_Err = ScrollBox("").Render(templ.WithChildren(ctx, templ_7745c5c3_Var199), templ_7745c5c3_Buffer) + templ_7745c5c3_Err = ScrollBox("").Render(templ.WithChildren(ctx, templ_7745c5c3_Var117), 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_Var198), templ_7745c5c3_Buffer) + templ_7745c5c3_Err = TerminalLayout(style, "/home/kyren/projects").Render(templ.WithChildren(ctx, templ_7745c5c3_Var116), templ_7745c5c3_Buffer) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } @@ -4114,12 +2523,12 @@ func NotFoundPage(style Style, path string) templ.Component { }() } ctx = templ.InitializeContext(ctx) - templ_7745c5c3_Var201 := templ.GetChildren(ctx) - if templ_7745c5c3_Var201 == nil { - templ_7745c5c3_Var201 = templ.NopComponent + templ_7745c5c3_Var119 := templ.GetChildren(ctx) + if templ_7745c5c3_Var119 == nil { + templ_7745c5c3_Var119 = templ.NopComponent } ctx = templ.ClearChildren(ctx) - templ_7745c5c3_Var202 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) { + templ_7745c5c3_Var120 := 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 { @@ -4131,7 +2540,7 @@ func NotFoundPage(style Style, path string) templ.Component { }() } ctx = templ.InitializeContext(ctx) - templ_7745c5c3_Var203 := 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 { @@ -4143,7 +2552,7 @@ func NotFoundPage(style Style, path string) templ.Component { }() } ctx = templ.InitializeContext(ctx) - templ_7745c5c3_Var204 := 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 { @@ -4155,43 +2564,43 @@ func NotFoundPage(style Style, path string) templ.Component { }() } ctx = templ.InitializeContext(ctx) - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 232, "

$ cd ~") + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 130, "

$ cd ~") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - var templ_7745c5c3_Var205 string - templ_7745c5c3_Var205, templ_7745c5c3_Err = templ.JoinStringErrs(path) + var templ_7745c5c3_Var123 string + templ_7745c5c3_Var123, templ_7745c5c3_Err = templ.JoinStringErrs(path) if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 797, Col: 20} + return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 484, Col: 20} } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var205)) + _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var123)) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 233, "

\"") + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 131, "

\"") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - var templ_7745c5c3_Var206 string - templ_7745c5c3_Var206, templ_7745c5c3_Err = templ.JoinStringErrs(path[1:]) + var templ_7745c5c3_Var124 string + templ_7745c5c3_Var124, templ_7745c5c3_Err = templ.JoinStringErrs(path[1:]) if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 798, Col: 32} + return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 485, Col: 32} } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var206)) + _, 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, 234, "\": No such file or directory (os error 2)

") + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 132, "\": No such file or directory (os error 2)

") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } return nil }) - templ_7745c5c3_Err = TerminalBorder("Shell", "", "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var204), templ_7745c5c3_Buffer) + templ_7745c5c3_Err = TerminalBorder("Shell", "", "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var122), templ_7745c5c3_Buffer) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - templ_7745c5c3_Var207 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) { + templ_7745c5c3_Var125 := 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 { @@ -4203,24 +2612,24 @@ func NotFoundPage(style Style, path string) templ.Component { }() } ctx = templ.InitializeContext(ctx) - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 235, "
") + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 133, "
") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - var templ_7745c5c3_Var208 string - templ_7745c5c3_Var208, templ_7745c5c3_Err = templ.JoinStringErrs(">") + var templ_7745c5c3_Var126 string + templ_7745c5c3_Var126, templ_7745c5c3_Err = templ.JoinStringErrs(">") if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 804, Col: 17} + return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 491, Col: 17} } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var208)) + _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var126)) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 236, " ") + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 134, " ") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - templ_7745c5c3_Var209 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) { + templ_7745c5c3_Var127 := 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 { @@ -4232,39 +2641,39 @@ func NotFoundPage(style Style, path string) templ.Component { }() } ctx = templ.InitializeContext(ctx) - var templ_7745c5c3_Var210 string - templ_7745c5c3_Var210, templ_7745c5c3_Err = templ.JoinStringErrs("cd -") + var templ_7745c5c3_Var128 string + templ_7745c5c3_Var128, templ_7745c5c3_Err = templ.JoinStringErrs("cd -") if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 807, Col: 16} + return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 494, Col: 16} } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var210)) + _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var128)) 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_Var209), templ_7745c5c3_Buffer) + templ_7745c5c3_Err = Link("javascript:history.back()", false).Render(templ.WithChildren(ctx, templ_7745c5c3_Var127), templ_7745c5c3_Buffer) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 237, " # Previous page
") + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 135, " # Previous page
") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - var templ_7745c5c3_Var211 string - templ_7745c5c3_Var211, templ_7745c5c3_Err = templ.JoinStringErrs(">") + var templ_7745c5c3_Var129 string + templ_7745c5c3_Var129, templ_7745c5c3_Err = templ.JoinStringErrs(">") if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 815, Col: 17} + return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 502, Col: 17} } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var211)) + _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var129)) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 238, " ") + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 136, " ") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - templ_7745c5c3_Var212 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) { + templ_7745c5c3_Var130 := 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 { @@ -4276,40 +2685,40 @@ func NotFoundPage(style Style, path string) templ.Component { }() } ctx = templ.InitializeContext(ctx) - var templ_7745c5c3_Var213 string - templ_7745c5c3_Var213, templ_7745c5c3_Err = templ.JoinStringErrs("cd $HOME") + var templ_7745c5c3_Var131 string + templ_7745c5c3_Var131, templ_7745c5c3_Err = templ.JoinStringErrs("cd $HOME") if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 818, Col: 20} + return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 505, Col: 20} } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var213)) + _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var131)) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } return nil }) - templ_7745c5c3_Err = Link("/", false).Render(templ.WithChildren(ctx, templ_7745c5c3_Var212), templ_7745c5c3_Buffer) + templ_7745c5c3_Err = Link("/", false).Render(templ.WithChildren(ctx, templ_7745c5c3_Var130), templ_7745c5c3_Buffer) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 239, "
") + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 137, "
") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } return nil }) - templ_7745c5c3_Err = TerminalBorder("", "", "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var207), templ_7745c5c3_Buffer) + templ_7745c5c3_Err = TerminalBorder("", "", "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var125), 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_Var203), templ_7745c5c3_Buffer) + templ_7745c5c3_Err = TerminalStack(true, "").Render(templ.WithChildren(ctx, templ_7745c5c3_Var121), templ_7745c5c3_Buffer) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } return nil }) - templ_7745c5c3_Err = TerminalLayout(style, "404").Render(templ.WithChildren(ctx, templ_7745c5c3_Var202), templ_7745c5c3_Buffer) + templ_7745c5c3_Err = TerminalLayout(style, path).Render(templ.WithChildren(ctx, templ_7745c5c3_Var120), templ_7745c5c3_Buffer) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } @@ -4333,38 +2742,38 @@ func ScrollBox(extra string) templ.Component { }() } ctx = templ.InitializeContext(ctx) - templ_7745c5c3_Var214 := templ.GetChildren(ctx) - if templ_7745c5c3_Var214 == nil { - templ_7745c5c3_Var214 = templ.NopComponent + templ_7745c5c3_Var132 := templ.GetChildren(ctx) + if templ_7745c5c3_Var132 == nil { + templ_7745c5c3_Var132 = templ.NopComponent } ctx = templ.ClearChildren(ctx) - var templ_7745c5c3_Var215 = []any{"flex flex-1 min-h-0", extra} - templ_7745c5c3_Err = templ.RenderCSSItems(ctx, templ_7745c5c3_Buffer, templ_7745c5c3_Var215...) + var templ_7745c5c3_Var133 = []any{"flex flex-1 min-h-0", extra} + templ_7745c5c3_Err = templ.RenderCSSItems(ctx, templ_7745c5c3_Buffer, templ_7745c5c3_Var133...) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 240, "
") + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 139, "\">
") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - templ_7745c5c3_Err = templ_7745c5c3_Var214.Render(ctx, templ_7745c5c3_Buffer) + templ_7745c5c3_Err = templ_7745c5c3_Var132.Render(ctx, templ_7745c5c3_Buffer) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 242, "
") + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 140, "
") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } @@ -4388,12 +2797,12 @@ func BlogsPage(style Style, blogs []Blog) templ.Component { }() } ctx = templ.InitializeContext(ctx) - templ_7745c5c3_Var217 := templ.GetChildren(ctx) - if templ_7745c5c3_Var217 == nil { - templ_7745c5c3_Var217 = templ.NopComponent + templ_7745c5c3_Var135 := templ.GetChildren(ctx) + if templ_7745c5c3_Var135 == nil { + templ_7745c5c3_Var135 = templ.NopComponent } ctx = templ.ClearChildren(ctx) - templ_7745c5c3_Var218 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) { + templ_7745c5c3_Var136 := 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 { @@ -4405,7 +2814,7 @@ func BlogsPage(style Style, blogs []Blog) templ.Component { }() } ctx = templ.InitializeContext(ctx) - templ_7745c5c3_Var219 := 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 { @@ -4417,17 +2826,17 @@ func BlogsPage(style Style, blogs []Blog) templ.Component { }() } ctx = templ.InitializeContext(ctx) - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 243, "$ ls -lh ~/blogs") + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 141, "$ 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_Var219), templ_7745c5c3_Buffer) + templ_7745c5c3_Err = TerminalBorder("Shell", "", "mb-[1rem]").Render(templ.WithChildren(ctx, templ_7745c5c3_Var137), templ_7745c5c3_Buffer) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - templ_7745c5c3_Var220 := 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 { @@ -4439,7 +2848,7 @@ func BlogsPage(style Style, blogs []Blog) templ.Component { }() } ctx = templ.InitializeContext(ctx) - templ_7745c5c3_Var221 := 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 { @@ -4461,19 +2870,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_Var221), templ_7745c5c3_Buffer) + templ_7745c5c3_Err = TerminalStack(false, "mt-[0.5rem]").Render(templ.WithChildren(ctx, templ_7745c5c3_Var139), templ_7745c5c3_Buffer) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } return nil }) - templ_7745c5c3_Err = ScrollBox("").Render(templ.WithChildren(ctx, templ_7745c5c3_Var220), templ_7745c5c3_Buffer) + templ_7745c5c3_Err = ScrollBox("").Render(templ.WithChildren(ctx, templ_7745c5c3_Var138), 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_Var218), templ_7745c5c3_Buffer) + templ_7745c5c3_Err = TerminalLayout(style, "blogs").Render(templ.WithChildren(ctx, templ_7745c5c3_Var136), templ_7745c5c3_Buffer) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } @@ -4504,12 +2913,12 @@ func IconMonitor(color string) templ.Component { }() } ctx = templ.InitializeContext(ctx) - templ_7745c5c3_Var222 := templ.GetChildren(ctx) - if templ_7745c5c3_Var222 == nil { - templ_7745c5c3_Var222 = templ.NopComponent + templ_7745c5c3_Var140 := templ.GetChildren(ctx) + if templ_7745c5c3_Var140 == nil { + templ_7745c5c3_Var140 = templ.NopComponent } ctx = templ.ClearChildren(ctx) - templ_7745c5c3_Var223 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) { + templ_7745c5c3_Var141 := 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 { @@ -4521,13 +2930,13 @@ func IconMonitor(color string) templ.Component { }() } ctx = templ.InitializeContext(ctx) - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 244, " ") + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 142, " ") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } return nil }) - templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var223), templ_7745c5c3_Buffer) + templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var141), templ_7745c5c3_Buffer) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } @@ -4551,12 +2960,12 @@ func IconTerminal(color string) templ.Component { }() } ctx = templ.InitializeContext(ctx) - templ_7745c5c3_Var224 := templ.GetChildren(ctx) - if templ_7745c5c3_Var224 == nil { - templ_7745c5c3_Var224 = templ.NopComponent + templ_7745c5c3_Var142 := templ.GetChildren(ctx) + if templ_7745c5c3_Var142 == nil { + templ_7745c5c3_Var142 = templ.NopComponent } ctx = templ.ClearChildren(ctx) - templ_7745c5c3_Var225 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) { + templ_7745c5c3_Var143 := 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 { @@ -4568,13 +2977,13 @@ func IconTerminal(color string) templ.Component { }() } ctx = templ.InitializeContext(ctx) - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 245, " ") + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 143, " ") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } return nil }) - templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var225), templ_7745c5c3_Buffer) + templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var143), templ_7745c5c3_Buffer) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } @@ -4598,12 +3007,12 @@ func IconCode(color string) templ.Component { }() } ctx = templ.InitializeContext(ctx) - templ_7745c5c3_Var226 := templ.GetChildren(ctx) - if templ_7745c5c3_Var226 == nil { - templ_7745c5c3_Var226 = templ.NopComponent + templ_7745c5c3_Var144 := templ.GetChildren(ctx) + if templ_7745c5c3_Var144 == nil { + templ_7745c5c3_Var144 = templ.NopComponent } ctx = templ.ClearChildren(ctx) - templ_7745c5c3_Var227 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) { + templ_7745c5c3_Var145 := 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 { @@ -4615,13 +3024,13 @@ func IconCode(color string) templ.Component { }() } ctx = templ.InitializeContext(ctx) - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 246, " ") + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 144, " ") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } return nil }) - templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var227), templ_7745c5c3_Buffer) + templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var145), templ_7745c5c3_Buffer) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } @@ -4645,12 +3054,12 @@ func IconCpu(color string) templ.Component { }() } ctx = templ.InitializeContext(ctx) - templ_7745c5c3_Var228 := templ.GetChildren(ctx) - if templ_7745c5c3_Var228 == nil { - templ_7745c5c3_Var228 = templ.NopComponent + templ_7745c5c3_Var146 := templ.GetChildren(ctx) + if templ_7745c5c3_Var146 == nil { + templ_7745c5c3_Var146 = templ.NopComponent } ctx = templ.ClearChildren(ctx) - templ_7745c5c3_Var229 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) { + templ_7745c5c3_Var147 := 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 { @@ -4662,13 +3071,13 @@ func IconCpu(color string) templ.Component { }() } ctx = templ.InitializeContext(ctx) - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 247, " ") + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 145, " ") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } return nil }) - templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var229), templ_7745c5c3_Buffer) + templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var147), templ_7745c5c3_Buffer) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } @@ -4692,12 +3101,12 @@ func IconScriptLang(color string) templ.Component { }() } ctx = templ.InitializeContext(ctx) - templ_7745c5c3_Var230 := templ.GetChildren(ctx) - if templ_7745c5c3_Var230 == nil { - templ_7745c5c3_Var230 = templ.NopComponent + templ_7745c5c3_Var148 := templ.GetChildren(ctx) + if templ_7745c5c3_Var148 == nil { + templ_7745c5c3_Var148 = templ.NopComponent } ctx = templ.ClearChildren(ctx) - templ_7745c5c3_Var231 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) { + templ_7745c5c3_Var149 := 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 { @@ -4709,13 +3118,13 @@ func IconScriptLang(color string) templ.Component { }() } ctx = templ.InitializeContext(ctx) - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 248, "") + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 146, "") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } return nil }) - templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var231), templ_7745c5c3_Buffer) + templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var149), templ_7745c5c3_Buffer) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } @@ -4739,12 +3148,12 @@ func IconEditor(color string) templ.Component { }() } ctx = templ.InitializeContext(ctx) - templ_7745c5c3_Var232 := templ.GetChildren(ctx) - if templ_7745c5c3_Var232 == nil { - templ_7745c5c3_Var232 = templ.NopComponent + templ_7745c5c3_Var150 := templ.GetChildren(ctx) + if templ_7745c5c3_Var150 == nil { + templ_7745c5c3_Var150 = templ.NopComponent } ctx = templ.ClearChildren(ctx) - templ_7745c5c3_Var233 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) { + templ_7745c5c3_Var151 := 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 { @@ -4756,13 +3165,13 @@ func IconEditor(color string) templ.Component { }() } ctx = templ.InitializeContext(ctx) - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 249, "") + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 147, "") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } return nil }) - templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var233), templ_7745c5c3_Buffer) + templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var151), templ_7745c5c3_Buffer) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } @@ -4786,12 +3195,12 @@ func IconDebugger(color string) templ.Component { }() } ctx = templ.InitializeContext(ctx) - templ_7745c5c3_Var234 := templ.GetChildren(ctx) - if templ_7745c5c3_Var234 == nil { - templ_7745c5c3_Var234 = templ.NopComponent + templ_7745c5c3_Var152 := templ.GetChildren(ctx) + if templ_7745c5c3_Var152 == nil { + templ_7745c5c3_Var152 = templ.NopComponent } ctx = templ.ClearChildren(ctx) - templ_7745c5c3_Var235 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) { + templ_7745c5c3_Var153 := 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 { @@ -4803,13 +3212,13 @@ func IconDebugger(color string) templ.Component { }() } ctx = templ.InitializeContext(ctx) - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 250, "") + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 148, "") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } return nil }) - templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var235), templ_7745c5c3_Buffer) + templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var153), templ_7745c5c3_Buffer) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } @@ -4833,12 +3242,12 @@ func IconKeyboard(color string) templ.Component { }() } ctx = templ.InitializeContext(ctx) - templ_7745c5c3_Var236 := templ.GetChildren(ctx) - if templ_7745c5c3_Var236 == nil { - templ_7745c5c3_Var236 = templ.NopComponent + templ_7745c5c3_Var154 := templ.GetChildren(ctx) + if templ_7745c5c3_Var154 == nil { + templ_7745c5c3_Var154 = templ.NopComponent } ctx = templ.ClearChildren(ctx) - templ_7745c5c3_Var237 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) { + templ_7745c5c3_Var155 := 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 { @@ -4850,13 +3259,13 @@ func IconKeyboard(color string) templ.Component { }() } ctx = templ.InitializeContext(ctx) - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 251, "") + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 149, "") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } return nil }) - templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var237), templ_7745c5c3_Buffer) + templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var155), templ_7745c5c3_Buffer) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } @@ -4880,12 +3289,247 @@ func IconUptime(color string) templ.Component { }() } ctx = templ.InitializeContext(ctx) - templ_7745c5c3_Var238 := templ.GetChildren(ctx) - if templ_7745c5c3_Var238 == nil { - templ_7745c5c3_Var238 = templ.NopComponent + templ_7745c5c3_Var156 := templ.GetChildren(ctx) + if templ_7745c5c3_Var156 == nil { + templ_7745c5c3_Var156 = templ.NopComponent + } + ctx = templ.ClearChildren(ctx) + templ_7745c5c3_Var157 := 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, 150, "") + 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) + if templ_7745c5c3_Err != nil { + return templ_7745c5c3_Err + } + return nil + }) +} + +func IconEko(color string) 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_Var158 := templ.GetChildren(ctx) + if templ_7745c5c3_Var158 == nil { + templ_7745c5c3_Var158 = templ.NopComponent + } + ctx = templ.ClearChildren(ctx) + templ_7745c5c3_Var159 := 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, 151, "") + 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) + if templ_7745c5c3_Err != nil { + return templ_7745c5c3_Err + } + return nil + }) +} + +func IconTrident(color string) 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_Var160 := templ.GetChildren(ctx) + if templ_7745c5c3_Var160 == nil { + templ_7745c5c3_Var160 = templ.NopComponent + } + ctx = templ.ClearChildren(ctx) + templ_7745c5c3_Var161 := 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, 152, " ") + 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) + if templ_7745c5c3_Err != nil { + return templ_7745c5c3_Err + } + return nil + }) +} + +func IconDotfiles(color string) 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_Var162 := templ.GetChildren(ctx) + if templ_7745c5c3_Var162 == nil { + templ_7745c5c3_Var162 = templ.NopComponent + } + ctx = templ.ClearChildren(ctx) + templ_7745c5c3_Var163 := 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, 153, "") + 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) + if templ_7745c5c3_Err != nil { + return templ_7745c5c3_Err + } + return nil + }) +} + +func IconVideo(color string) 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_Var164 := templ.GetChildren(ctx) + if templ_7745c5c3_Var164 == nil { + templ_7745c5c3_Var164 = templ.NopComponent + } + ctx = templ.ClearChildren(ctx) + templ_7745c5c3_Var165 := 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, 154, " ") + 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) + if templ_7745c5c3_Err != nil { + return templ_7745c5c3_Err + } + return nil + }) +} + +func IconJetbrains(color string) 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_Var166 := templ.GetChildren(ctx) + if templ_7745c5c3_Var166 == nil { + templ_7745c5c3_Var166 = templ.NopComponent } ctx = templ.ClearChildren(ctx) - templ_7745c5c3_Var239 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) { + templ_7745c5c3_Var167 := 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 { @@ -4897,13 +3541,13 @@ func IconUptime(color string) templ.Component { }() } ctx = templ.InitializeContext(ctx) - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 252, "") + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 155, " ") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } return nil }) - templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var239), templ_7745c5c3_Buffer) + templ_7745c5c3_Err = Icon(color).Render(templ.WithChildren(ctx, templ_7745c5c3_Var167), templ_7745c5c3_Buffer) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } @@ -4917,12 +3561,12 @@ func row(icon func(color string) templ.Component, color, label, value string) Fe var fetchRows = []FetchRow{ // row(IconTerminal, "text-(--secondary)", "Terminal", "Ghostty & Zsh"), - row(IconCode, "--accent", "Main Language", "C"), - row(IconScriptLang, "--accent", "Scripting Langs", "Go and Python"), - row(IconDebugger, "#F16265", "Debugger", "Raddebugger"), - row(IconMonitor, "#54D7A9", "Operating System", "Fedora KDE Linux"), - row(IconEditor, "#54D7A9", "Text Editor", "Neovim"), - row(IconUptime, "#D8C44B", "Uptime", "Asleep"), + row(IconCode, "text-(--accent)", "Main Language", "C"), + row(IconScriptLang, "text-(--accent)", "Scripting Langs", "Go and Python"), + row(IconDebugger, "text-[#F16265]", "Debugger", "Raddebugger"), + row(IconMonitor, "text-[#54D7A9]", "Operating System", "Fedora KDE Linux"), + row(IconEditor, "text-[#54D7A9]", "Text Editor", "Neovim"), + row(IconUptime, "text-[#D8C44B]", "Uptime", "Asleep"), // row(IconCpu, "--extra", "Hardware", "..."), } @@ -4955,30 +3599,30 @@ func Fastfetch(rows []FetchRow) templ.Component { }() } ctx = templ.InitializeContext(ctx) - templ_7745c5c3_Var240 := templ.GetChildren(ctx) - if templ_7745c5c3_Var240 == nil { - templ_7745c5c3_Var240 = templ.NopComponent + templ_7745c5c3_Var168 := templ.GetChildren(ctx) + if templ_7745c5c3_Var168 == nil { + templ_7745c5c3_Var168 = templ.NopComponent } ctx = templ.ClearChildren(ctx) - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 253, "
") + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 156, "
") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } for i, row := range rows { - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 254, "") + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 157, "") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - var templ_7745c5c3_Var241 string - templ_7745c5c3_Var241, templ_7745c5c3_Err = templ.JoinStringErrs(branch(i, len(rows))) + var templ_7745c5c3_Var169 string + templ_7745c5c3_Var169, 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: 962, Col: 52} + return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 694, Col: 52} } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var241)) + _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var169)) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 255, "") + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 158, "") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } @@ -4986,69 +3630,69 @@ func Fastfetch(rows []FetchRow) templ.Component { if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - var templ_7745c5c3_Var242 = []any{row.Color, "font-bold"} - templ_7745c5c3_Err = templ.RenderCSSItems(ctx, templ_7745c5c3_Buffer, templ_7745c5c3_Var242...) + var templ_7745c5c3_Var170 = []any{row.Color, "font-bold"} + templ_7745c5c3_Err = templ.RenderCSSItems(ctx, templ_7745c5c3_Buffer, templ_7745c5c3_Var170...) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 256, "") + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 160, "\">") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - var templ_7745c5c3_Var244 string - templ_7745c5c3_Var244, templ_7745c5c3_Err = templ.JoinStringErrs(row.Label) + var templ_7745c5c3_Var172 string + templ_7745c5c3_Var172, templ_7745c5c3_Err = templ.JoinStringErrs(row.Label) if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 964, Col: 53} + return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 696, Col: 53} } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var244)) + _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var172)) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 258, " ") + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 162, "\">") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - var templ_7745c5c3_Var246 string - templ_7745c5c3_Var246, templ_7745c5c3_Err = templ.JoinStringErrs(row.Value) + var templ_7745c5c3_Var174 string + templ_7745c5c3_Var174, templ_7745c5c3_Err = templ.JoinStringErrs(row.Value) if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 965, Col: 37} + return templ.Error{Err: templ_7745c5c3_Err, FileName: `website.templ`, Line: 697, Col: 37} } - _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var246)) + _, 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, 260, "") + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 163, "") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 261, "
") + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 164, "
") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } @@ -5072,38 +3716,38 @@ func Icon(color string) templ.Component { }() } ctx = templ.InitializeContext(ctx) - templ_7745c5c3_Var247 := templ.GetChildren(ctx) - if templ_7745c5c3_Var247 == nil { - templ_7745c5c3_Var247 = templ.NopComponent + templ_7745c5c3_Var175 := templ.GetChildren(ctx) + if templ_7745c5c3_Var175 == nil { + templ_7745c5c3_Var175 = templ.NopComponent } ctx = templ.ClearChildren(ctx) - var templ_7745c5c3_Var248 = []any{"shrink-0", Color(color)} - templ_7745c5c3_Err = templ.RenderCSSItems(ctx, templ_7745c5c3_Buffer, templ_7745c5c3_Var248...) + var templ_7745c5c3_Var176 = []any{"shrink-0", Color(color), "self-center"} + templ_7745c5c3_Err = templ.RenderCSSItems(ctx, templ_7745c5c3_Buffer, templ_7745c5c3_Var176...) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 262, "") + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 166, "\" 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_Var247.Render(ctx, templ_7745c5c3_Buffer) + templ_7745c5c3_Err = templ_7745c5c3_Var175.Render(ctx, templ_7745c5c3_Buffer) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 264, "") + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 167, "") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } -- cgit v1.3.1