fix: resolve Prettier markdown code block parsing errors

- Fix syntax errors in skills markdown files (.github/skills, .opencode/skills)
- Change typescript to tsx for code blocks with JSX
- Replace ellipsis (...) in array examples with valid syntax
- Separate CSS from TypeScript into distinct code blocks
- Convert JavaScript object examples to valid JSON in docs
- Fix enum definitions with proper comma separation
This commit is contained in:
2026-01-20 21:09:29 +01:00
parent 7932fe7386
commit cd05fc8648
177 changed files with 5042 additions and 5541 deletions

View File

@@ -71,7 +71,8 @@ export default function MessageViewer({ messages }: MessageViewerProps) {
: "No timestamp"}
</span>
<span>
Last message: {(() => {
Last message:{" "}
{(() => {
const lastMessage = messages[messages.length - 1];
return lastMessage.timestamp
? new Date(lastMessage.timestamp).toLocaleString()

View File

@@ -3,10 +3,10 @@
import Image from "next/image";
import Link from "next/link";
import { usePathname } from "next/navigation";
import { signOut } from "next-auth/react";
import type React from "react"; // No hooks needed since state is now managed by parent
import { useId } from "react";
import { SimpleThemeToggle } from "@/components/ui/theme-toggle";
import { authClient } from "@/lib/auth/client";
// Icons for the sidebar
const DashboardIcon = () => (
@@ -202,8 +202,14 @@ export default function Sidebar({
const sidebarId = useId();
const pathname = usePathname() || "";
const handleLogout = () => {
signOut({ callbackUrl: "/login" });
const handleLogout = async () => {
await authClient.signOut({
fetchOptions: {
onSuccess: () => {
window.location.href = "/auth/sign-in";
},
},
});
};
return (

View File

@@ -1,14 +1,14 @@
"use client";
import { useSession } from "next-auth/react";
import { authClient } from "@/lib/auth/client";
interface WelcomeBannerProps {
companyName?: string;
}
export default function WelcomeBanner({ companyName }: WelcomeBannerProps) {
const { data: session } = useSession();
const userName = session?.user?.name || "User";
const { data } = authClient.useSession();
const userName = data?.user?.name || "User";
const currentTime = new Date();
const hour = currentTime.getHours();

View File

@@ -2,8 +2,7 @@ import type { ComponentPropsWithoutRef, CSSProperties, FC } from "react";
import { cn } from "@/lib/utils";
export interface AnimatedShinyTextProps
extends ComponentPropsWithoutRef<"span"> {
export interface AnimatedShinyTextProps extends ComponentPropsWithoutRef<"span"> {
shimmerWidth?: number;
}

View File

@@ -4,8 +4,10 @@ import { type MotionProps, motion, useScroll } from "motion/react";
import React from "react";
import { cn } from "@/lib/utils";
interface ScrollProgressProps
extends Omit<React.HTMLAttributes<HTMLElement>, keyof MotionProps> {
interface ScrollProgressProps extends Omit<
React.HTMLAttributes<HTMLElement>,
keyof MotionProps
> {
className?: string;
}

View File

@@ -58,8 +58,7 @@ const CalendarChevron = ({
return <ChevronDownIcon className={cn("size-4", className)} {...props} />;
};
interface CalendarWeekNumberProps
extends React.ThHTMLAttributes<HTMLTableCellElement> {
interface CalendarWeekNumberProps extends React.ThHTMLAttributes<HTMLTableCellElement> {
week: { weekNumber: number };
}