secure: bump next version

This commit is contained in:
Oleg Proskurin 2025-12-14 23:55:47 +07:00
parent d798faec41
commit 257131c12d
22 changed files with 115 additions and 190 deletions

View File

@ -12,7 +12,7 @@
"dependencies": {
"@banatie/database": "workspace:*",
"lucide-react": "^0.400.0",
"next": "15.5.4",
"next": "15.5.9",
"react": "19.1.0",
"react-dom": "19.1.0"
},

View File

@ -1,19 +1,14 @@
'use client';
import { ReactNode } from 'react';
import { usePathname } from 'next/navigation';
import { SubsectionNav } from '@/components/shared/SubsectionNav';
interface AdminLayoutProps {
children: ReactNode;
}
const navItems = [
{ label: 'Master Key', href: '/admin/master' },
{ label: 'API Keys', href: '/admin/apikeys' },
];
export default function AdminLayout({ children }: AdminLayoutProps) {
export default function AdminLayout({ children }: { children: React.ReactNode }) {
const pathname = usePathname();
return (

View File

@ -1,22 +1,17 @@
'use client';
import { ReactNode } from 'react';
import { usePathname } from 'next/navigation';
import { ApiKeyWidget } from '@/components/shared/ApiKeyWidget/apikey-widget';
import { ApiKeyProvider } from '@/components/shared/ApiKeyWidget/apikey-context';
import { PageProvider } from '@/contexts/page-context';
interface DemoLayoutProps {
children: ReactNode;
}
const navItems = [
{ label: 'Text to Image', href: '/demo/tti' },
{ label: 'Upload', href: '/demo/upload' },
{ label: 'Gallery', href: '/demo/gallery' },
];
export default function DemoLayout({ children }: DemoLayoutProps) {
export default function DemoLayout({ children }: { children: React.ReactNode }) {
const pathname = usePathname();
return (

View File

@ -1,6 +1,5 @@
'use client';
import { ReactNode } from 'react';
import { usePathname } from 'next/navigation';
import { DocsSidebar } from '@/components/docs/layout/DocsSidebar';
import { ThreeColumnLayout } from '@/components/layout/ThreeColumnLayout';
@ -8,41 +7,13 @@ import { ApiKeyWidget } from '@/components/shared/ApiKeyWidget/apikey-widget';
import { ApiKeyProvider } from '@/components/shared/ApiKeyWidget/apikey-context';
import { PageProvider } from '@/contexts/page-context';
/**
* Root Documentation Layout
*
* Provides shared layout elements for all documentation pages:
* - SubsectionNav at the top
* - Three-column layout (left sidebar + content + right TOC via DocPage)
* - Background gradients
*
* Uses ThreeColumnLayout for consistent column structure:
* - Left: DocsSidebar (w-64, hidden lg:block)
* - Center: Page content (flex-1)
* - Right: Handled by DocPage component
*
* Pages handle their own:
* - Breadcrumbs (manually specified)
* - Article content
* - TOC sidebar (on the right via DocPage)
*
* Features:
* - Animated gradient background matching landing page
* - Automatic active page detection via pathname
* - Responsive layout (mobile tablet desktop)
*/
interface DocsRootLayoutProps {
children: ReactNode;
}
const navItems = [
{ label: 'Documentation', href: '/docs' },
{ label: 'Demo', href: '/demo' },
{ label: 'Examples', href: '/docs/examples' },
];
export default function DocsRootLayout({ children }: DocsRootLayoutProps) {
export default function DocsRootLayout({ children }: { children: React.ReactNode }) {
const pathname = usePathname();
return (

View File

@ -1,6 +1,6 @@
import { useState, useEffect, ReactNode } from 'react';
import { useState, useEffect } from 'react';
export default function GlowEffect({ children }: { children: ReactNode }) {
export default function GlowEffect({ children }: { children: React.ReactNode }) {
const [isPropertyRegistered, setIsPropertyRegistered] = useState(false);
// Register CSS property in component body (before render)

View File

@ -129,8 +129,6 @@
* />
*/
import { ReactNode } from 'react';
/**
* Size variant determining the visual scale of the hero
*/
@ -143,7 +141,7 @@ export interface HeroProps {
/** The main page title (renders as h1) */
title: string;
/** Supporting description or context */
subtitle: string | ReactNode;
subtitle: string | React.ReactNode;
/** Size variant (default: 'default') */
size?: HeroSize;
/** Optional CSS class name for additional styling */

View File

@ -103,8 +103,6 @@
* <InlineCode color="primary">apiKey</InlineCode>
*/
import { ReactNode } from 'react';
/**
* Semantic color variants for inline code
*/
@ -115,7 +113,7 @@ export type InlineCodeColor = 'primary' | 'success' | 'error' | 'neutral';
*/
export interface InlineCodeProps {
/** The code content to display */
children: ReactNode;
children: React.ReactNode;
/** Semantic color variant (default: 'primary') */
color?: InlineCodeColor;
/** Optional CSS class name for additional styling */

View File

@ -167,8 +167,6 @@
* </LinkCardGrid>
*/
import { ReactNode } from 'react';
/**
* Column configuration for the grid
*/
@ -181,7 +179,7 @@ export interface LinkCardGridProps {
/** Number of columns at tablet/desktop breakpoints */
columns?: GridColumns;
/** LinkCard components to display in the grid */
children: ReactNode;
children: React.ReactNode;
/** Optional CSS class name for additional styling */
className?: string;
}

View File

@ -103,7 +103,6 @@
* <MethodBadge method="POST" size="md" />
*/
import { ReactNode } from 'react';
/**
* HTTP method types following REST conventions

View File

@ -137,8 +137,6 @@
* </SectionHeader>
*/
import { ReactNode } from 'react';
/**
* Heading level determining HTML tag and visual styling
*/
@ -151,7 +149,7 @@ export interface SectionHeaderProps {
/** Heading level (h2 or h3) for semantic structure */
level: SectionHeaderLevel;
/** The heading text content */
children: ReactNode;
children: React.ReactNode;
/** Optional ID for anchor linking and table of contents */
id?: string;
/** Optional CSS class name for additional styling (e.g., custom margins) */

View File

@ -95,8 +95,6 @@
* <StatusBadge status="success" size="md">200 Success</StatusBadge>
*/
import { ReactNode } from 'react';
/**
* Semantic status type representing the meaning/severity of the badge
*/
@ -114,7 +112,7 @@ export interface StatusBadgeProps {
/** The semantic status that determines color and meaning */
status: StatusType;
/** The content to display inside the badge */
children: ReactNode;
children: React.ReactNode;
/** Size variant (default: 'md') */
size?: StatusSize;
/** Optional CSS class name for additional styling */

View File

@ -29,7 +29,6 @@
* ```
*/
import { ReactNode } from 'react';
import { Breadcrumb } from '@/components/docs/shared/Breadcrumb';
import { DocsTOC } from '@/components/docs/layout/DocsTOC';
import { SectionHeader, LinkCard, LinkCardGrid } from '@/components/docs/blocks';
@ -81,7 +80,7 @@ export interface DocPageProps {
};
/** Page content (Hero, sections, etc.) */
children: ReactNode;
children: React.ReactNode;
}
/**

View File

@ -24,12 +24,10 @@
* - Accessibility compliant (WCAG 2.1 AA)
*/
import { ReactNode } from 'react';
interface DocsLayoutProps {
sidebar: ReactNode;
children: ReactNode;
toc: ReactNode;
sidebar: React.ReactNode;
children: React.ReactNode;
toc: React.ReactNode;
}
export const DocsLayout = ({ sidebar, children, toc }: DocsLayoutProps) => {

View File

@ -21,11 +21,9 @@
* />
*/
import { ReactNode } from 'react';
interface TableProps {
headers: string[];
rows: (string | ReactNode)[][];
rows: (string | React.ReactNode)[][];
sortable?: boolean;
}

View File

@ -30,13 +30,11 @@
* </TipBox>
*/
import { ReactNode } from 'react';
type TipType = 'info' | 'warning' | 'success';
type TipVariant = 'compact' | 'prominent';
interface TipBoxProps {
children: ReactNode;
children: React.ReactNode;
variant?: TipVariant;
type?: TipType;
}

View File

@ -39,20 +39,18 @@
* - Optional columns enable 1, 2, or 3 column layouts
*/
import { ReactNode } from 'react';
/**
* Props for ThreeColumnLayout component
*/
export interface ThreeColumnLayoutProps {
/** Left column content (w-64, hidden until lg breakpoint) */
left?: ReactNode;
left?: React.ReactNode;
/** Center column content (flex-1, always visible) */
center: ReactNode;
center: React.ReactNode;
/** Right column content (w-56, hidden until xl breakpoint) */
right?: ReactNode;
right?: React.ReactNode;
/** Additional classes for left column */
leftClassName?: string;

View File

@ -1,7 +1,5 @@
import { ReactNode } from 'react';
interface NarrowSectionProps {
children: ReactNode;
children: React.ReactNode;
className?: string;
bgClassName?: string;
}

View File

@ -1,7 +1,5 @@
import { ReactNode } from 'react';
interface SectionProps {
children: ReactNode;
children: React.ReactNode;
className?: string;
bgClassName?: string;
}

View File

@ -23,7 +23,7 @@
* />
*/
import { useState, ReactNode } from 'react';
import { useState } from 'react';
import { ThreeColumnLayout } from '@/components/layout/ThreeColumnLayout';
interface NavItem {
@ -38,9 +38,9 @@ interface SubsectionNavProps {
ctaHref?: string;
onCtaClick?: () => void;
/** Optional content for left column (w-64, hidden until lg) */
leftSlot?: ReactNode;
leftSlot?: React.ReactNode;
/** Optional content for right column (w-56, hidden until xl) */
rightSlot?: ReactNode;
rightSlot?: React.ReactNode;
}
export const SubsectionNav = ({ items, currentPath, leftSlot, rightSlot }: SubsectionNavProps) => {

View File

@ -1,6 +1,6 @@
'use client';
import { createContext, useContext, useState, useEffect, ReactNode } from 'react';
import { createContext, useContext, useState, useEffect } from 'react';
import { usePathname } from 'next/navigation';
import { SubsectionNav } from '@/components/shared/SubsectionNav';
import { CompactFooter } from '@/components/shared/CompactFooter';
@ -13,15 +13,15 @@ type NavItem = {
type PageContextValue = {
isOpen: boolean;
openModal: (content: ReactNode) => void;
openModal: (content: React.ReactNode) => void;
closeModal: () => void;
};
type PageProviderProps = {
navItems: NavItem[];
currentPath: string;
rightSlot?: ReactNode;
children: ReactNode;
rightSlot?: React.ReactNode;
children: React.ReactNode;
};
const PageContext = createContext<PageContextValue | null>(null);
@ -36,10 +36,10 @@ export const usePageContext = () => {
export const PageProvider = ({ navItems, currentPath, rightSlot, children }: PageProviderProps) => {
const [isOpen, setIsOpen] = useState(false);
const [modalContent, setModalContent] = useState<ReactNode | null>(null);
const [modalContent, setModalContent] = useState<React.ReactNode | null>(null);
const pathname = usePathname();
const openModal = (content: ReactNode) => {
const openModal = (content: React.ReactNode) => {
setIsOpen(true);
setModalContent(content);
};

View File

@ -34,6 +34,12 @@
],
"author": "",
"license": "MIT",
"pnpm": {
"overrides": {
"@types/react": "19.1.6",
"@types/react-dom": "19.1.5"
}
},
"devDependencies": {
"@vitest/ui": "^3.2.4",
"eslint-config-prettier": "^9.1.2",

View File

@ -4,6 +4,10 @@ settings:
autoInstallPeers: true
excludeLinksFromLockfile: false
overrides:
'@types/react': 19.1.6
'@types/react-dom': 19.1.5
importers:
.:
@ -42,11 +46,11 @@ importers:
specifier: ^20.0.0
version: 20.19.17
'@types/react':
specifier: ^18.2.0
version: 18.3.24
specifier: 19.1.6
version: 19.1.6
'@types/react-dom':
specifier: ^18.2.0
version: 18.3.7(@types/react@18.3.24)
specifier: 19.1.5
version: 19.1.5(@types/react@19.1.6)
lucide-react:
specifier: ^0.400.0
version: 0.400.0(react@18.3.1)
@ -104,7 +108,7 @@ importers:
version: 17.2.2
drizzle-orm:
specifier: ^0.36.4
version: 0.36.4(@types/react@19.1.16)(postgres@3.4.7)(react@19.1.0)
version: 0.36.4(@types/react@19.1.6)(postgres@3.4.7)(react@19.1.0)
express:
specifier: ^5.1.0
version: 5.1.0
@ -200,8 +204,8 @@ importers:
specifier: ^0.400.0
version: 0.400.0(react@19.1.0)
next:
specifier: 15.5.4
version: 15.5.4(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
specifier: 15.5.9
version: 15.5.9(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
react:
specifier: 19.1.0
version: 19.1.0
@ -216,11 +220,11 @@ importers:
specifier: ^20
version: 20.19.17
'@types/react':
specifier: ^19
version: 19.1.16
specifier: 19.1.6
version: 19.1.6
'@types/react-dom':
specifier: ^19
version: 19.1.9(@types/react@19.1.16)
specifier: 19.1.5
version: 19.1.5(@types/react@19.1.6)
tailwindcss:
specifier: ^4
version: 4.1.13
@ -243,11 +247,11 @@ importers:
specifier: ^20.0.0
version: 20.19.17
'@types/react':
specifier: ^18.2.0
version: 18.3.24
specifier: 19.1.6
version: 19.1.6
'@types/react-dom':
specifier: ^18.2.0
version: 18.3.7(@types/react@18.3.24)
specifier: 19.1.5
version: 19.1.5(@types/react@19.1.6)
next:
specifier: ^14.2.0
version: 14.2.33(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
@ -290,7 +294,7 @@ importers:
dependencies:
drizzle-orm:
specifier: ^0.36.4
version: 0.36.4(@types/react@19.1.16)(postgres@3.4.7)(react@19.1.0)
version: 0.36.4(@types/react@19.1.6)(postgres@3.4.7)(react@19.1.0)
postgres:
specifier: ^3.4.3
version: 3.4.7
@ -1271,8 +1275,8 @@ packages:
'@next/env@14.2.33':
resolution: {integrity: sha512-CgVHNZ1fRIlxkLhIX22flAZI/HmpDaZ8vwyJ/B0SDPTBuLZ1PJ+DWMjCHhqnExfmSQzA/PbZi8OAc7PAq2w9IA==}
'@next/env@15.5.4':
resolution: {integrity: sha512-27SQhYp5QryzIT5uO8hq99C69eLQ7qkzkDPsk3N+GuS2XgOgoYEeOav7Pf8Tn4drECOVDsDg8oj+/DVy8qQL2A==}
'@next/env@15.5.9':
resolution: {integrity: sha512-4GlTZ+EJM7WaW2HEZcyU317tIQDjkQIyENDLxYJfSWlfqguN+dHkZgyQTV/7ykvobU7yEH5gKvreNrH4B6QgIg==}
'@next/eslint-plugin-next@14.2.33':
resolution: {integrity: sha512-DQTJFSvlB+9JilwqMKJ3VPByBNGxAGFTfJ7BuFj25cVcbBy7jm88KfUN+dngM4D3+UxZ8ER2ft+WH9JccMvxyg==}
@ -1283,8 +1287,8 @@ packages:
cpu: [arm64]
os: [darwin]
'@next/swc-darwin-arm64@15.5.4':
resolution: {integrity: sha512-nopqz+Ov6uvorej8ndRX6HlxCYWCO3AHLfKK2TYvxoSB2scETOcfm/HSS3piPqc3A+MUgyHoqE6je4wnkjfrOA==}
'@next/swc-darwin-arm64@15.5.7':
resolution: {integrity: sha512-IZwtxCEpI91HVU/rAUOOobWSZv4P2DeTtNaCdHqLcTJU4wdNXgAySvKa/qJCgR5m6KI8UsKDXtO2B31jcaw1Yw==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [darwin]
@ -1295,8 +1299,8 @@ packages:
cpu: [x64]
os: [darwin]
'@next/swc-darwin-x64@15.5.4':
resolution: {integrity: sha512-QOTCFq8b09ghfjRJKfb68kU9k2K+2wsC4A67psOiMn849K9ZXgCSRQr0oVHfmKnoqCbEmQWG1f2h1T2vtJJ9mA==}
'@next/swc-darwin-x64@15.5.7':
resolution: {integrity: sha512-UP6CaDBcqaCBuiq/gfCEJw7sPEoX1aIjZHnBWN9v9qYHQdMKvCKcAVs4OX1vIjeE+tC5EIuwDTVIoXpUes29lg==}
engines: {node: '>= 10'}
cpu: [x64]
os: [darwin]
@ -1307,8 +1311,8 @@ packages:
cpu: [arm64]
os: [linux]
'@next/swc-linux-arm64-gnu@15.5.4':
resolution: {integrity: sha512-eRD5zkts6jS3VfE/J0Kt1VxdFqTnMc3QgO5lFE5GKN3KDI/uUpSyK3CjQHmfEkYR4wCOl0R0XrsjpxfWEA++XA==}
'@next/swc-linux-arm64-gnu@15.5.7':
resolution: {integrity: sha512-NCslw3GrNIw7OgmRBxHtdWFQYhexoUCq+0oS2ccjyYLtcn1SzGzeM54jpTFonIMUjNbHmpKpziXnpxhSWLcmBA==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [linux]
@ -1319,8 +1323,8 @@ packages:
cpu: [arm64]
os: [linux]
'@next/swc-linux-arm64-musl@15.5.4':
resolution: {integrity: sha512-TOK7iTxmXFc45UrtKqWdZ1shfxuL4tnVAOuuJK4S88rX3oyVV4ZkLjtMT85wQkfBrOOvU55aLty+MV8xmcJR8A==}
'@next/swc-linux-arm64-musl@15.5.7':
resolution: {integrity: sha512-nfymt+SE5cvtTrG9u1wdoxBr9bVB7mtKTcj0ltRn6gkP/2Nu1zM5ei8rwP9qKQP0Y//umK+TtkKgNtfboBxRrw==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [linux]
@ -1331,8 +1335,8 @@ packages:
cpu: [x64]
os: [linux]
'@next/swc-linux-x64-gnu@15.5.4':
resolution: {integrity: sha512-7HKolaj+481FSW/5lL0BcTkA4Ueam9SPYWyN/ib/WGAFZf0DGAN8frNpNZYFHtM4ZstrHZS3LY3vrwlIQfsiMA==}
'@next/swc-linux-x64-gnu@15.5.7':
resolution: {integrity: sha512-hvXcZvCaaEbCZcVzcY7E1uXN9xWZfFvkNHwbe/n4OkRhFWrs1J1QV+4U1BN06tXLdaS4DazEGXwgqnu/VMcmqw==}
engines: {node: '>= 10'}
cpu: [x64]
os: [linux]
@ -1343,8 +1347,8 @@ packages:
cpu: [x64]
os: [linux]
'@next/swc-linux-x64-musl@15.5.4':
resolution: {integrity: sha512-nlQQ6nfgN0nCO/KuyEUwwOdwQIGjOs4WNMjEUtpIQJPR2NUfmGpW2wkJln1d4nJ7oUzd1g4GivH5GoEPBgfsdw==}
'@next/swc-linux-x64-musl@15.5.7':
resolution: {integrity: sha512-4IUO539b8FmF0odY6/SqANJdgwn1xs1GkPO5doZugwZ3ETF6JUdckk7RGmsfSf7ws8Qb2YB5It33mvNL/0acqA==}
engines: {node: '>= 10'}
cpu: [x64]
os: [linux]
@ -1355,8 +1359,8 @@ packages:
cpu: [arm64]
os: [win32]
'@next/swc-win32-arm64-msvc@15.5.4':
resolution: {integrity: sha512-PcR2bN7FlM32XM6eumklmyWLLbu2vs+D7nJX8OAIoWy69Kef8mfiN4e8TUv2KohprwifdpFKPzIP1njuCjD0YA==}
'@next/swc-win32-arm64-msvc@15.5.7':
resolution: {integrity: sha512-CpJVTkYI3ZajQkC5vajM7/ApKJUOlm6uP4BknM3XKvJ7VXAvCqSjSLmM0LKdYzn6nBJVSjdclx8nYJSa3xlTgQ==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [win32]
@ -1373,8 +1377,8 @@ packages:
cpu: [x64]
os: [win32]
'@next/swc-win32-x64-msvc@15.5.4':
resolution: {integrity: sha512-1ur2tSHZj8Px/KMAthmuI9FMp/YFusMMGoRNJaRZMOlSkgvLjzosSdQI0cJAKogdHl3qXUQKL9MGaYvKwA7DXg==}
'@next/swc-win32-x64-msvc@15.5.7':
resolution: {integrity: sha512-gMzgBX164I6DN+9/PGA+9dQiwmTkE4TloBNx8Kv9UiGARsr9Nba7IpcBRA1iTV9vwlYnrE3Uy6I7Aj6qLjQuqw==}
engines: {node: '>= 10'}
cpu: [x64]
os: [win32]
@ -1843,30 +1847,19 @@ packages:
'@types/phoenix@1.6.6':
resolution: {integrity: sha512-PIzZZlEppgrpoT2QgbnDU+MMzuR6BbCjllj0bM70lWoejMeNJAxCchxnv7J3XFkI8MpygtRpzXrIlmWUBclP5A==}
'@types/prop-types@15.7.15':
resolution: {integrity: sha512-F6bEyamV9jKGAFBEmlQnesRPGOQqS2+Uwi0Em15xenOxHaf2hv6L8YCVn3rPdPJOiJfPiCnLIRyvwVaqMY3MIw==}
'@types/qs@6.14.0':
resolution: {integrity: sha512-eOunJqu0K1923aExK6y8p6fsihYEn/BYuQ4g0CxAAgFc4b/ZLN4CrsRZ55srTdqoiLzU2B2evC+apEIxprEzkQ==}
'@types/range-parser@1.2.7':
resolution: {integrity: sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==}
'@types/react-dom@18.3.7':
resolution: {integrity: sha512-MEe3UeoENYVFXzoXEWsvcpg6ZvlrFNlOQ7EOsvhI3CfAXwzPfO8Qwuxd40nepsYKqyyVQnTdEfv68q91yLcKrQ==}
'@types/react-dom@19.1.5':
resolution: {integrity: sha512-CMCjrWucUBZvohgZxkjd6S9h0nZxXjzus6yDfUb+xLxYM7VvjKNH1tQrE9GWLql1XoOP4/Ds3bwFqShHUYraGg==}
peerDependencies:
'@types/react': ^18.0.0
'@types/react': 19.1.6
'@types/react-dom@19.1.9':
resolution: {integrity: sha512-qXRuZaOsAdXKFyOhRBg6Lqqc0yay13vN7KrIg4L7N4aaHN68ma9OK3NE1BoDFgFOTfM7zg+3/8+2n8rLUH3OKQ==}
peerDependencies:
'@types/react': ^19.0.0
'@types/react@18.3.24':
resolution: {integrity: sha512-0dLEBsA1kI3OezMBF8nSsb7Nk19ZnsyE1LLhB8r27KbgU5H4pvuqZLdtE+aUkJVoXgTVuA+iLIwmZ0TuK4tx6A==}
'@types/react@19.1.16':
resolution: {integrity: sha512-WBM/nDbEZmDUORKnh5i1bTnAz6vTohUf9b8esSMu+b24+srbaxa04UbJgWx78CVfNXA20sNu0odEIluZDFdCog==}
'@types/react@19.1.6':
resolution: {integrity: sha512-JeG0rEWak0N6Itr6QUx+X60uQmN+5t3j9r/OVDtWzFXKaj6kD1BwJzOksD0FF6iWxZlbE1kB0q9vtnU2ekqa1Q==}
'@types/send@0.17.5':
resolution: {integrity: sha512-z6F2D3cOStZvuk2SaP6YrwkNO65iTZcwA2ZkSABegdkAh/lf+Aa/YQndZVfmEXT5vgAp6zv06VQ3ejSVjAny4w==}
@ -2484,8 +2477,8 @@ packages:
engines: {node: '>=4'}
hasBin: true
csstype@3.1.3:
resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==}
csstype@3.2.3:
resolution: {integrity: sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==}
d3-array@3.2.4:
resolution: {integrity: sha512-tdQAmyA18i4J7wprpYq8ClcxZy3SC31QMeByyCFyRt7BVHdREQZ5lpzoe5mFEYZUWe+oq8HBvk9JjpibyEV4Jg==}
@ -2661,7 +2654,7 @@ packages:
'@tidbcloud/serverless': '*'
'@types/better-sqlite3': '*'
'@types/pg': '*'
'@types/react': '>=18'
'@types/react': 19.1.6
'@types/sql.js': '*'
'@vercel/postgres': '>=0.8.0'
'@xata.io/client': '*'
@ -4060,8 +4053,8 @@ packages:
sass:
optional: true
next@15.5.4:
resolution: {integrity: sha512-xH4Yjhb82sFYQfY3vbkJfgSDgXvBB6a8xPs9i35k6oZJRoQRihZH+4s9Yo2qsWpzBmZ3lPXaJ2KPXLfkvW4LnA==}
next@15.5.9:
resolution: {integrity: sha512-agNLK89seZEtC5zUHwtut0+tNrc0Xw4FT/Dg+B/VLEo9pAcS9rtTKpek3V6kVcVwsB2YlqMaHdfZL4eLEVYuCg==}
engines: {node: ^18.18.0 || ^19.8.0 || >= 20.0.0}
hasBin: true
peerDependencies:
@ -6132,7 +6125,7 @@ snapshots:
'@next/env@14.2.33': {}
'@next/env@15.5.4': {}
'@next/env@15.5.9': {}
'@next/eslint-plugin-next@14.2.33':
dependencies:
@ -6141,43 +6134,43 @@ snapshots:
'@next/swc-darwin-arm64@14.2.33':
optional: true
'@next/swc-darwin-arm64@15.5.4':
'@next/swc-darwin-arm64@15.5.7':
optional: true
'@next/swc-darwin-x64@14.2.33':
optional: true
'@next/swc-darwin-x64@15.5.4':
'@next/swc-darwin-x64@15.5.7':
optional: true
'@next/swc-linux-arm64-gnu@14.2.33':
optional: true
'@next/swc-linux-arm64-gnu@15.5.4':
'@next/swc-linux-arm64-gnu@15.5.7':
optional: true
'@next/swc-linux-arm64-musl@14.2.33':
optional: true
'@next/swc-linux-arm64-musl@15.5.4':
'@next/swc-linux-arm64-musl@15.5.7':
optional: true
'@next/swc-linux-x64-gnu@14.2.33':
optional: true
'@next/swc-linux-x64-gnu@15.5.4':
'@next/swc-linux-x64-gnu@15.5.7':
optional: true
'@next/swc-linux-x64-musl@14.2.33':
optional: true
'@next/swc-linux-x64-musl@15.5.4':
'@next/swc-linux-x64-musl@15.5.7':
optional: true
'@next/swc-win32-arm64-msvc@14.2.33':
optional: true
'@next/swc-win32-arm64-msvc@15.5.4':
'@next/swc-win32-arm64-msvc@15.5.7':
optional: true
'@next/swc-win32-ia32-msvc@14.2.33':
@ -6186,7 +6179,7 @@ snapshots:
'@next/swc-win32-x64-msvc@14.2.33':
optional: true
'@next/swc-win32-x64-msvc@15.5.4':
'@next/swc-win32-x64-msvc@15.5.7':
optional: true
'@noble/hashes@1.8.0': {}
@ -6634,28 +6627,17 @@ snapshots:
'@types/phoenix@1.6.6': {}
'@types/prop-types@15.7.15': {}
'@types/qs@6.14.0': {}
'@types/range-parser@1.2.7': {}
'@types/react-dom@18.3.7(@types/react@18.3.24)':
'@types/react-dom@19.1.5(@types/react@19.1.6)':
dependencies:
'@types/react': 18.3.24
'@types/react': 19.1.6
'@types/react-dom@19.1.9(@types/react@19.1.16)':
'@types/react@19.1.6':
dependencies:
'@types/react': 19.1.16
'@types/react@18.3.24':
dependencies:
'@types/prop-types': 15.7.15
csstype: 3.1.3
'@types/react@19.1.16':
dependencies:
csstype: 3.1.3
csstype: 3.2.3
'@types/send@0.17.5':
dependencies:
@ -7398,7 +7380,7 @@ snapshots:
cssesc@3.0.0: {}
csstype@3.1.3: {}
csstype@3.2.3: {}
d3-array@3.2.4:
dependencies:
@ -7522,7 +7504,7 @@ snapshots:
dom-helpers@5.2.1:
dependencies:
'@babel/runtime': 7.28.4
csstype: 3.1.3
csstype: 3.2.3
dotenv@17.2.2: {}
@ -7535,9 +7517,9 @@ snapshots:
transitivePeerDependencies:
- supports-color
drizzle-orm@0.36.4(@types/react@19.1.16)(postgres@3.4.7)(react@19.1.0):
drizzle-orm@0.36.4(@types/react@19.1.6)(postgres@3.4.7)(react@19.1.0):
optionalDependencies:
'@types/react': 19.1.16
'@types/react': 19.1.6
postgres: 3.4.7
react: 19.1.0
@ -7783,7 +7765,7 @@ snapshots:
eslint: 8.57.1
eslint-import-resolver-node: 0.3.9
eslint-import-resolver-typescript: 3.10.1(eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.44.0(eslint@8.57.1)(typescript@5.9.2))(eslint@8.57.1))(eslint@8.57.1)
eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.44.0(eslint@8.57.1)(typescript@5.9.2))(eslint-import-resolver-typescript@3.10.1)(eslint@8.57.1)
eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.44.0(eslint@8.57.1)(typescript@5.9.2))(eslint-import-resolver-typescript@3.10.1(eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.44.0(eslint@8.57.1)(typescript@5.9.2))(eslint@8.57.1))(eslint@8.57.1))(eslint@8.57.1)
eslint-plugin-jsx-a11y: 6.10.2(eslint@8.57.1)
eslint-plugin-react: 7.37.5(eslint@8.57.1)
eslint-plugin-react-hooks: 5.0.0-canary-7118f5dd7-20230705(eslint@8.57.1)
@ -7817,7 +7799,7 @@ snapshots:
tinyglobby: 0.2.15
unrs-resolver: 1.11.1
optionalDependencies:
eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.44.0(eslint@8.57.1)(typescript@5.9.2))(eslint-import-resolver-typescript@3.10.1)(eslint@8.57.1)
eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.44.0(eslint@8.57.1)(typescript@5.9.2))(eslint-import-resolver-typescript@3.10.1(eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.44.0(eslint@8.57.1)(typescript@5.9.2))(eslint@8.57.1))(eslint@8.57.1))(eslint@8.57.1)
transitivePeerDependencies:
- supports-color
@ -7832,7 +7814,7 @@ snapshots:
transitivePeerDependencies:
- supports-color
eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.44.0(eslint@8.57.1)(typescript@5.9.2))(eslint-import-resolver-typescript@3.10.1)(eslint@8.57.1):
eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.44.0(eslint@8.57.1)(typescript@5.9.2))(eslint-import-resolver-typescript@3.10.1(eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.44.0(eslint@8.57.1)(typescript@5.9.2))(eslint@8.57.1))(eslint@8.57.1))(eslint@8.57.1):
dependencies:
'@rtsao/scc': 1.1.0
array-includes: 3.1.9
@ -9344,9 +9326,9 @@ snapshots:
- '@babel/core'
- babel-plugin-macros
next@15.5.4(react-dom@19.1.0(react@19.1.0))(react@19.1.0):
next@15.5.9(react-dom@19.1.0(react@19.1.0))(react@19.1.0):
dependencies:
'@next/env': 15.5.4
'@next/env': 15.5.9
'@swc/helpers': 0.5.15
caniuse-lite: 1.0.30001743
postcss: 8.4.31
@ -9354,14 +9336,14 @@ snapshots:
react-dom: 19.1.0(react@19.1.0)
styled-jsx: 5.1.6(react@19.1.0)
optionalDependencies:
'@next/swc-darwin-arm64': 15.5.4
'@next/swc-darwin-x64': 15.5.4
'@next/swc-linux-arm64-gnu': 15.5.4
'@next/swc-linux-arm64-musl': 15.5.4
'@next/swc-linux-x64-gnu': 15.5.4
'@next/swc-linux-x64-musl': 15.5.4
'@next/swc-win32-arm64-msvc': 15.5.4
'@next/swc-win32-x64-msvc': 15.5.4
'@next/swc-darwin-arm64': 15.5.7
'@next/swc-darwin-x64': 15.5.7
'@next/swc-linux-arm64-gnu': 15.5.7
'@next/swc-linux-arm64-musl': 15.5.7
'@next/swc-linux-x64-gnu': 15.5.7
'@next/swc-linux-x64-musl': 15.5.7
'@next/swc-win32-arm64-msvc': 15.5.7
'@next/swc-win32-x64-msvc': 15.5.7
sharp: 0.34.4
transitivePeerDependencies:
- '@babel/core'