mirror of
https://github.com/jakejarvis/jarv.is.git
synced 2026-06-05 19:15:30 -04:00
fix: batch server requests from posts list
This commit is contained in:
+1
-1
@@ -10,4 +10,4 @@ const Analytics = () => {
|
||||
);
|
||||
};
|
||||
|
||||
export default Analytics;
|
||||
export { Analytics };
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import { env } from "@/lib/env";
|
||||
import { JsonLd } from "react-schemaorg";
|
||||
import PageTitle from "@/components/layout/page-title";
|
||||
import Video from "@/components/video";
|
||||
import { PageTitle } from "@/components/layout/page-title";
|
||||
import { Video } from "@/components/video";
|
||||
import { createMetadata } from "@/lib/metadata";
|
||||
import type { VideoObject } from "schema-dts";
|
||||
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
import PageTitle from "@/components/layout/page-title";
|
||||
import { PageTitle } from "@/components/layout/page-title";
|
||||
import { createMetadata } from "@/lib/metadata";
|
||||
|
||||
export const metadata = createMetadata({
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import PageTitle from "@/components/layout/page-title";
|
||||
import ContactForm from "@/components/contact-form";
|
||||
import { PageTitle } from "@/components/layout/page-title";
|
||||
import { ContactForm } from "@/components/contact-form";
|
||||
import { createMetadata } from "@/lib/metadata";
|
||||
|
||||
export const metadata = createMetadata({
|
||||
|
||||
+2
-1
@@ -193,9 +193,10 @@
|
||||
::selection {
|
||||
@apply bg-selection text-selection-foreground;
|
||||
}
|
||||
/* https://ui.shadcn.com/docs/components/button#cursor */
|
||||
button:not(:disabled),
|
||||
[role="button"]:not(:disabled) {
|
||||
@apply cursor-pointer;
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import { env } from "@/lib/env";
|
||||
import { JsonLd } from "react-schemaorg";
|
||||
import PageTitle from "@/components/layout/page-title";
|
||||
import Video from "@/components/video";
|
||||
import { PageTitle } from "@/components/layout/page-title";
|
||||
import { Video } from "@/components/video";
|
||||
import { createMetadata } from "@/lib/metadata";
|
||||
import type { VideoObject } from "schema-dts";
|
||||
|
||||
|
||||
+4
-4
@@ -1,11 +1,11 @@
|
||||
import { ViewTransition } from "react";
|
||||
import { env } from "@/lib/env";
|
||||
import { JsonLd } from "react-schemaorg";
|
||||
import Providers from "@/components/providers";
|
||||
import Header from "@/components/layout/header";
|
||||
import Footer from "@/components/layout/footer";
|
||||
import { Providers } from "@/components/providers";
|
||||
import { Header } from "@/components/layout/header";
|
||||
import { Footer } from "@/components/layout/footer";
|
||||
import { Toaster } from "@/components/ui/sonner";
|
||||
import Analytics from "@/app/analytics";
|
||||
import { Analytics } from "@/app/analytics";
|
||||
import { defaultMetadata } from "@/lib/metadata";
|
||||
import { GeistSans, GeistMono } from "@/lib/fonts";
|
||||
import siteConfig from "@/lib/config/site";
|
||||
|
||||
+2
-2
@@ -1,7 +1,7 @@
|
||||
import { env } from "@/lib/env";
|
||||
import { JsonLd } from "react-schemaorg";
|
||||
import PageTitle from "@/components/layout/page-title";
|
||||
import Video from "@/components/video";
|
||||
import { PageTitle } from "@/components/layout/page-title";
|
||||
import { Video } from "@/components/video";
|
||||
import { createMetadata } from "@/lib/metadata";
|
||||
import type { VideoObject } from "schema-dts";
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import PageTitle from "@/components/layout/page-title";
|
||||
import { PageTitle } from "@/components/layout/page-title";
|
||||
import { createMetadata } from "@/lib/metadata";
|
||||
|
||||
export const metadata = createMetadata({
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
import { Button } from "@/components/ui/button";
|
||||
import Video from "@/components/video";
|
||||
import { Video } from "@/components/video";
|
||||
import Link from "next/link";
|
||||
import type { Metadata } from "next";
|
||||
|
||||
|
||||
@@ -3,10 +3,10 @@ import { Suspense } from "react";
|
||||
import Link from "next/link";
|
||||
import { JsonLd } from "react-schemaorg";
|
||||
import { CalendarDaysIcon, TagIcon, SquarePenIcon, EyeIcon, MessagesSquareIcon } from "lucide-react";
|
||||
import ViewCounter from "@/components/view-counter";
|
||||
import CommentCount from "@/components/comment-count";
|
||||
import Comments from "@/components/comments/comments";
|
||||
import CommentsSkeleton from "@/components/comments/comments-skeleton";
|
||||
import { ViewCounter } from "@/components/view-counter";
|
||||
import { CommentCount } from "@/components/comment-count";
|
||||
import { Comments } from "@/components/comments/comments";
|
||||
import { CommentsSkeleton } from "@/components/comments/comments-skeleton";
|
||||
import { getSlugs, getFrontMatter, POSTS_DIR } from "@/lib/posts";
|
||||
import { createMetadata } from "@/lib/metadata";
|
||||
import siteConfig from "@/lib/config/site";
|
||||
|
||||
+7
-5
@@ -1,6 +1,6 @@
|
||||
import Link from "next/link";
|
||||
import PageTitle from "@/components/layout/page-title";
|
||||
import PostStats from "@/components/post-stats";
|
||||
import { PageTitle } from "@/components/layout/page-title";
|
||||
import { PostStats, PostStatsProvider } from "@/components/post-stats";
|
||||
import { getFrontMatter, POSTS_DIR, type FrontMatter } from "@/lib/posts";
|
||||
import { createMetadata } from "@/lib/metadata";
|
||||
import authorConfig from "@/lib/config/author";
|
||||
@@ -61,12 +61,12 @@ const PostsList = async () => {
|
||||
{dateDisplay}
|
||||
</time>
|
||||
</span>
|
||||
<div className="space-x-2.5">
|
||||
<div className="space-x-2">
|
||||
{/* htmlTitle is sanitized by rehypeSanitize in lib/posts.ts with strict allowlist: only code, em, strong tags */}
|
||||
<Link
|
||||
href={`/${POSTS_DIR}/${slug}`}
|
||||
dangerouslySetInnerHTML={{ __html: htmlTitle || title }}
|
||||
className="underline-offset-4 hover:underline"
|
||||
className="mr-2.5 underline-offset-4 hover:underline"
|
||||
style={{ viewTransitionName: `note-title-${slug}` }}
|
||||
/>
|
||||
|
||||
@@ -87,7 +87,9 @@ const Page = async () => {
|
||||
return (
|
||||
<>
|
||||
<PageTitle canonical="/notes">Notes</PageTitle>
|
||||
<PostsList />
|
||||
<PostStatsProvider>
|
||||
<PostsList />
|
||||
</PostStatsProvider>
|
||||
</>
|
||||
);
|
||||
};
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import PageTitle from "@/components/layout/page-title";
|
||||
import Marquee from "@/components/marquee";
|
||||
import { PageTitle } from "@/components/layout/page-title";
|
||||
import { Marquee } from "@/components/marquee";
|
||||
import { Win95Icon } from "@/components/icons";
|
||||
import { createMetadata } from "@/lib/metadata";
|
||||
import { PageStyles } from "./page-styles";
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import PageTitle from "@/components/layout/page-title";
|
||||
import { PageTitle } from "@/components/layout/page-title";
|
||||
import { createMetadata } from "@/lib/metadata";
|
||||
|
||||
export const metadata = createMetadata({
|
||||
|
||||
@@ -3,9 +3,9 @@ import { Suspense } from "react";
|
||||
import { notFound } from "next/navigation";
|
||||
import { GitForkIcon, StarIcon } from "lucide-react";
|
||||
import { Skeleton } from "@/components/ui/skeleton";
|
||||
import PageTitle from "@/components/layout/page-title";
|
||||
import RelativeTime from "@/components/relative-time";
|
||||
import ActivityCalendar from "@/components/activity-calendar";
|
||||
import { PageTitle } from "@/components/layout/page-title";
|
||||
import { RelativeTime } from "@/components/relative-time";
|
||||
import { ActivityCalendar } from "@/components/activity-calendar";
|
||||
import { GitHubIcon } from "@/components/icons";
|
||||
import { cn } from "@/lib/utils";
|
||||
import { createMetadata } from "@/lib/metadata";
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
import PageTitle from "@/components/layout/page-title";
|
||||
import { PageTitle } from "@/components/layout/page-title";
|
||||
import { createMetadata } from "@/lib/metadata";
|
||||
|
||||
export const metadata = createMetadata({
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
import PageTitle from "@/components/layout/page-title";
|
||||
import { PageTitle } from "@/components/layout/page-title";
|
||||
import { createMetadata } from "@/lib/metadata";
|
||||
|
||||
import backgroundImg from "./sundar.jpg";
|
||||
|
||||
Reference in New Issue
Block a user