mirror of
https://github.com/jakejarvis/jarv.is.git
synced 2026-06-19 11:55:30 -04:00
refactor: migrate from Biome to oxlint/oxfmt, remove contact form
- Replace Biome with oxlint + oxfmt (OXC toolchain) for linting and formatting - Add .oxlintrc.json and .oxfmtrc.json configuration files - Update VS Code settings and devcontainer to use oxc-vscode extension - Remove contact form, Resend email integration, and related server action/schema - Remove unused UI components (accordion, alert, card, tabs, toggle, etc.)
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
import { cacheLife } from "next/cache";
|
||||
import { codeToHtml } from "shiki";
|
||||
|
||||
import { CopyButton } from "@/components/copy-button";
|
||||
import { cn } from "@/lib/utils";
|
||||
|
||||
@@ -13,8 +14,7 @@ const getTextContent = (node: React.ReactNode): string => {
|
||||
if (Array.isArray(node)) return node.map(getTextContent).join("");
|
||||
if (typeof node === "object" && "props" in node) {
|
||||
return getTextContent(
|
||||
(node as React.ReactElement<{ children?: React.ReactNode }>).props
|
||||
.children,
|
||||
(node as React.ReactElement<{ children?: React.ReactNode }>).props.children,
|
||||
);
|
||||
}
|
||||
return "";
|
||||
@@ -66,15 +66,14 @@ const CodeBlock = async ({
|
||||
data-lang={lang}
|
||||
data-line-numbers={showLineNumbers || undefined}
|
||||
className={cn(
|
||||
"overflow-x-auto overflow-y-hidden rounded-xl bg-code text-[13px] text-code-foreground leading-normal outline-none",
|
||||
"bg-code text-code-foreground overflow-x-auto overflow-y-hidden rounded-xl text-[13px] leading-normal outline-none",
|
||||
"[&_span]:!bg-transparent [&_span[style*='color']]:dark:!text-(--shiki-dark)",
|
||||
"[&_pre]:!bg-transparent [&_pre]:m-0 [&_pre]:rounded-xl",
|
||||
"[&_pre]:m-0 [&_pre]:rounded-xl [&_pre]:!bg-transparent",
|
||||
"[&_code]:white-space-pre [&_code]:grid [&_code]:min-w-full [&_code]:px-4 [&_code]:py-3.5 [&_code]:[counter-reset:line]",
|
||||
"[&_.line]:inline-block [&_.line]:min-h-1lh [&_.line]:w-full [&_.line]:py-0.5",
|
||||
"data-[line-numbers]:[&_.line]:before:mr-6 data-[line-numbers]:[&_.line]:before:inline-block data-[line-numbers]:[&_.line]:before:w-5 data-[line-numbers]:[&_.line]:before:text-right data-[line-numbers]:[&_.line]:before:text-code-number data-[line-numbers]:[&_.line]:before:content-[counter(line)] data-[line-numbers]:[&_.line]:before:[counter-increment:line]",
|
||||
"[&_.line]:min-h-1lh [&_.line]:inline-block [&_.line]:w-full [&_.line]:py-0.5",
|
||||
"data-[line-numbers]:[&_.line]:before:text-code-number data-[line-numbers]:[&_.line]:before:mr-6 data-[line-numbers]:[&_.line]:before:inline-block data-[line-numbers]:[&_.line]:before:w-5 data-[line-numbers]:[&_.line]:before:text-right data-[line-numbers]:[&_.line]:before:content-[counter(line)] data-[line-numbers]:[&_.line]:before:[counter-increment:line]",
|
||||
className,
|
||||
)}
|
||||
// biome-ignore lint/security/noDangerouslySetInnerHtml: trusted Shiki-generated syntax-highlighted HTML
|
||||
dangerouslySetInnerHTML={{ __html: html }}
|
||||
/>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user