From 4b64f50670b82603715743fd3895a36eb5621eb4 Mon Sep 17 00:00:00 2001 From: Michael Freno Date: Wed, 17 Dec 2025 23:22:12 -0500 Subject: [PATCH] looking decent --- bun.lockb | Bin 328106 -> 328472 bytes package.json | 1 + src/app.css | 23 +++ src/components/blog/Card.tsx | 8 +- src/components/blog/CardLinks.tsx | 9 +- src/components/blog/CommentBlock.tsx | 5 +- src/components/blog/CommentInputBlock.tsx | 10 +- src/components/blog/CommentSection.tsx | 4 - src/components/blog/CommentSectionWrapper.tsx | 13 +- src/components/blog/CommentSorting.tsx | 1 - src/components/blog/PostBodyClient.tsx | 32 +++ src/components/blog/PostSorting.tsx | 15 +- src/components/blog/PostSortingSelect.tsx | 20 +- src/components/blog/SessionDependantLike.tsx | 21 +- src/components/blog/TagSelector.tsx | 7 +- src/routes/blog/[title]/index.tsx | 12 +- src/routes/blog/create/index.tsx | 36 ++-- src/routes/blog/edit/[id]/index.tsx | 18 +- src/routes/blog/index.tsx | 183 +++++------------- src/routes/sitemap.xml.ts | 6 - src/routes/test.tsx | 6 +- src/server/api/routers/database.ts | 8 +- src/types/comment.ts | 7 - 23 files changed, 179 insertions(+), 266 deletions(-) create mode 100644 src/components/blog/PostBodyClient.tsx diff --git a/bun.lockb b/bun.lockb index 4dd853e0659280e3f0460c66d733e760b324f3ce..ec0da28800673b9942be2bab7a2cb071c35ed0f5 100755 GIT binary patch delta 53063 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

-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 delta 52739 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 (2y~MT@B#jl>)ZX8cceLHE|Kr{x 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 ba-%6`CNkyyAvM^w;EB|A+0GCX>%e~l{cy8y diff --git a/package.json b/package.json index c3b2979..a0628a7 100644 --- a/package.json +++ b/package.json @@ -21,6 +21,7 @@ "@typeschema/valibot": "^0.13.4", "bcrypt": "^6.0.0", "google-auth-library": "^10.5.0", + "highlight.js": "^11.11.1", "jose": "^6.1.3", "motion": "^12.23.26", "solid-js": "^1.9.5", diff --git a/src/app.css b/src/app.css index 0181aa0..c5c16f7 100644 --- a/src/app.css +++ b/src/app.css @@ -381,9 +381,32 @@ input[type="checkbox"]::before { input[type="checkbox"]:checked::before { transform: scale(1); } +.shaker:hover { + animation: shaker 0.5s ease; +} .tooltip { position: relative; } +.tooltip .tooltip-text { + visibility: hidden; + min-width: fit-content; + background-color: var(--color-mantle); + color: #fff; + text-align: center; + padding: 5px 0; + border-radius: 6px; + position: absolute; + z-index: 1; + top: 100%; + left: 50%; + opacity: 0; + transition: opacity 0.3s; +} + +.tooltip:hover .tooltip-text { + visibility: visible; + opacity: 1; +} .rule-around { display: flex; align-items: center; diff --git a/src/components/blog/Card.tsx b/src/components/blog/Card.tsx index 8b39ff1..a07e56c 100644 --- a/src/components/blog/Card.tsx +++ b/src/components/blog/Card.tsx @@ -21,7 +21,6 @@ export interface Post { export interface CardProps { post: Post; privilegeLevel: "anonymous" | "admin" | "user"; - linkTarget: "blog" | "project"; } export default function Card(props: CardProps) { @@ -36,7 +35,7 @@ export default function Card(props: CardProps) { @@ -46,9 +45,7 @@ export default function Card(props: CardProps) { src={ props.post.banner_photo ? props.post.banner_photo - : props.linkTarget === "blog" - ? "/bitcoin.jpg" - : "/blueprint.jpg" + : "/bitcoin.jpg" } alt={props.post.title.replaceAll("_", " ") + " banner"} class="h-full w-full object-cover" @@ -74,7 +71,6 @@ export default function Card(props: CardProps) { diff --git a/src/components/blog/CardLinks.tsx b/src/components/blog/CardLinks.tsx index a5bc5f6..6c71d71 100644 --- a/src/components/blog/CardLinks.tsx +++ b/src/components/blog/CardLinks.tsx @@ -5,7 +5,6 @@ import LoadingSpinner from "~/components/LoadingSpinner"; export interface CardLinksProps { postTitle: string; postID: number; - linkTarget: string; privilegeLevel: string; } @@ -19,12 +18,8 @@ export default function CardLinks(props: CardLinksProps) { href={`/blog/${props.postTitle}`} onClick={() => setReadLoading(true)} class={`${ - readLoading() - ? "bg-zinc-400" - : props.linkTarget === "project" - ? "bg-blue-400 hover:bg-blue-500 dark:bg-blue-600 dark:hover:bg-blue-700" - : "bg-orange-400 hover:bg-orange-500" - } mb-1 ml-2 flex rounded px-4 py-2 font-light text-white shadow transition-all duration-300 ease-out active:scale-90`} + readLoading() ? "bg-zinc-400" : "bg-lavender hover:brightness-125" + } mb-1 ml-2 flex rounded px-4 py-2 text-base font-light shadow transition-all duration-300 ease-out active:scale-90`} > diff --git a/src/components/blog/CommentBlock.tsx b/src/components/blog/CommentBlock.tsx index a6f6357..1e9137b 100644 --- a/src/components/blog/CommentBlock.tsx +++ b/src/components/blog/CommentBlock.tsx @@ -159,8 +159,7 @@ export default function CommentBlock(props: CommentBlockProps) { const isAnonymous = () => props.privilegeLevel === "anonymous"; - const replyIconColor = () => - location.pathname.split("/")[1] === "blog" ? "#fb923c" : "#60a5fa"; + const replyIconColor = () => "#fb923c"; return ( <> @@ -344,7 +343,6 @@ export default function CommentBlock(props: CommentBlockProps) { isReply={true} privilegeLevel={props.privilegeLevel} parent_id={props.comment.id} - type={props.category} post_id={props.projectID} currentUserID={props.currentUserID} socket={props.socket} @@ -360,7 +358,6 @@ export default function CommentBlock(props: CommentBlockProps) { {(childComment) => (

-
+