mirror of
https://github.com/jakejarvis/jarv.is.git
synced 2026-08-31 08:15:34 -04:00
fix: make sitemap.xml prerenderable
This commit is contained in:
@@ -2,8 +2,8 @@ import { NextResponse } from "next/server";
|
||||
|
||||
import { buildFeed } from "@/lib/build-feed";
|
||||
|
||||
export const GET = async () => {
|
||||
const feed = await buildFeed();
|
||||
export const GET = () => {
|
||||
const feed = buildFeed();
|
||||
|
||||
return new NextResponse(feed.atom1(), {
|
||||
headers: {
|
||||
|
||||
@@ -2,8 +2,8 @@ import { NextResponse } from "next/server";
|
||||
|
||||
import { buildFeed } from "@/lib/build-feed";
|
||||
|
||||
export const GET = async () => {
|
||||
const feed = await buildFeed();
|
||||
export const GET = () => {
|
||||
const feed = buildFeed();
|
||||
|
||||
return new NextResponse(feed.rss2(), {
|
||||
headers: {
|
||||
|
||||
@@ -7,13 +7,9 @@ import { ImageResponse } from "next/og";
|
||||
import siteConfig from "@/lib/config/site";
|
||||
import { getFrontMatter, getSlugs, POSTS_DIR } from "@/lib/posts";
|
||||
|
||||
// Reading Inter fonts from the local @fontsource/inter package (instead of
|
||||
// fetching Google Fonts at build time) avoids flaky network timeouts on
|
||||
// Vercel's build infra that caused OG image generation to fail intermittently.
|
||||
// Satori supports .woff but not .woff2. The two file paths are listed explicitly
|
||||
// in next.config.ts under `outputFileTracingIncludes` so NFT ships them with
|
||||
// the function output.
|
||||
const loadInterFont = async (weight: 400 | 600): Promise<ArrayBuffer> => {
|
||||
"use cache";
|
||||
|
||||
const fontPath = path.join(
|
||||
/* turbopackIgnore: true */ process.cwd(),
|
||||
"node_modules/@fontsource/inter/files",
|
||||
@@ -23,23 +19,9 @@ const loadInterFont = async (weight: 400 | 600): Promise<ArrayBuffer> => {
|
||||
return Uint8Array.from(buffer).buffer;
|
||||
};
|
||||
|
||||
export const contentType = "image/png";
|
||||
export const size = {
|
||||
// https://developers.facebook.com/docs/sharing/webmasters/images/
|
||||
width: 1200,
|
||||
height: 630,
|
||||
};
|
||||
|
||||
export const generateStaticParams = async () => {
|
||||
const slugs = await getSlugs();
|
||||
|
||||
// map slugs into a static paths object required by next.js
|
||||
return slugs.map((slug) => ({
|
||||
slug,
|
||||
}));
|
||||
};
|
||||
|
||||
const getLocalImage = async (src: string): Promise<ArrayBuffer | string> => {
|
||||
"use cache";
|
||||
|
||||
// https://stackoverflow.com/questions/5775469/whats-the-valid-way-to-include-an-image-with-no-src/14115340#14115340
|
||||
const NO_IMAGE = "data:image/gif;base64,R0lGODlhAQABAAD/ACwAAAAAAQABAAACADs=";
|
||||
|
||||
@@ -68,12 +50,28 @@ const getLocalImage = async (src: string): Promise<ArrayBuffer | string> => {
|
||||
}
|
||||
};
|
||||
|
||||
export const contentType = "image/png";
|
||||
export const size = {
|
||||
// https://developers.facebook.com/docs/sharing/webmasters/images/
|
||||
width: 1200,
|
||||
height: 630,
|
||||
};
|
||||
|
||||
export const generateStaticParams = () => {
|
||||
const slugs = getSlugs();
|
||||
|
||||
// map slugs into a static paths object required by next.js
|
||||
return slugs.map((slug) => ({
|
||||
slug,
|
||||
}));
|
||||
};
|
||||
|
||||
const OpenGraphImage = async ({ params }: { params: Promise<{ slug: string }> }) => {
|
||||
try {
|
||||
const { slug } = await params;
|
||||
|
||||
// get the post's title and image filename from its frontmatter
|
||||
const frontmatter = await getFrontMatter(slug);
|
||||
const frontmatter = getFrontMatter(slug);
|
||||
if (!frontmatter) notFound();
|
||||
|
||||
// IMPORTANT: include these exact paths in next.config.ts under "outputFileTracingIncludes"
|
||||
@@ -160,10 +158,10 @@ const OpenGraphImage = async ({ params }: { params: Promise<{ slug: string }> })
|
||||
)}
|
||||
<span
|
||||
style={{
|
||||
fontSize: "1.825rem",
|
||||
fontWeight: 600,
|
||||
fontSize: "1.925rem",
|
||||
fontWeight: 400,
|
||||
lineHeight: "3rem",
|
||||
letterSpacing: "-0.015em",
|
||||
letterSpacing: "-0.025em",
|
||||
marginLeft: "0.75rem",
|
||||
}}
|
||||
>
|
||||
|
||||
@@ -18,8 +18,8 @@ import { getFrontMatter, getPost, getSlugs, POSTS_DIR } from "@/lib/posts";
|
||||
|
||||
import { size as ogImageSize } from "./opengraph-image";
|
||||
|
||||
export const generateStaticParams = async () => {
|
||||
const slugs = await getSlugs();
|
||||
export const generateStaticParams = () => {
|
||||
const slugs = getSlugs();
|
||||
|
||||
// map slugs into a static paths object required by next.js
|
||||
return slugs.map((slug) => ({
|
||||
@@ -33,7 +33,7 @@ export const generateMetadata = async ({
|
||||
params: Promise<{ slug: string }>;
|
||||
}): Promise<Metadata> => {
|
||||
const { slug } = await params;
|
||||
const frontmatter = await getFrontMatter(slug);
|
||||
const frontmatter = getFrontMatter(slug);
|
||||
|
||||
return createMetadata({
|
||||
title: frontmatter?.title,
|
||||
@@ -54,7 +54,7 @@ export const generateMetadata = async ({
|
||||
|
||||
const Page = async ({ params }: { params: Promise<{ slug: string }> }) => {
|
||||
const { slug } = await params;
|
||||
const post = await getPost(slug);
|
||||
const post = getPost(slug);
|
||||
if (!post) notFound();
|
||||
|
||||
const d = new Date(post.date);
|
||||
|
||||
+3
-3
@@ -14,8 +14,8 @@ export const metadata = createMetadata({
|
||||
canonical: `/${POSTS_DIR}`,
|
||||
});
|
||||
|
||||
const PostsList = async () => {
|
||||
const posts = await getFrontMatter();
|
||||
const PostsList = () => {
|
||||
const posts = getFrontMatter();
|
||||
|
||||
const formattedPosts = posts.map((post) => {
|
||||
const d = new Date(post.date);
|
||||
@@ -92,7 +92,7 @@ const PostsList = async () => {
|
||||
return <>{sections.toReversed()}</>;
|
||||
};
|
||||
|
||||
const Page = async () => (
|
||||
const Page = () => (
|
||||
<DirectionalTransition>
|
||||
<PageTitle canonical="/notes">Notes</PageTitle>
|
||||
<PostStatsProvider>
|
||||
|
||||
+18
-16
@@ -1,10 +1,23 @@
|
||||
import path from "node:path";
|
||||
|
||||
import glob from "fast-glob";
|
||||
import type { MetadataRoute } from "next";
|
||||
import { glob } from "tinyglobby";
|
||||
|
||||
import { getFrontMatter } from "@/lib/posts";
|
||||
|
||||
const getStaticRoutes = async (): Promise<string[]> => {
|
||||
"use cache";
|
||||
|
||||
return glob("**/page.{tsx,mdx}", {
|
||||
cwd: path.join(process.cwd(), "app"),
|
||||
expandDirectories: false,
|
||||
ignore: [
|
||||
// don't include dynamic routes or route groups
|
||||
"**/{\\[*\\],\\(*\\)}/page.{tsx,mdx}",
|
||||
],
|
||||
});
|
||||
};
|
||||
|
||||
const sitemap = async (): Promise<MetadataRoute.Sitemap> => {
|
||||
// start with manual routes
|
||||
const routes: MetadataRoute.Sitemap = [
|
||||
@@ -12,25 +25,14 @@ const sitemap = async (): Promise<MetadataRoute.Sitemap> => {
|
||||
// homepage
|
||||
url: process.env.NEXT_PUBLIC_BASE_URL ?? "/",
|
||||
priority: 1.0,
|
||||
lastModified: new Date(),
|
||||
lastModified: new Date(process.env.BUILD_TIME ?? 0),
|
||||
},
|
||||
{ url: `${process.env.NEXT_PUBLIC_BASE_URL}/tweets` },
|
||||
{ url: `${process.env.NEXT_PUBLIC_BASE_URL}/y2k` },
|
||||
];
|
||||
|
||||
const [staticRoutes, frontmatter] = await Promise.all([
|
||||
// static routes in app directory
|
||||
glob("**/page.{tsx,mdx}", {
|
||||
cwd: path.join(process.cwd(), "app"),
|
||||
ignore: [
|
||||
// don't include dynamic routes or route groups
|
||||
"**/{\\[*\\],\\(*\\)}/page.{tsx,mdx}",
|
||||
],
|
||||
}),
|
||||
|
||||
// blog posts
|
||||
getFrontMatter(),
|
||||
]);
|
||||
const staticRoutes = await getStaticRoutes();
|
||||
const frontmatter = getFrontMatter();
|
||||
|
||||
// normalize static routes and blog slugs to be absolute URLs
|
||||
staticRoutes.forEach((route) => {
|
||||
@@ -53,7 +55,7 @@ const sitemap = async (): Promise<MetadataRoute.Sitemap> => {
|
||||
});
|
||||
});
|
||||
|
||||
// sort alphabetically by URL, sometimes fast-glob returns results in a different order
|
||||
// sort alphabetically by URL, sometimes glob returns results in a different order
|
||||
routes.sort((a, b) => (a.url < b.url ? -1 : 1));
|
||||
|
||||
return routes;
|
||||
|
||||
@@ -21,7 +21,7 @@ const parseableDate = z.string().refine((value) => !Number.isNaN(Date.parse(valu
|
||||
});
|
||||
|
||||
const titleToHtml = async (title: string): Promise<string> => {
|
||||
return unified()
|
||||
const parsedTitle = await unified()
|
||||
.use(remarkParse)
|
||||
.use(remarkSmartypants)
|
||||
.use(remarkRehype)
|
||||
@@ -29,8 +29,9 @@ const titleToHtml = async (title: string): Promise<string> => {
|
||||
tagNames: ["code", "em", "strong"],
|
||||
})
|
||||
.use(rehypeStringify)
|
||||
.process(title)
|
||||
.then((result) => result.toString().trim());
|
||||
.process(title);
|
||||
|
||||
return parsedTitle.toString().trim();
|
||||
};
|
||||
|
||||
const contentToFeedHtml = async (content: string): Promise<string> => {
|
||||
|
||||
+18
-20
@@ -3,14 +3,14 @@ import { Feed, type Item as FeedItem } from "feed";
|
||||
import ogImage from "@/app/opengraph-image.jpg";
|
||||
import authorConfig from "@/lib/config/author";
|
||||
import siteConfig from "@/lib/config/site";
|
||||
import { getContent, getFrontMatter } from "@/lib/posts";
|
||||
import { getPost, getFrontMatter } from "@/lib/posts";
|
||||
|
||||
/**
|
||||
* Returns a `Feed` object, which can then be processed with `feed.rss2()`, `feed.atom1()`, or `feed.json1()`.
|
||||
* @see https://github.com/jpmonette/feed#example
|
||||
*/
|
||||
export const buildFeed = async (): Promise<Feed> => {
|
||||
const frontmatter = await getFrontMatter();
|
||||
export const buildFeed = (): Feed => {
|
||||
const frontmatter = getFrontMatter();
|
||||
|
||||
const feed = new Feed({
|
||||
id: `${process.env.NEXT_PUBLIC_BASE_URL}`,
|
||||
@@ -32,25 +32,23 @@ export const buildFeed = async (): Promise<Feed> => {
|
||||
});
|
||||
|
||||
// parse posts into feed items
|
||||
const posts: FeedItem[] = await Promise.all(
|
||||
frontmatter.map(async (post) => ({
|
||||
guid: post.permalink,
|
||||
link: post.permalink,
|
||||
title: post.title,
|
||||
description: post.description,
|
||||
author: [
|
||||
{
|
||||
name: authorConfig.name,
|
||||
link: `${process.env.NEXT_PUBLIC_BASE_URL}`,
|
||||
},
|
||||
],
|
||||
date: new Date(post.date),
|
||||
content: `
|
||||
${await getContent(post.slug)}
|
||||
const posts: FeedItem[] = frontmatter.map((post) => ({
|
||||
guid: post.permalink,
|
||||
link: post.permalink,
|
||||
title: post.title,
|
||||
description: post.description,
|
||||
author: [
|
||||
{
|
||||
name: authorConfig.name,
|
||||
link: `${process.env.NEXT_PUBLIC_BASE_URL}`,
|
||||
},
|
||||
],
|
||||
date: new Date(post.date),
|
||||
content: `
|
||||
${getPost(post.slug)?.feedHtml}
|
||||
<p><a href="${post.permalink}"><strong>Continue reading...</strong></a></p>
|
||||
`.trim(),
|
||||
})),
|
||||
);
|
||||
}));
|
||||
|
||||
// sort posts reverse chronologically in case the promises resolved out of order
|
||||
posts.sort((post1, post2) => new Date(post2.date).getTime() - new Date(post1.date).getTime());
|
||||
|
||||
+9
-27
@@ -17,38 +17,25 @@ export type Post = (typeof allPosts)[number];
|
||||
/** Path to directory with .mdx files, relative to project root. */
|
||||
export const POSTS_DIR = "notes" as const;
|
||||
|
||||
const sortPosts = (posts: Post[]): Post[] => {
|
||||
return posts.toSorted(
|
||||
(post1, post2) => new Date(post2.date).getTime() - new Date(post1.date).getTime(),
|
||||
);
|
||||
};
|
||||
|
||||
/** Use generated content collections data to get all post slugs. */
|
||||
export const getSlugs = async (): Promise<string[]> => {
|
||||
"use cache";
|
||||
|
||||
export const getSlugs = (): string[] => {
|
||||
return allPosts.map((post) => post.slug);
|
||||
};
|
||||
|
||||
export const getPost = async (slug: string): Promise<Post | undefined> => {
|
||||
"use cache";
|
||||
|
||||
/** Returns the post for a given slug, or undefined if the slug does not exist. */
|
||||
export const getPost = (slug: string): Post | undefined => {
|
||||
return allPosts.find((post) => post.slug === slug);
|
||||
};
|
||||
|
||||
/**
|
||||
* Returns the front matter of ALL posts, sorted reverse chronologically.
|
||||
*/
|
||||
export async function getFrontMatter(): Promise<FrontMatter[]>;
|
||||
export function getFrontMatter(): FrontMatter[];
|
||||
/**
|
||||
* Returns the front matter of a given slug, or undefined if the slug does not exist.
|
||||
*/
|
||||
export async function getFrontMatter(slug: string): Promise<FrontMatter | undefined>;
|
||||
export async function getFrontMatter(
|
||||
slug?: string,
|
||||
): Promise<FrontMatter[] | FrontMatter | undefined> {
|
||||
"use cache";
|
||||
|
||||
export function getFrontMatter(slug: string): FrontMatter | undefined;
|
||||
export function getFrontMatter(slug?: string): FrontMatter[] | FrontMatter | undefined {
|
||||
const toFrontMatter = (post: Post): FrontMatter => ({
|
||||
slug: post.slug,
|
||||
permalink: post.permalink,
|
||||
@@ -67,15 +54,10 @@ export async function getFrontMatter(
|
||||
}
|
||||
|
||||
if (!slug) {
|
||||
return sortPosts(allPosts).map(toFrontMatter);
|
||||
return allPosts
|
||||
.toSorted((post1, post2) => new Date(post2.date).getTime() - new Date(post1.date).getTime())
|
||||
.map(toFrontMatter);
|
||||
}
|
||||
|
||||
throw new Error("getFrontMatter() called with invalid argument.");
|
||||
}
|
||||
|
||||
/** Returns the sanitized HTML content of a post for RSS feeds. */
|
||||
export const getContent = async (slug: string): Promise<string | undefined> => {
|
||||
"use cache";
|
||||
|
||||
return allPosts.find((post) => post.slug === slug)?.feedHtml;
|
||||
};
|
||||
|
||||
@@ -17,6 +17,12 @@ const nextConfig = {
|
||||
},
|
||||
],
|
||||
},
|
||||
compiler: {
|
||||
defineServer: {
|
||||
// Inlined at `next build`; `new Date()` here is config-time, not prerender I/O.
|
||||
"process.env.BUILD_TIME": new Date().toISOString(),
|
||||
},
|
||||
},
|
||||
outputFileTracingIncludes: {
|
||||
"/notes/[slug]/opengraph-image": [
|
||||
"./notes/**/*",
|
||||
|
||||
+1
-1
@@ -41,7 +41,6 @@
|
||||
"class-variance-authority": "^0.7.1",
|
||||
"clsx": "^2.1.1",
|
||||
"drizzle-orm": "1.0.0-rc.5-ab785fc",
|
||||
"fast-glob": "^3.3.3",
|
||||
"feed": "^6.0.0",
|
||||
"html-entities": "^2.6.0",
|
||||
"next": "16.3.1",
|
||||
@@ -77,6 +76,7 @@
|
||||
"shiki": "^4.4.3",
|
||||
"sonner": "^2.0.8",
|
||||
"tailwind-merge": "^3.6.0",
|
||||
"tinyglobby": "^0.2.17",
|
||||
"unified": "^11.0.5",
|
||||
"zod": "^4.4.3"
|
||||
},
|
||||
|
||||
Generated
+84
-103
@@ -13,7 +13,7 @@ importers:
|
||||
version: 1.7.0(@types/react@19.2.18)(date-fns@4.4.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)
|
||||
'@better-auth/drizzle-adapter':
|
||||
specifier: 1.7.0-rc.4
|
||||
version: 1.7.0-rc.4(@better-auth/core@1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.8)(kysely@0.29.4)(nanostores@1.4.2))(@better-auth/utils@0.4.2)(drizzle-orm@1.0.0-rc.5-ab785fc(@types/pg@8.21.0)(pg@8.23.0)(zod@4.4.3))
|
||||
version: 1.7.0-rc.4(@better-auth/core@1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.4.2))(@better-auth/utils@0.4.2)(drizzle-orm@1.0.0-rc.5-ab785fc(@types/pg@8.21.0)(pg@8.23.0)(zod@4.4.3))
|
||||
'@fontsource/inter':
|
||||
specifier: ^5.3.0
|
||||
version: 5.3.0
|
||||
@@ -62,9 +62,6 @@ importers:
|
||||
drizzle-orm:
|
||||
specifier: 1.0.0-rc.5-ab785fc
|
||||
version: 1.0.0-rc.5-ab785fc(@types/pg@8.21.0)(pg@8.23.0)(zod@4.4.3)
|
||||
fast-glob:
|
||||
specifier: ^3.3.3
|
||||
version: 3.3.3
|
||||
feed:
|
||||
specifier: ^6.0.0
|
||||
version: 6.0.0
|
||||
@@ -170,6 +167,9 @@ importers:
|
||||
tailwind-merge:
|
||||
specifier: ^3.6.0
|
||||
version: 3.6.0
|
||||
tinyglobby:
|
||||
specifier: ^0.2.17
|
||||
version: 0.2.17
|
||||
unified:
|
||||
specifier: ^11.0.5
|
||||
version: 11.0.5
|
||||
@@ -376,10 +376,6 @@ packages:
|
||||
resolution: {integrity: sha512-I5z7H3bf/41ktsNVLtpN0wAa336HkqIHQ5BuPLEhTkt1jVSyZpeNKIzTgEWmlxjdg81R0IgUCcaE+Ok3NvrfZg==}
|
||||
engines: {node: '>=6.9.0'}
|
||||
|
||||
'@babel/types@7.29.7':
|
||||
resolution: {integrity: sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==}
|
||||
engines: {node: '>=6.9.0'}
|
||||
|
||||
'@babel/types@7.29.8':
|
||||
resolution: {integrity: sha512-Vj1jF3cPfxg7OAfoI7QnVKLoILlm2JF9pnVHrX8qx7AHMiYWT+NDAA7jChlNgRS4WTLc/fD1lXLmPixluj+3Gg==}
|
||||
engines: {node: '>=6.9.0'}
|
||||
@@ -487,6 +483,9 @@ packages:
|
||||
'@better-auth/utils@0.4.2':
|
||||
resolution: {integrity: sha512-AUxrvu+HaaODsUyzDxFgwd/8RZ1yZaYo42LXKSrU2oGgR38pS1ij8nqQKNgtTWoYGpNevNXtCfgTy6loHveW9A==}
|
||||
|
||||
'@better-auth/utils@0.4.3':
|
||||
resolution: {integrity: sha512-/X4gRYJBwRuLFjjANVpTDJJkAhLD6Sf8SIBypQ+Q2kDW1MnCsyxUujJzdKYsp59i4c41+AaMtpY/WQAQumqtOA==}
|
||||
|
||||
'@better-fetch/fetch@1.3.1':
|
||||
resolution: {integrity: sha512-ABkD1WhyfPZprKRQI3bhATjeiFuNWC9PXhfGWqL+sg/gKrM977oFrYkdb4msM3hgUGonr7KlOsOFT5TU2rht9g==}
|
||||
|
||||
@@ -1631,8 +1630,8 @@ packages:
|
||||
peerDependencies:
|
||||
acorn: ^6.0.0 || ^7.0.0 || ^8.0.0
|
||||
|
||||
acorn@8.17.0:
|
||||
resolution: {integrity: sha512-xRQbDb9BnwDafYNn6Vwl839DYVjqXYb1XVGtWAZ1kcDc6iwAL4hg3B1dZlRiuENFeO2H53gFG3in621AdERVAg==}
|
||||
acorn@8.18.0:
|
||||
resolution: {integrity: sha512-lGq+9yr1/GuAWaVYIHRjvvySG5/4VfKIvC8EWxStPdcDh/Ka7FG3twP6v4d5BkravUilhIAsG4Qj83t02LWUPQ==}
|
||||
engines: {node: '>=0.4.0'}
|
||||
hasBin: true
|
||||
|
||||
@@ -1897,10 +1896,6 @@ packages:
|
||||
resolution: {integrity: sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==}
|
||||
engines: {node: '>= 0.6'}
|
||||
|
||||
content-type@2.0.0:
|
||||
resolution: {integrity: sha512-j/O/d7GcZCyNl7/hwZAb606rzqkyvaDctLmckbxLzHvFBzTJHuGEdodATcP3yIRoDrLHkIATJuvzbFlp/ki2cQ==}
|
||||
engines: {node: '>=18'}
|
||||
|
||||
content-type@2.1.0:
|
||||
resolution: {integrity: sha512-mj7UPXE0jaqaOsukNZRUEfEi2AcL7C/vwmwcHV0O97eO1E1pxBZuyjlZrx5seTaNBg1U6+o35wpa35Qfcc+7ag==}
|
||||
engines: {node: '>=18'}
|
||||
@@ -2211,8 +2206,8 @@ packages:
|
||||
encoding-sniffer@0.2.1:
|
||||
resolution: {integrity: sha512-5gvq20T6vfpekVtqrYQsSCFZ1wEg5+wW0/QaZMWkFr6BqD3NfKs0rLCx4rrVlSWJeZb5NBJgVLswK/w2MWU+Gw==}
|
||||
|
||||
enhanced-resolve@5.24.3:
|
||||
resolution: {integrity: sha512-PwKooW9JUzh5chmYfHM3IQl5OkK2u2Nm011MgeZrss3JmFraUx/fqrf78kk8GUMYoibx/14MdwTl/1WKkG7TpQ==}
|
||||
enhanced-resolve@5.24.5:
|
||||
resolution: {integrity: sha512-L1l8TNvomm6UVW5B253AGxQagSQr+vGwhMlrrfRS2qmhx46AMpMVJKQYLvWYbysTMY8VoicOvzHzoHMbyzB+4A==}
|
||||
engines: {node: '>=10.13.0'}
|
||||
|
||||
enquirer@2.4.1:
|
||||
@@ -2687,17 +2682,14 @@ packages:
|
||||
jose@5.10.0:
|
||||
resolution: {integrity: sha512-s+3Al/p9g32Iq+oqXxkW//7jk2Vig6FF1CFqzVXoTUXt2qz89YWbL+OwS17NFYEvxC35n0FKeGO2LGYSxeM2Gg==}
|
||||
|
||||
jose@6.2.8:
|
||||
resolution: {integrity: sha512-Bsdjwm3Qsd/P0jR+BHDe3LytDfY7WBq2HmCCLIwuVRHMuEC9ae7/R474GIUdF1NgCyZjzVo/A9DOiOBtXq8ZoQ==}
|
||||
|
||||
jose@6.2.9:
|
||||
resolution: {integrity: sha512-XrchZOFZUl/T3vTwRe8XK+cJrGtMF4th1ARnDfwbBXFKThGhlsxEE4Zu03AD/bjJSt/9jT/mxrOCkJWOg77aPA==}
|
||||
|
||||
js-tokens@4.0.0:
|
||||
resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==}
|
||||
|
||||
js-yaml@3.15.0:
|
||||
resolution: {integrity: sha512-ttBQIIQPDeLjpPOohtUdXuXUVoA2uIB6fEH9HyJ7234s5mBJ5wTx20njxplLZQgLaOfpmPQA7X2t5AX6tIPbog==}
|
||||
js-yaml@3.15.1:
|
||||
resolution: {integrity: sha512-S99WuO3HlhO3XN41EtYUNl9zzXjoJx7QvmipxsJVxtCBT0YHEFy+iOJhjSvrmV12nYhWpZaM8lPHkJm0yUMbag==}
|
||||
hasBin: true
|
||||
|
||||
js-yaml@4.3.1:
|
||||
@@ -2724,8 +2716,8 @@ packages:
|
||||
json-schema-typed@8.0.2:
|
||||
resolution: {integrity: sha512-fQhoXdcvc3V28x7C7BMs4P5+kNlgUURe2jmUT1T//oBRMDrqy1QPelJimwZGo7Hg9VPV3EQV5Bnq4hbFy2vetA==}
|
||||
|
||||
json-with-bigint@3.5.10:
|
||||
resolution: {integrity: sha512-Vcx+JVNEBts/xfcoCS69sKrOhOk/3TVlvlT+XzUOefVKnnrbYSCKpDCm10pohsJFtsJVYnwa/cXRZ4eElzaM6w==}
|
||||
json-with-bigint@3.5.11:
|
||||
resolution: {integrity: sha512-WvkM9Hfb9kqzCcbsvpwfWDvdfGZDhYuCoaCwHRe5q3LtULKkbrI/L6JYcN8owflgA3di5dP2yVAV2NVCXkgtkA==}
|
||||
|
||||
json5@2.2.3:
|
||||
resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==}
|
||||
@@ -2747,8 +2739,8 @@ packages:
|
||||
resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==}
|
||||
engines: {node: '>=6'}
|
||||
|
||||
kysely@0.29.4:
|
||||
resolution: {integrity: sha512-y5mVgQNkMbs1eK9Xyc0pmNdabN2wHhRYY/5r4W5HrUT1rYCEPeVNSj1RUJeSDKT3U0p+mXCvLgkrFuIafYI6BA==}
|
||||
kysely@0.29.5:
|
||||
resolution: {integrity: sha512-ooa+eSbBNPTo3MycPEuW5jdrxQdQwdtB3LC3h43FiXQbIry5tR0C5lDG7eealK0E4D7XjrnOP5DIUg/LyjRMYQ==}
|
||||
engines: {node: '>=22.0.0'}
|
||||
|
||||
lightningcss-android-arm64@1.32.0:
|
||||
@@ -3454,8 +3446,8 @@ packages:
|
||||
resolution: {integrity: sha512-PWaYA1L/q9u2u7xYQi+Y3L3Yfnie7XyLeaJICV1MGD6LprsBxcAqGjYyr0eY3p+QdsA+x/Irkt4Qif8D63+Sbw==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
|
||||
readdirp@5.0.0:
|
||||
resolution: {integrity: sha512-9u/XQ1pvrQtYyMpZe7DXKv2p5CNvyVwzUB6uhLAnQwHMSgKMBR62lc7AHljaeteeHXn11XTAaLLUVZYVZyuRBQ==}
|
||||
readdirp@5.1.1:
|
||||
resolution: {integrity: sha512-Kko+Y5XQ6fM+Ce3dq3m9YGxnacYZYl9cA1wZjaF3Vbry2L3i1qVg8+CAgNPsXRArPMUMCaOR7oa9Nqntc43JKA==}
|
||||
engines: {node: '>= 20.19.0'}
|
||||
|
||||
recast@0.23.21:
|
||||
@@ -3591,8 +3583,8 @@ packages:
|
||||
safer-buffer@2.1.2:
|
||||
resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==}
|
||||
|
||||
sax@1.6.0:
|
||||
resolution: {integrity: sha512-6R3J5M4AcbtLUdZmRv2SygeVaM7IhrLXu9BmnOGmmACak8fiUtOsYNWUS4uK7upbmHIBbLBeFeI//477BKLBzA==}
|
||||
sax@1.6.1:
|
||||
resolution: {integrity: sha512-42tBVwLWnaQvW5zc4HbZrTuWccECCZfBi92FDuwtqxasH+JbPB3/FOKb1m222K42R4WxuxzzMsTswfzgtSu64Q==}
|
||||
engines: {node: '>=11.0.0'}
|
||||
|
||||
scheduler@0.27.0:
|
||||
@@ -3624,8 +3616,8 @@ packages:
|
||||
resolution: {integrity: sha512-1gnZf7DFcoIcajTjTwjwuDjzuz4PPcY2StKPlsGAQ1+YH20IRVrBaXSWmdjowTJ6u8Rc01PoYOGHXfP1mYcZNQ==}
|
||||
engines: {node: '>= 18'}
|
||||
|
||||
serialize-javascript@7.0.7:
|
||||
resolution: {integrity: sha512-YAy8Od6KV+uuwUuU50np8fGB/Aues6Y0nAhA9y/hId74PlKUcme4pXcBD46NWKr1Q4osN/iseZ17YqO1XfmI8g==}
|
||||
serialize-javascript@7.1.0:
|
||||
resolution: {integrity: sha512-RNEqWOyhhUQYN9V1GfHwu9AR/g+NTciH6Z5u3/no6X3/w+04J2lVDL+svFQVXgXrEGBMG2puMVN3gq2SNGuTGw==}
|
||||
engines: {node: '>=20.0.0'}
|
||||
|
||||
serve-static@2.2.1:
|
||||
@@ -3795,8 +3787,8 @@ packages:
|
||||
babel-plugin-macros:
|
||||
optional: true
|
||||
|
||||
swr@2.4.2:
|
||||
resolution: {integrity: sha512-ej644Y2bvkIajfR32KGeSSdBXQW+ScjGjkybZgSE7kFpk9eGnV44XY9FJylXi+W75pavSX1PVNB57W5EbhGIYw==}
|
||||
swr@2.5.1:
|
||||
resolution: {integrity: sha512-BRw55e8r0B7SpDN20CAzoQAHl7y1yP7/Zt7oqUjMv0vSt2u2Xnkm88Ws+VypbV9BXHQVuSuyVq7zMjO16wSExw==}
|
||||
peerDependencies:
|
||||
react: ^16.11.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
|
||||
|
||||
@@ -3875,10 +3867,6 @@ packages:
|
||||
undici-types@8.3.0:
|
||||
resolution: {integrity: sha512-j375ScV60dom+YkPFIfTLcOiPxkN/buHz5GobjLhixFuANaNs3C9l4GmrWqejgXWJ7BbJcFYpTEUkS1Ge8bpZQ==}
|
||||
|
||||
undici@7.28.0:
|
||||
resolution: {integrity: sha512-cRZYrTDwWznlnRiPjggAGxZXanty6M8RV1ff8Wm4LWXBp7/IG8v5DnOm74DtUBp9OONpK75YlPnIjQqX0dBDtA==}
|
||||
engines: {node: '>=20.18.1'}
|
||||
|
||||
undici@7.29.0:
|
||||
resolution: {integrity: sha512-IDxfleLmmbSskfWSUATiN1nfn2rDuvnMOqb5CWR92iIfojA0Ud+ulOAAEQ57LPr9rWmsreUyf5lwyao+7GNNVw==}
|
||||
engines: {node: '>=20.18.1'}
|
||||
@@ -4222,11 +4210,6 @@ snapshots:
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
|
||||
'@babel/types@7.29.7':
|
||||
dependencies:
|
||||
'@babel/helper-string-parser': 7.29.7
|
||||
'@babel/helper-validator-identifier': 7.29.7
|
||||
|
||||
'@babel/types@7.29.8':
|
||||
dependencies:
|
||||
'@babel/helper-string-parser': 7.29.7
|
||||
@@ -4256,50 +4239,50 @@ snapshots:
|
||||
optionalDependencies:
|
||||
'@types/react': 19.2.18
|
||||
|
||||
'@better-auth/core@1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.8)(kysely@0.29.4)(nanostores@1.4.2)':
|
||||
'@better-auth/core@1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.4.2)':
|
||||
dependencies:
|
||||
'@better-auth/utils': 0.4.2
|
||||
'@better-fetch/fetch': 1.3.1
|
||||
'@opentelemetry/semantic-conventions': 1.43.0
|
||||
'@standard-schema/spec': 1.1.0
|
||||
better-call: 1.3.7(zod@4.4.3)
|
||||
jose: 6.2.8
|
||||
kysely: 0.29.4
|
||||
jose: 6.2.9
|
||||
kysely: 0.29.5
|
||||
nanostores: 1.4.2
|
||||
zod: 4.4.3
|
||||
|
||||
'@better-auth/drizzle-adapter@1.7.0-rc.4(@better-auth/core@1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.8)(kysely@0.29.4)(nanostores@1.4.2))(@better-auth/utils@0.4.2)(drizzle-orm@1.0.0-rc.5-ab785fc(@types/pg@8.21.0)(pg@8.23.0)(zod@4.4.3))':
|
||||
'@better-auth/drizzle-adapter@1.7.0-rc.4(@better-auth/core@1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.4.2))(@better-auth/utils@0.4.2)(drizzle-orm@1.0.0-rc.5-ab785fc(@types/pg@8.21.0)(pg@8.23.0)(zod@4.4.3))':
|
||||
dependencies:
|
||||
'@better-auth/core': 1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.8)(kysely@0.29.4)(nanostores@1.4.2)
|
||||
'@better-auth/core': 1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.4.2)
|
||||
'@better-auth/utils': 0.4.2
|
||||
optionalDependencies:
|
||||
drizzle-orm: 1.0.0-rc.5-ab785fc(@types/pg@8.21.0)(pg@8.23.0)(zod@4.4.3)
|
||||
|
||||
'@better-auth/kysely-adapter@1.7.0-rc.4(@better-auth/core@1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.8)(kysely@0.29.4)(nanostores@1.4.2))(@better-auth/utils@0.4.2)(kysely@0.29.4)':
|
||||
'@better-auth/kysely-adapter@1.7.0-rc.4(@better-auth/core@1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.4.2))(@better-auth/utils@0.4.2)(kysely@0.29.5)':
|
||||
dependencies:
|
||||
'@better-auth/core': 1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.8)(kysely@0.29.4)(nanostores@1.4.2)
|
||||
'@better-auth/core': 1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.4.2)
|
||||
'@better-auth/utils': 0.4.2
|
||||
optionalDependencies:
|
||||
kysely: 0.29.4
|
||||
kysely: 0.29.5
|
||||
|
||||
'@better-auth/memory-adapter@1.7.0-rc.4(@better-auth/core@1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.8)(kysely@0.29.4)(nanostores@1.4.2))(@better-auth/utils@0.4.2)':
|
||||
'@better-auth/memory-adapter@1.7.0-rc.4(@better-auth/core@1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.4.2))(@better-auth/utils@0.4.2)':
|
||||
dependencies:
|
||||
'@better-auth/core': 1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.8)(kysely@0.29.4)(nanostores@1.4.2)
|
||||
'@better-auth/core': 1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.4.2)
|
||||
'@better-auth/utils': 0.4.2
|
||||
|
||||
'@better-auth/mongo-adapter@1.7.0-rc.4(@better-auth/core@1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.8)(kysely@0.29.4)(nanostores@1.4.2))(@better-auth/utils@0.4.2)':
|
||||
'@better-auth/mongo-adapter@1.7.0-rc.4(@better-auth/core@1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.4.2))(@better-auth/utils@0.4.2)':
|
||||
dependencies:
|
||||
'@better-auth/core': 1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.8)(kysely@0.29.4)(nanostores@1.4.2)
|
||||
'@better-auth/core': 1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.4.2)
|
||||
'@better-auth/utils': 0.4.2
|
||||
|
||||
'@better-auth/prisma-adapter@1.7.0-rc.4(@better-auth/core@1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.8)(kysely@0.29.4)(nanostores@1.4.2))(@better-auth/utils@0.4.2)':
|
||||
'@better-auth/prisma-adapter@1.7.0-rc.4(@better-auth/core@1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.4.2))(@better-auth/utils@0.4.2)':
|
||||
dependencies:
|
||||
'@better-auth/core': 1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.8)(kysely@0.29.4)(nanostores@1.4.2)
|
||||
'@better-auth/core': 1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.4.2)
|
||||
'@better-auth/utils': 0.4.2
|
||||
|
||||
'@better-auth/telemetry@1.7.0-rc.4(@better-auth/core@1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.8)(kysely@0.29.4)(nanostores@1.4.2))(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)':
|
||||
'@better-auth/telemetry@1.7.0-rc.4(@better-auth/core@1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.4.2))(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)':
|
||||
dependencies:
|
||||
'@better-auth/core': 1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.8)(kysely@0.29.4)(nanostores@1.4.2)
|
||||
'@better-auth/core': 1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.4.2)
|
||||
'@better-auth/utils': 0.4.2
|
||||
'@better-fetch/fetch': 1.3.1
|
||||
|
||||
@@ -4307,6 +4290,10 @@ snapshots:
|
||||
dependencies:
|
||||
'@noble/hashes': 2.3.0
|
||||
|
||||
'@better-auth/utils@0.4.3':
|
||||
dependencies:
|
||||
'@noble/hashes': 2.3.0
|
||||
|
||||
'@better-fetch/fetch@1.3.1': {}
|
||||
|
||||
'@clerc/core@1.3.1':
|
||||
@@ -4357,7 +4344,7 @@ snapshots:
|
||||
p-limit: 6.2.0
|
||||
picomatch: 4.0.5
|
||||
pluralize: 8.0.0
|
||||
serialize-javascript: 7.0.7
|
||||
serialize-javascript: 7.1.0
|
||||
tinyglobby: 0.2.17
|
||||
typescript: 6.0.3
|
||||
yaml: 2.9.0
|
||||
@@ -4652,7 +4639,7 @@ snapshots:
|
||||
'@types/estree-jsx': 1.0.5
|
||||
'@types/hast': 3.0.5
|
||||
'@types/mdx': 2.0.14
|
||||
acorn: 8.17.0
|
||||
acorn: 8.18.0
|
||||
collapse-white-space: 2.1.0
|
||||
devlop: 1.1.0
|
||||
estree-util-is-identifier-name: 3.0.0
|
||||
@@ -4661,7 +4648,7 @@ snapshots:
|
||||
hast-util-to-jsx-runtime: 2.3.6
|
||||
markdown-extensions: 2.0.0
|
||||
recma-build-jsx: 1.0.0
|
||||
recma-jsx: 1.0.1(acorn@8.17.0)
|
||||
recma-jsx: 1.0.1(acorn@8.18.0)
|
||||
recma-stringify: 1.0.0
|
||||
rehype-recma: 1.0.0
|
||||
remark-mdx: 3.1.1
|
||||
@@ -4787,8 +4774,8 @@ snapshots:
|
||||
'@octokit/endpoint': 11.0.4
|
||||
'@octokit/request-error': 7.1.1
|
||||
'@octokit/types': 17.0.0
|
||||
content-type: 2.0.0
|
||||
json-with-bigint: 3.5.10
|
||||
content-type: 2.1.0
|
||||
json-with-bigint: 3.5.11
|
||||
universal-user-agent: 7.0.3
|
||||
|
||||
'@octokit/types@17.0.0':
|
||||
@@ -4989,7 +4976,7 @@ snapshots:
|
||||
'@tailwindcss/node@4.3.3':
|
||||
dependencies:
|
||||
'@jridgewell/remapping': 2.3.5
|
||||
enhanced-resolve: 5.24.3
|
||||
enhanced-resolve: 5.24.5
|
||||
jiti: 2.7.0
|
||||
lightningcss: 1.32.0
|
||||
magic-string: 0.30.21
|
||||
@@ -5154,11 +5141,11 @@ snapshots:
|
||||
mime-types: 3.0.2
|
||||
negotiator: 1.0.0
|
||||
|
||||
acorn-jsx@5.3.2(acorn@8.17.0):
|
||||
acorn-jsx@5.3.2(acorn@8.18.0):
|
||||
dependencies:
|
||||
acorn: 8.17.0
|
||||
acorn: 8.18.0
|
||||
|
||||
acorn@8.17.0: {}
|
||||
acorn@8.18.0: {}
|
||||
|
||||
ajv-formats@2.1.1(ajv@8.20.0):
|
||||
optionalDependencies:
|
||||
@@ -5199,7 +5186,7 @@ snapshots:
|
||||
|
||||
babel-plugin-react-compiler@1.0.0:
|
||||
dependencies:
|
||||
'@babel/types': 7.29.7
|
||||
'@babel/types': 7.29.8
|
||||
|
||||
bail@2.0.2: {}
|
||||
|
||||
@@ -5209,21 +5196,21 @@ snapshots:
|
||||
|
||||
better-auth@1.7.0-rc.4(drizzle-kit@1.0.0-rc.5-ab785fc)(drizzle-orm@1.0.0-rc.5-ab785fc(@types/pg@8.21.0)(pg@8.23.0)(zod@4.4.3))(next@16.3.1(@babel/core@7.29.7)(@types/node@26.2.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8))(pg@8.23.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8):
|
||||
dependencies:
|
||||
'@better-auth/core': 1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.8)(kysely@0.29.4)(nanostores@1.4.2)
|
||||
'@better-auth/drizzle-adapter': 1.7.0-rc.4(@better-auth/core@1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.8)(kysely@0.29.4)(nanostores@1.4.2))(@better-auth/utils@0.4.2)(drizzle-orm@1.0.0-rc.5-ab785fc(@types/pg@8.21.0)(pg@8.23.0)(zod@4.4.3))
|
||||
'@better-auth/kysely-adapter': 1.7.0-rc.4(@better-auth/core@1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.8)(kysely@0.29.4)(nanostores@1.4.2))(@better-auth/utils@0.4.2)(kysely@0.29.4)
|
||||
'@better-auth/memory-adapter': 1.7.0-rc.4(@better-auth/core@1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.8)(kysely@0.29.4)(nanostores@1.4.2))(@better-auth/utils@0.4.2)
|
||||
'@better-auth/mongo-adapter': 1.7.0-rc.4(@better-auth/core@1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.8)(kysely@0.29.4)(nanostores@1.4.2))(@better-auth/utils@0.4.2)
|
||||
'@better-auth/prisma-adapter': 1.7.0-rc.4(@better-auth/core@1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.8)(kysely@0.29.4)(nanostores@1.4.2))(@better-auth/utils@0.4.2)
|
||||
'@better-auth/telemetry': 1.7.0-rc.4(@better-auth/core@1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.8)(kysely@0.29.4)(nanostores@1.4.2))(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)
|
||||
'@better-auth/core': 1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.4.2)
|
||||
'@better-auth/drizzle-adapter': 1.7.0-rc.4(@better-auth/core@1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.4.2))(@better-auth/utils@0.4.2)(drizzle-orm@1.0.0-rc.5-ab785fc(@types/pg@8.21.0)(pg@8.23.0)(zod@4.4.3))
|
||||
'@better-auth/kysely-adapter': 1.7.0-rc.4(@better-auth/core@1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.4.2))(@better-auth/utils@0.4.2)(kysely@0.29.5)
|
||||
'@better-auth/memory-adapter': 1.7.0-rc.4(@better-auth/core@1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.4.2))(@better-auth/utils@0.4.2)
|
||||
'@better-auth/mongo-adapter': 1.7.0-rc.4(@better-auth/core@1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.4.2))(@better-auth/utils@0.4.2)
|
||||
'@better-auth/prisma-adapter': 1.7.0-rc.4(@better-auth/core@1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.4.2))(@better-auth/utils@0.4.2)
|
||||
'@better-auth/telemetry': 1.7.0-rc.4(@better-auth/core@1.7.0-rc.4(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-call@1.3.7(zod@4.4.3))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.4.2))(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)
|
||||
'@better-auth/utils': 0.4.2
|
||||
'@better-fetch/fetch': 1.3.1
|
||||
'@noble/ciphers': 2.3.0
|
||||
'@noble/hashes': 2.3.0
|
||||
better-call: 1.3.7(zod@4.4.3)
|
||||
defu: 6.1.7
|
||||
jose: 6.2.8
|
||||
kysely: 0.29.4
|
||||
jose: 6.2.9
|
||||
kysely: 0.29.5
|
||||
nanostores: 1.4.2
|
||||
zod: 4.4.3
|
||||
optionalDependencies:
|
||||
@@ -5239,7 +5226,7 @@ snapshots:
|
||||
|
||||
better-call@1.3.7(zod@4.4.3):
|
||||
dependencies:
|
||||
'@better-auth/utils': 0.4.2
|
||||
'@better-auth/utils': 0.4.3
|
||||
'@better-fetch/fetch': 1.3.1
|
||||
rou3: 0.7.12
|
||||
set-cookie-parser: 3.1.2
|
||||
@@ -5332,12 +5319,12 @@ snapshots:
|
||||
parse5: 7.3.0
|
||||
parse5-htmlparser2-tree-adapter: 7.1.0
|
||||
parse5-parser-stream: 7.1.2
|
||||
undici: 7.28.0
|
||||
undici: 7.29.0
|
||||
whatwg-mimetype: 4.0.0
|
||||
|
||||
chokidar@5.0.0:
|
||||
dependencies:
|
||||
readdirp: 5.0.0
|
||||
readdirp: 5.1.1
|
||||
|
||||
class-variance-authority@0.7.1:
|
||||
dependencies:
|
||||
@@ -5380,8 +5367,6 @@ snapshots:
|
||||
|
||||
content-type@1.0.5: {}
|
||||
|
||||
content-type@2.0.0: {}
|
||||
|
||||
content-type@2.1.0: {}
|
||||
|
||||
convert-source-map@2.0.0: {}
|
||||
@@ -5524,7 +5509,7 @@ snapshots:
|
||||
iconv-lite: 0.6.3
|
||||
whatwg-encoding: 3.1.1
|
||||
|
||||
enhanced-resolve@5.24.3:
|
||||
enhanced-resolve@5.24.5:
|
||||
dependencies:
|
||||
graceful-fs: 4.2.11
|
||||
tapable: 2.3.3
|
||||
@@ -5564,7 +5549,7 @@ snapshots:
|
||||
esast-util-from-js@2.0.1:
|
||||
dependencies:
|
||||
'@types/estree-jsx': 1.0.5
|
||||
acorn: 8.17.0
|
||||
acorn: 8.18.0
|
||||
esast-util-from-estree: 2.0.0
|
||||
vfile-message: 4.0.3
|
||||
|
||||
@@ -5853,7 +5838,7 @@ snapshots:
|
||||
|
||||
gray-matter@4.0.3:
|
||||
dependencies:
|
||||
js-yaml: 3.15.0
|
||||
js-yaml: 3.15.1
|
||||
kind-of: 6.0.3
|
||||
section-matter: 1.0.0
|
||||
strip-bom-string: 1.0.0
|
||||
@@ -6082,13 +6067,11 @@ snapshots:
|
||||
|
||||
jose@5.10.0: {}
|
||||
|
||||
jose@6.2.8: {}
|
||||
|
||||
jose@6.2.9: {}
|
||||
|
||||
js-tokens@4.0.0: {}
|
||||
|
||||
js-yaml@3.15.0:
|
||||
js-yaml@3.15.1:
|
||||
dependencies:
|
||||
argparse: 1.0.10
|
||||
esprima: 4.0.1
|
||||
@@ -6109,7 +6092,7 @@ snapshots:
|
||||
|
||||
json-schema-typed@8.0.2: {}
|
||||
|
||||
json-with-bigint@3.5.10: {}
|
||||
json-with-bigint@3.5.11: {}
|
||||
|
||||
json5@2.2.3: {}
|
||||
|
||||
@@ -6125,7 +6108,7 @@ snapshots:
|
||||
|
||||
kleur@4.1.5: {}
|
||||
|
||||
kysely@0.29.4: {}
|
||||
kysely@0.29.5: {}
|
||||
|
||||
lightningcss-android-arm64@1.32.0:
|
||||
optional: true
|
||||
@@ -6514,8 +6497,8 @@ snapshots:
|
||||
|
||||
micromark-extension-mdxjs@3.0.0:
|
||||
dependencies:
|
||||
acorn: 8.17.0
|
||||
acorn-jsx: 5.3.2(acorn@8.17.0)
|
||||
acorn: 8.18.0
|
||||
acorn-jsx: 5.3.2(acorn@8.18.0)
|
||||
micromark-extension-mdx-expression: 3.0.1
|
||||
micromark-extension-mdx-jsx: 3.0.2
|
||||
micromark-extension-mdx-md: 2.0.0
|
||||
@@ -7106,11 +7089,11 @@ snapshots:
|
||||
clsx: 2.1.1
|
||||
react: 19.2.8
|
||||
react-dom: 19.2.8(react@19.2.8)
|
||||
swr: 2.4.2(react@19.2.8)
|
||||
swr: 2.5.1(react@19.2.8)
|
||||
|
||||
react@19.2.8: {}
|
||||
|
||||
readdirp@5.0.0: {}
|
||||
readdirp@5.1.1: {}
|
||||
|
||||
recast@0.23.21:
|
||||
dependencies:
|
||||
@@ -7126,10 +7109,10 @@ snapshots:
|
||||
estree-util-build-jsx: 3.0.1
|
||||
vfile: 6.0.3
|
||||
|
||||
recma-jsx@1.0.1(acorn@8.17.0):
|
||||
recma-jsx@1.0.1(acorn@8.18.0):
|
||||
dependencies:
|
||||
acorn: 8.17.0
|
||||
acorn-jsx: 5.3.2(acorn@8.17.0)
|
||||
acorn: 8.18.0
|
||||
acorn-jsx: 5.3.2(acorn@8.18.0)
|
||||
estree-util-to-js: 2.0.0
|
||||
recma-parse: 1.0.0
|
||||
recma-stringify: 1.0.0
|
||||
@@ -7354,7 +7337,7 @@ snapshots:
|
||||
|
||||
safer-buffer@2.1.2: {}
|
||||
|
||||
sax@1.6.0: {}
|
||||
sax@1.6.1: {}
|
||||
|
||||
scheduler@0.27.0: {}
|
||||
|
||||
@@ -7393,7 +7376,7 @@ snapshots:
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
|
||||
serialize-javascript@7.0.7: {}
|
||||
serialize-javascript@7.1.0: {}
|
||||
|
||||
serve-static@2.2.1:
|
||||
dependencies:
|
||||
@@ -7614,7 +7597,7 @@ snapshots:
|
||||
optionalDependencies:
|
||||
'@babel/core': 7.29.7
|
||||
|
||||
swr@2.4.2(react@19.2.8):
|
||||
swr@2.5.1(react@19.2.8):
|
||||
dependencies:
|
||||
dequal: 2.0.3
|
||||
react: 19.2.8
|
||||
@@ -7678,8 +7661,6 @@ snapshots:
|
||||
|
||||
undici-types@8.3.0: {}
|
||||
|
||||
undici@7.28.0: {}
|
||||
|
||||
undici@7.29.0: {}
|
||||
|
||||
unicorn-magic@0.3.0: {}
|
||||
@@ -7804,7 +7785,7 @@ snapshots:
|
||||
|
||||
xml-js@1.6.11:
|
||||
dependencies:
|
||||
sax: 1.6.0
|
||||
sax: 1.6.1
|
||||
|
||||
xtend@4.0.2: {}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user