Compare commits
9 Commits
main
...
feature/pr
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
7a3ad37bf3 | ||
|
|
c8282e8c04 | ||
|
|
702fc131de | ||
|
|
6570233b4c | ||
|
|
464f25d227 | ||
|
|
f3cb557ab0 | ||
|
|
d8704aa4b5 | ||
|
|
30455c3285 | ||
|
|
37d9112515 |
44
apps/web/actions/profile.ts
Normal file
44
apps/web/actions/profile.ts
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
'use server';
|
||||||
|
import { authOptions } from '@/config/auth';
|
||||||
|
import { getCustomer, updateCustomerProfile } from '@repo/graphql/api';
|
||||||
|
import { type CustomerInput, type Enum_Customer_Role } from '@repo/graphql/types';
|
||||||
|
import { getServerSession } from 'next-auth/next';
|
||||||
|
import { revalidatePath } from 'next/cache';
|
||||||
|
|
||||||
|
export async function updateProfile(input: CustomerInput) {
|
||||||
|
const session = await getServerSession(authOptions);
|
||||||
|
|
||||||
|
if (session) {
|
||||||
|
const { user } = session;
|
||||||
|
const getCustomerResponse = await getCustomer({ telegramId: user?.telegramId });
|
||||||
|
const customer = getCustomerResponse.data.customers.at(0);
|
||||||
|
if (customer) {
|
||||||
|
await updateCustomerProfile({
|
||||||
|
data: input,
|
||||||
|
documentId: customer.documentId,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
revalidatePath('/profile');
|
||||||
|
}
|
||||||
|
|
||||||
|
export async function updateRole(role: Enum_Customer_Role) {
|
||||||
|
const session = await getServerSession(authOptions);
|
||||||
|
|
||||||
|
if (session) {
|
||||||
|
const { user } = session;
|
||||||
|
const getCustomerResponse = await getCustomer({ telegramId: user?.telegramId });
|
||||||
|
const customer = getCustomerResponse.data.customers.at(0);
|
||||||
|
if (customer) {
|
||||||
|
await updateCustomerProfile({
|
||||||
|
data: {
|
||||||
|
role,
|
||||||
|
},
|
||||||
|
documentId: customer.documentId,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
revalidatePath('/profile');
|
||||||
|
}
|
||||||
31
apps/web/app/(auth)/browser/page.tsx
Normal file
31
apps/web/app/(auth)/browser/page.tsx
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
/* eslint-disable promise/prefer-await-to-then */
|
||||||
|
'use client';
|
||||||
|
import { getTelegramUser } from '@/mocks/get-telegram-user';
|
||||||
|
import { LoadingSpinner } from '@repo/ui/components/ui/spinner';
|
||||||
|
import { signIn, useSession } from 'next-auth/react';
|
||||||
|
import { useTheme } from 'next-themes';
|
||||||
|
import { redirect } from 'next/navigation';
|
||||||
|
import { useEffect } from 'react';
|
||||||
|
|
||||||
|
export default function Auth() {
|
||||||
|
const { status } = useSession();
|
||||||
|
useTheme();
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
if (status === 'authenticated') {
|
||||||
|
redirect('/profile');
|
||||||
|
}
|
||||||
|
|
||||||
|
if (status === 'unauthenticated' && process.env.NODE_ENV === 'development') {
|
||||||
|
getTelegramUser().then((user) => {
|
||||||
|
signIn('telegram', {
|
||||||
|
callbackUrl: '/profile',
|
||||||
|
redirect: false,
|
||||||
|
telegramId: String(user?.id),
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}, [status]);
|
||||||
|
|
||||||
|
return <LoadingSpinner />;
|
||||||
|
}
|
||||||
@ -1,42 +1,12 @@
|
|||||||
'use client';
|
'use client';
|
||||||
import { initData, isMiniAppDark, useSignal } from '@telegram-apps/sdk-react';
|
import { useClientOnce } from '@/hooks/telegram';
|
||||||
import { signIn, useSession } from 'next-auth/react';
|
import { isTMA } from '@telegram-apps/sdk-react';
|
||||||
import { redirect } from 'next/navigation';
|
import { redirect } from 'next/navigation';
|
||||||
import { useEffect } from 'react';
|
|
||||||
|
|
||||||
export default function Auth() {
|
export default function Page() {
|
||||||
const initDataState = useSignal(initData.state);
|
useClientOnce(() => {
|
||||||
const isDark = isMiniAppDark();
|
const isTG = isTMA('simple');
|
||||||
const { data: session, status } = useSession();
|
|
||||||
|
|
||||||
useEffect(() => {
|
redirect(isTG ? '/telegram' : '/browser');
|
||||||
if (status === 'authenticated') {
|
});
|
||||||
redirect('/profile');
|
|
||||||
}
|
|
||||||
|
|
||||||
if (status === 'unauthenticated' && initDataState?.user?.id) {
|
|
||||||
signIn('telegram', {
|
|
||||||
callbackUrl: '/profile',
|
|
||||||
redirect: false,
|
|
||||||
telegramId: String(initDataState.user.id),
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}, [initDataState, status]);
|
|
||||||
|
|
||||||
if (status === 'loading') {
|
|
||||||
return <div>Loading Auth...</div>;
|
|
||||||
}
|
|
||||||
|
|
||||||
return (
|
|
||||||
<div>
|
|
||||||
{session ? (
|
|
||||||
<div>
|
|
||||||
Hello, {JSON.stringify(session)} <br />
|
|
||||||
Dark: {JSON.stringify(isDark)}
|
|
||||||
</div>
|
|
||||||
) : (
|
|
||||||
<div>Not authenticated</div>
|
|
||||||
)}
|
|
||||||
</div>
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
import { TelegramProvider } from '@/providers';
|
import { TelegramProvider } from '@/providers';
|
||||||
import { type PropsWithChildren } from 'react';
|
import { type PropsWithChildren } from 'react';
|
||||||
|
|
||||||
export default async function RootLayout({ children }: Readonly<PropsWithChildren>) {
|
export default async function Layout({ children }: Readonly<PropsWithChildren>) {
|
||||||
return <TelegramProvider>{children}</TelegramProvider>;
|
return <TelegramProvider>{children}</TelegramProvider>;
|
||||||
}
|
}
|
||||||
32
apps/web/app/(auth)/telegram/page.tsx
Normal file
32
apps/web/app/(auth)/telegram/page.tsx
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
'use client';
|
||||||
|
import { LoadingSpinner } from '@repo/ui/components/ui/spinner';
|
||||||
|
import { initData, isMiniAppDark, useSignal } from '@telegram-apps/sdk-react';
|
||||||
|
import { signIn, useSession } from 'next-auth/react';
|
||||||
|
import { useTheme } from 'next-themes';
|
||||||
|
import { redirect } from 'next/navigation';
|
||||||
|
import { useEffect } from 'react';
|
||||||
|
|
||||||
|
export default function Auth() {
|
||||||
|
const initDataUser = useSignal(initData.user);
|
||||||
|
const isDark = isMiniAppDark();
|
||||||
|
const { status } = useSession();
|
||||||
|
const { setTheme } = useTheme();
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
setTheme(isDark ? 'dark' : 'light');
|
||||||
|
|
||||||
|
if (status === 'authenticated') {
|
||||||
|
redirect('/profile');
|
||||||
|
}
|
||||||
|
|
||||||
|
if (status === 'unauthenticated' && initDataUser?.id) {
|
||||||
|
signIn('telegram', {
|
||||||
|
callbackUrl: '/profile',
|
||||||
|
redirect: false,
|
||||||
|
telegramId: String(initDataUser.id),
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}, [initDataUser, isDark, setTheme, status]);
|
||||||
|
|
||||||
|
return <LoadingSpinner />;
|
||||||
|
}
|
||||||
@ -1,11 +1,9 @@
|
|||||||
import { Header } from '@/components/header';
|
|
||||||
import { BottomNav } from '@/components/navigation';
|
import { BottomNav } from '@/components/navigation';
|
||||||
import { type PropsWithChildren } from 'react';
|
import { type PropsWithChildren } from 'react';
|
||||||
|
|
||||||
export default async function Layout({ children }: Readonly<PropsWithChildren>) {
|
export default async function Layout({ children }: Readonly<PropsWithChildren>) {
|
||||||
return (
|
return (
|
||||||
<div className="min-h-screen">
|
<div className="min-h-screen">
|
||||||
<Header />
|
|
||||||
<main>{children}</main>
|
<main>{children}</main>
|
||||||
<BottomNav />
|
<BottomNav />
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -1,8 +1,47 @@
|
|||||||
|
import { updateProfile, updateRole } from '@/actions/profile';
|
||||||
|
import { CheckboxWithText } from '@/components/profile/checkbox-with-text';
|
||||||
|
import { ProfileField } from '@/components/profile/profile-field';
|
||||||
import { authOptions } from '@/config/auth';
|
import { authOptions } from '@/config/auth';
|
||||||
|
import { getCustomer } from '@repo/graphql/api';
|
||||||
|
import { Avatar, AvatarFallback, AvatarImage } from '@repo/ui/components/ui/avatar';
|
||||||
|
import { Card, CardContent, CardHeader } from '@repo/ui/components/ui/card';
|
||||||
import { getServerSession } from 'next-auth/next';
|
import { getServerSession } from 'next-auth/next';
|
||||||
|
|
||||||
export default async function ProfilePage() {
|
export default async function ProfilePage() {
|
||||||
const session = await getServerSession(authOptions);
|
const session = await getServerSession(authOptions);
|
||||||
|
const { data } = await getCustomer({ telegramId: session?.user?.telegramId });
|
||||||
|
const user = data.customers.at(0);
|
||||||
|
const photoUrl = user?.photoUrl ?? 'https://github.com/shadcn.png';
|
||||||
|
|
||||||
return <pre>{JSON.stringify(session, null, 2)}</pre>;
|
if (!user) return 'Профиль не найден';
|
||||||
|
|
||||||
|
return (
|
||||||
|
<div className="mx-auto h-screen max-w-md">
|
||||||
|
<Card>
|
||||||
|
<CardHeader className="flex flex-row items-center space-x-4 pb-2">
|
||||||
|
<Avatar className="size-12">
|
||||||
|
<AvatarImage alt={user?.name} src={photoUrl} />
|
||||||
|
<AvatarFallback>{user?.name.charAt(0)}</AvatarFallback>
|
||||||
|
</Avatar>
|
||||||
|
<h2 className="text-2xl font-bold">{user?.name}</h2>
|
||||||
|
</CardHeader>
|
||||||
|
<CardContent className="space-y-4">
|
||||||
|
<ProfileField
|
||||||
|
fieldName="name"
|
||||||
|
id="name"
|
||||||
|
label="Имя"
|
||||||
|
onChange={updateProfile}
|
||||||
|
value={user?.name ?? ''}
|
||||||
|
/>
|
||||||
|
<ProfileField disabled id="phone" label="Телефон" value={user?.phone ?? ''} />
|
||||||
|
<CheckboxWithText
|
||||||
|
checked={user.role !== 'client'}
|
||||||
|
description="Разрешить другим пользователям записываться к вам"
|
||||||
|
onChange={updateRole}
|
||||||
|
text="Быть мастером"
|
||||||
|
/>
|
||||||
|
</CardContent>
|
||||||
|
</Card>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,7 +1,8 @@
|
|||||||
import { AuthProvider } from '@/providers';
|
import { AuthProvider } from '@/providers';
|
||||||
|
import { ThemeProvider } from '@/providers/theme-provider';
|
||||||
import { I18nProvider } from '@/utils/i18n/provider';
|
import { I18nProvider } from '@/utils/i18n/provider';
|
||||||
import { type Metadata } from 'next';
|
|
||||||
import '@repo/ui/globals.css';
|
import '@repo/ui/globals.css';
|
||||||
|
import { type Metadata } from 'next';
|
||||||
import { getLocale } from 'next-intl/server';
|
import { getLocale } from 'next-intl/server';
|
||||||
import { type PropsWithChildren } from 'react';
|
import { type PropsWithChildren } from 'react';
|
||||||
|
|
||||||
@ -14,9 +15,11 @@ export default async function RootLayout({ children }: Readonly<PropsWithChildre
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
<html lang={locale}>
|
<html lang={locale}>
|
||||||
<body>
|
<body className="bg-secondary">
|
||||||
<I18nProvider>
|
<I18nProvider>
|
||||||
<AuthProvider>{children}</AuthProvider>
|
<ThemeProvider>
|
||||||
|
<AuthProvider>{children}</AuthProvider>
|
||||||
|
</ThemeProvider>
|
||||||
</I18nProvider>
|
</I18nProvider>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@ -1,10 +0,0 @@
|
|||||||
import { Profile } from './profile';
|
|
||||||
|
|
||||||
export function Header() {
|
|
||||||
return (
|
|
||||||
<header className="flex items-center justify-between border-b bg-background px-4 py-2">
|
|
||||||
<div />
|
|
||||||
<Profile fallback="SC" src="https://github.com/shadcn.png" username="Username" />
|
|
||||||
</header>
|
|
||||||
);
|
|
||||||
}
|
|
||||||
@ -1,19 +0,0 @@
|
|||||||
import { Avatar, AvatarFallback, AvatarImage } from '@repo/ui/components/ui/avatar';
|
|
||||||
|
|
||||||
type Props = {
|
|
||||||
readonly fallback: string;
|
|
||||||
readonly src: string;
|
|
||||||
readonly username: string;
|
|
||||||
};
|
|
||||||
|
|
||||||
export function Profile({ fallback, src, username }: Props) {
|
|
||||||
return (
|
|
||||||
<div className="flex items-center space-x-2">
|
|
||||||
<span className="font-medium">{username}</span>
|
|
||||||
<Avatar>
|
|
||||||
<AvatarImage alt={username} src={src} />
|
|
||||||
<AvatarFallback>{fallback}</AvatarFallback>
|
|
||||||
</Avatar>
|
|
||||||
</div>
|
|
||||||
);
|
|
||||||
}
|
|
||||||
63
apps/web/components/profile/checkbox-with-text.tsx
Normal file
63
apps/web/components/profile/checkbox-with-text.tsx
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
/* eslint-disable canonical/id-match */
|
||||||
|
/* eslint-disable promise/prefer-await-to-then */
|
||||||
|
'use client';
|
||||||
|
import { Enum_Customer_Role } from '@repo/graphql/types';
|
||||||
|
import { Checkbox, type CheckboxProps } from '@repo/ui/components/ui/checkbox';
|
||||||
|
import { useState } from 'react';
|
||||||
|
import { useDebouncedCallback } from 'use-debounce';
|
||||||
|
|
||||||
|
type Props = Pick<CheckboxProps, 'checked'> & {
|
||||||
|
readonly description?: string;
|
||||||
|
readonly onChange?: (value: Enum_Customer_Role) => Promise<void> | void;
|
||||||
|
readonly text: string;
|
||||||
|
};
|
||||||
|
|
||||||
|
export function CheckboxWithText({ checked: initialValue, description, onChange, text }: Props) {
|
||||||
|
const [checked, setChecked] = useState(initialValue);
|
||||||
|
const { debouncedCallback, isPending } = useDebouncedOnChangeCallback(onChange);
|
||||||
|
|
||||||
|
const handleChange = () => {
|
||||||
|
const newValue = !checked;
|
||||||
|
setChecked(newValue);
|
||||||
|
debouncedCallback(newValue);
|
||||||
|
};
|
||||||
|
|
||||||
|
return (
|
||||||
|
<div className="flex items-start space-x-2">
|
||||||
|
<Checkbox checked={checked} disabled={isPending} id="terms1" onCheckedChange={handleChange} />
|
||||||
|
<div className="grid gap-1.5 leading-none">
|
||||||
|
<label
|
||||||
|
className="text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"
|
||||||
|
htmlFor="terms1"
|
||||||
|
>
|
||||||
|
{text}
|
||||||
|
</label>
|
||||||
|
{description ? <p className="text-sm text-muted-foreground">{description}</p> : false}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
function useDebouncedOnChangeCallback(
|
||||||
|
callback: ((value: Enum_Customer_Role) => Promise<void> | void) | undefined,
|
||||||
|
) {
|
||||||
|
const [isPending, setIsPending] = useState(false);
|
||||||
|
|
||||||
|
const debouncedCallback = useDebouncedCallback((checked: boolean) => {
|
||||||
|
if (!callback) return;
|
||||||
|
|
||||||
|
setIsPending(true);
|
||||||
|
const result = callback(checked ? Enum_Customer_Role.Master : Enum_Customer_Role.Client);
|
||||||
|
|
||||||
|
if (result instanceof Promise) {
|
||||||
|
result.finally(() => setIsPending(false));
|
||||||
|
} else {
|
||||||
|
setIsPending(false);
|
||||||
|
}
|
||||||
|
}, 300);
|
||||||
|
|
||||||
|
return {
|
||||||
|
debouncedCallback,
|
||||||
|
isPending,
|
||||||
|
};
|
||||||
|
}
|
||||||
85
apps/web/components/profile/profile-field.tsx
Normal file
85
apps/web/components/profile/profile-field.tsx
Normal file
@ -0,0 +1,85 @@
|
|||||||
|
/* eslint-disable promise/prefer-await-to-then */
|
||||||
|
'use client';
|
||||||
|
import { type CustomerInput } from '@repo/graphql/types';
|
||||||
|
import { Input } from '@repo/ui/components/ui/input';
|
||||||
|
import { Label } from '@repo/ui/components/ui/label';
|
||||||
|
import { type ChangeEvent, useEffect, useRef, useState } from 'react';
|
||||||
|
import { useDebouncedCallback } from 'use-debounce';
|
||||||
|
|
||||||
|
type ProfileFieldProps = {
|
||||||
|
readonly disabled?: boolean;
|
||||||
|
readonly fieldName?: keyof CustomerInput;
|
||||||
|
readonly id: string;
|
||||||
|
readonly label: string;
|
||||||
|
readonly onChange?: (value: CustomerInput) => Promise<void> | void;
|
||||||
|
readonly value: string;
|
||||||
|
};
|
||||||
|
|
||||||
|
export function ProfileField({
|
||||||
|
disabled = false,
|
||||||
|
fieldName,
|
||||||
|
id,
|
||||||
|
label,
|
||||||
|
onChange,
|
||||||
|
value: initialValue,
|
||||||
|
}: ProfileFieldProps) {
|
||||||
|
const [value, setValue] = useState(initialValue);
|
||||||
|
const { debouncedCallback, isPending } = useDebouncedOnChangeCallback(onChange, fieldName);
|
||||||
|
const inputRef = useFocus(isPending);
|
||||||
|
|
||||||
|
const handleChange = (event: ChangeEvent<HTMLInputElement>) => {
|
||||||
|
const newValue = event.target.value;
|
||||||
|
setValue(newValue);
|
||||||
|
debouncedCallback(newValue);
|
||||||
|
};
|
||||||
|
|
||||||
|
return (
|
||||||
|
<div className="space-y-2">
|
||||||
|
<Label htmlFor={id}>{label}</Label>
|
||||||
|
<Input
|
||||||
|
className="bg-secondary outline-none focus:ring-0 focus:ring-offset-0"
|
||||||
|
disabled={disabled || isPending}
|
||||||
|
id={id}
|
||||||
|
onChange={handleChange}
|
||||||
|
ref={inputRef}
|
||||||
|
value={value}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
function useDebouncedOnChangeCallback(
|
||||||
|
callback: ((value: CustomerInput) => Promise<void> | void) | undefined,
|
||||||
|
fieldName: string | undefined,
|
||||||
|
) {
|
||||||
|
const [isPending, setIsPending] = useState(false);
|
||||||
|
|
||||||
|
const debouncedCallback = useDebouncedCallback((newValue: string) => {
|
||||||
|
if (!callback || !fieldName) return;
|
||||||
|
|
||||||
|
setIsPending(true);
|
||||||
|
const result = callback({ [fieldName]: newValue });
|
||||||
|
|
||||||
|
if (result instanceof Promise) {
|
||||||
|
result.finally(() => setIsPending(false));
|
||||||
|
} else {
|
||||||
|
setIsPending(false);
|
||||||
|
}
|
||||||
|
}, 300);
|
||||||
|
|
||||||
|
return {
|
||||||
|
debouncedCallback,
|
||||||
|
isPending,
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
function useFocus(isPending: boolean) {
|
||||||
|
const inputRef = useRef<HTMLInputElement | null>(null);
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
if (inputRef.current) {
|
||||||
|
inputRef.current.focus();
|
||||||
|
}
|
||||||
|
}, [isPending]);
|
||||||
|
return inputRef;
|
||||||
|
}
|
||||||
@ -2,7 +2,6 @@
|
|||||||
import { z } from 'zod';
|
import { z } from 'zod';
|
||||||
|
|
||||||
export const envSchema = z.object({
|
export const envSchema = z.object({
|
||||||
NEXTAUTH_SECRET: z.string(),
|
__DEV_TELEGRAM_ID: z.string(),
|
||||||
});
|
});
|
||||||
|
|
||||||
export const env = envSchema.parse(process.env);
|
export const env = envSchema.parse(process.env);
|
||||||
|
|||||||
12
apps/web/mocks/get-telegram-user.ts
Normal file
12
apps/web/mocks/get-telegram-user.ts
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
'use server';
|
||||||
|
|
||||||
|
import { env } from '@/config/env';
|
||||||
|
|
||||||
|
export async function getTelegramUser() {
|
||||||
|
if (process.env.NODE_ENV !== 'production')
|
||||||
|
return {
|
||||||
|
id: env.__DEV_TELEGRAM_ID,
|
||||||
|
};
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
@ -21,8 +21,10 @@
|
|||||||
"next": "catalog:",
|
"next": "catalog:",
|
||||||
"next-auth": "^4.24.11",
|
"next-auth": "^4.24.11",
|
||||||
"next-intl": "catalog:",
|
"next-intl": "catalog:",
|
||||||
|
"next-themes": "^0.4.4",
|
||||||
"react": "catalog:",
|
"react": "catalog:",
|
||||||
"react-dom": "catalog:",
|
"react-dom": "catalog:",
|
||||||
|
"use-debounce": "^10.0.4",
|
||||||
"zod": "catalog:"
|
"zod": "catalog:"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
|
|||||||
34
apps/web/providers/theme-provider.tsx
Normal file
34
apps/web/providers/theme-provider.tsx
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
'use client';
|
||||||
|
import { ThemeProvider as NextThemesProvider } from 'next-themes';
|
||||||
|
import { type ComponentProps, useEffect, useState } from 'react';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* mouted - fix for Next.js 15 Hydration Failed
|
||||||
|
*/
|
||||||
|
export function ThemeProvider({
|
||||||
|
children,
|
||||||
|
...props
|
||||||
|
}: Readonly<ComponentProps<typeof NextThemesProvider>>) {
|
||||||
|
const [mounted, setMounted] = useState(false);
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
setMounted(true);
|
||||||
|
}, []);
|
||||||
|
|
||||||
|
if (!mounted) {
|
||||||
|
// eslint-disable-next-line react/jsx-no-useless-fragment
|
||||||
|
return <></>;
|
||||||
|
}
|
||||||
|
|
||||||
|
return (
|
||||||
|
<NextThemesProvider
|
||||||
|
{...props}
|
||||||
|
attribute="class"
|
||||||
|
defaultTheme="system"
|
||||||
|
disableTransitionOnChange
|
||||||
|
enableSystem
|
||||||
|
>
|
||||||
|
{children}
|
||||||
|
</NextThemesProvider>
|
||||||
|
);
|
||||||
|
}
|
||||||
4
apps/web/types/next-auth.d.ts
vendored
4
apps/web/types/next-auth.d.ts
vendored
@ -7,4 +7,8 @@ declare module 'next-auth' {
|
|||||||
telegramId?: null | string;
|
telegramId?: null | string;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
interface User extends DefaultUser {
|
||||||
|
telegramId?: null | string;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,3 +1,4 @@
|
|||||||
|
'use server';
|
||||||
import { getClientWithToken } from '../apollo/client';
|
import { getClientWithToken } from '../apollo/client';
|
||||||
import * as GQL from '../types';
|
import * as GQL from '../types';
|
||||||
|
|
||||||
@ -18,3 +19,12 @@ export async function getCustomer(variables: GQL.GetCustomerQueryVariables) {
|
|||||||
variables,
|
variables,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export async function updateCustomerProfile(variables: GQL.UpdateCustomerProfileMutationVariables) {
|
||||||
|
const { mutate } = await getClientWithToken();
|
||||||
|
|
||||||
|
return mutate({
|
||||||
|
mutation: GQL.UpdateCustomerProfileDocument,
|
||||||
|
variables,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|||||||
@ -4,9 +4,10 @@ module.exports = {
|
|||||||
generates: {
|
generates: {
|
||||||
'./types/operations.generated.ts': {
|
'./types/operations.generated.ts': {
|
||||||
config: {
|
config: {
|
||||||
avoidOptionals: true,
|
avoidOptionals: false,
|
||||||
onlyOperationTypes: true,
|
onlyOperationTypes: true,
|
||||||
useTypeImports: true,
|
useTypeImports: true,
|
||||||
|
maybeValue: 'T | null | undefined'
|
||||||
},
|
},
|
||||||
plugins: ['typescript', 'typescript-operations', 'typed-document-node'],
|
plugins: ['typescript', 'typescript-operations', 'typed-document-node'],
|
||||||
},
|
},
|
||||||
|
|||||||
@ -1,19 +1,27 @@
|
|||||||
|
fragment CustomerProfile on Customer {
|
||||||
|
active
|
||||||
|
documentId
|
||||||
|
name
|
||||||
|
phone
|
||||||
|
photoUrl
|
||||||
|
role
|
||||||
|
telegramId
|
||||||
|
}
|
||||||
|
|
||||||
mutation CreateCustomer($name: String!, $telegramId: Long!, $phone: String!) {
|
mutation CreateCustomer($name: String!, $telegramId: Long!, $phone: String!) {
|
||||||
createCustomer(data: { name: $name, telegramId: $telegramId, phone: $phone, role: client }) {
|
createCustomer(data: { name: $name, telegramId: $telegramId, phone: $phone, role: client }) {
|
||||||
documentId
|
...CustomerProfile
|
||||||
name
|
|
||||||
telegramId
|
|
||||||
phone
|
|
||||||
role
|
|
||||||
active
|
|
||||||
createdAt
|
|
||||||
updatedAt
|
|
||||||
publishedAt
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
query GetCustomer($telegramId: Long!) {
|
query GetCustomer($telegramId: Long!) {
|
||||||
customers(filters: { telegramId: { eq: $telegramId } }) {
|
customers(filters: { telegramId: { eq: $telegramId } }) {
|
||||||
name
|
...CustomerProfile
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
mutation UpdateCustomerProfile($documentId: ID!, $data: CustomerInput!) {
|
||||||
|
updateCustomer(documentId: $documentId, data: $data) {
|
||||||
|
...CustomerProfile
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
import type { TypedDocumentNode as DocumentNode } from '@graphql-typed-document-node/core';
|
import type { TypedDocumentNode as DocumentNode } from '@graphql-typed-document-node/core';
|
||||||
export type Maybe<T> = T | null;
|
export type Maybe<T> = T | null | undefined;
|
||||||
export type InputMaybe<T> = Maybe<T>;
|
export type InputMaybe<T> = T | null | undefined;
|
||||||
export type Exact<T extends { [key: string]: unknown }> = { [K in keyof T]: T[K] };
|
export type Exact<T extends { [key: string]: unknown }> = { [K in keyof T]: T[K] };
|
||||||
export type MakeOptional<T, K extends keyof T> = Omit<T, K> & { [SubKey in K]?: Maybe<T[SubKey]> };
|
export type MakeOptional<T, K extends keyof T> = Omit<T, K> & { [SubKey in K]?: Maybe<T[SubKey]> };
|
||||||
export type MakeMaybe<T, K extends keyof T> = Omit<T, K> & { [SubKey in K]: Maybe<T[SubKey]> };
|
export type MakeMaybe<T, K extends keyof T> = Omit<T, K> & { [SubKey in K]: Maybe<T[SubKey]> };
|
||||||
@ -19,119 +19,121 @@ export type Scalars = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
export type BlockFiltersInput = {
|
export type BlockFiltersInput = {
|
||||||
and: InputMaybe<Array<InputMaybe<BlockFiltersInput>>>;
|
and?: InputMaybe<Array<InputMaybe<BlockFiltersInput>>>;
|
||||||
client: InputMaybe<CustomerFiltersInput>;
|
client?: InputMaybe<CustomerFiltersInput>;
|
||||||
createdAt: InputMaybe<DateTimeFilterInput>;
|
createdAt?: InputMaybe<DateTimeFilterInput>;
|
||||||
dateend: InputMaybe<DateTimeFilterInput>;
|
dateend?: InputMaybe<DateTimeFilterInput>;
|
||||||
datestart: InputMaybe<DateTimeFilterInput>;
|
datestart?: InputMaybe<DateTimeFilterInput>;
|
||||||
documentId: InputMaybe<IdFilterInput>;
|
documentId?: InputMaybe<IdFilterInput>;
|
||||||
master: InputMaybe<CustomerFiltersInput>;
|
master?: InputMaybe<CustomerFiltersInput>;
|
||||||
not: InputMaybe<BlockFiltersInput>;
|
not?: InputMaybe<BlockFiltersInput>;
|
||||||
or: InputMaybe<Array<InputMaybe<BlockFiltersInput>>>;
|
or?: InputMaybe<Array<InputMaybe<BlockFiltersInput>>>;
|
||||||
orders: InputMaybe<OrderFiltersInput>;
|
orders?: InputMaybe<OrderFiltersInput>;
|
||||||
publishedAt: InputMaybe<DateTimeFilterInput>;
|
publishedAt?: InputMaybe<DateTimeFilterInput>;
|
||||||
sessionsCompleted: InputMaybe<IntFilterInput>;
|
sessionsCompleted?: InputMaybe<IntFilterInput>;
|
||||||
sessionsTotal: InputMaybe<IntFilterInput>;
|
sessionsTotal?: InputMaybe<IntFilterInput>;
|
||||||
state: InputMaybe<StringFilterInput>;
|
state?: InputMaybe<StringFilterInput>;
|
||||||
updatedAt: InputMaybe<DateTimeFilterInput>;
|
updatedAt?: InputMaybe<DateTimeFilterInput>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type BlockInput = {
|
export type BlockInput = {
|
||||||
client: InputMaybe<Scalars['ID']['input']>;
|
client?: InputMaybe<Scalars['ID']['input']>;
|
||||||
dateend: InputMaybe<Scalars['DateTime']['input']>;
|
dateend?: InputMaybe<Scalars['DateTime']['input']>;
|
||||||
datestart: InputMaybe<Scalars['DateTime']['input']>;
|
datestart?: InputMaybe<Scalars['DateTime']['input']>;
|
||||||
master: InputMaybe<Scalars['ID']['input']>;
|
master?: InputMaybe<Scalars['ID']['input']>;
|
||||||
orders: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
|
orders?: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
|
||||||
publishedAt: InputMaybe<Scalars['DateTime']['input']>;
|
publishedAt?: InputMaybe<Scalars['DateTime']['input']>;
|
||||||
sessionsCompleted: InputMaybe<Scalars['Int']['input']>;
|
sessionsCompleted?: InputMaybe<Scalars['Int']['input']>;
|
||||||
sessionsTotal: InputMaybe<Scalars['Int']['input']>;
|
sessionsTotal?: InputMaybe<Scalars['Int']['input']>;
|
||||||
state: InputMaybe<Enum_Block_State>;
|
state?: InputMaybe<Enum_Block_State>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type BooleanFilterInput = {
|
export type BooleanFilterInput = {
|
||||||
and: InputMaybe<Array<InputMaybe<Scalars['Boolean']['input']>>>;
|
and?: InputMaybe<Array<InputMaybe<Scalars['Boolean']['input']>>>;
|
||||||
between: InputMaybe<Array<InputMaybe<Scalars['Boolean']['input']>>>;
|
between?: InputMaybe<Array<InputMaybe<Scalars['Boolean']['input']>>>;
|
||||||
contains: InputMaybe<Scalars['Boolean']['input']>;
|
contains?: InputMaybe<Scalars['Boolean']['input']>;
|
||||||
containsi: InputMaybe<Scalars['Boolean']['input']>;
|
containsi?: InputMaybe<Scalars['Boolean']['input']>;
|
||||||
endsWith: InputMaybe<Scalars['Boolean']['input']>;
|
endsWith?: InputMaybe<Scalars['Boolean']['input']>;
|
||||||
eq: InputMaybe<Scalars['Boolean']['input']>;
|
eq?: InputMaybe<Scalars['Boolean']['input']>;
|
||||||
eqi: InputMaybe<Scalars['Boolean']['input']>;
|
eqi?: InputMaybe<Scalars['Boolean']['input']>;
|
||||||
gt: InputMaybe<Scalars['Boolean']['input']>;
|
gt?: InputMaybe<Scalars['Boolean']['input']>;
|
||||||
gte: InputMaybe<Scalars['Boolean']['input']>;
|
gte?: InputMaybe<Scalars['Boolean']['input']>;
|
||||||
in: InputMaybe<Array<InputMaybe<Scalars['Boolean']['input']>>>;
|
in?: InputMaybe<Array<InputMaybe<Scalars['Boolean']['input']>>>;
|
||||||
lt: InputMaybe<Scalars['Boolean']['input']>;
|
lt?: InputMaybe<Scalars['Boolean']['input']>;
|
||||||
lte: InputMaybe<Scalars['Boolean']['input']>;
|
lte?: InputMaybe<Scalars['Boolean']['input']>;
|
||||||
ne: InputMaybe<Scalars['Boolean']['input']>;
|
ne?: InputMaybe<Scalars['Boolean']['input']>;
|
||||||
nei: InputMaybe<Scalars['Boolean']['input']>;
|
nei?: InputMaybe<Scalars['Boolean']['input']>;
|
||||||
not: InputMaybe<BooleanFilterInput>;
|
not?: InputMaybe<BooleanFilterInput>;
|
||||||
notContains: InputMaybe<Scalars['Boolean']['input']>;
|
notContains?: InputMaybe<Scalars['Boolean']['input']>;
|
||||||
notContainsi: InputMaybe<Scalars['Boolean']['input']>;
|
notContainsi?: InputMaybe<Scalars['Boolean']['input']>;
|
||||||
notIn: InputMaybe<Array<InputMaybe<Scalars['Boolean']['input']>>>;
|
notIn?: InputMaybe<Array<InputMaybe<Scalars['Boolean']['input']>>>;
|
||||||
notNull: InputMaybe<Scalars['Boolean']['input']>;
|
notNull?: InputMaybe<Scalars['Boolean']['input']>;
|
||||||
null: InputMaybe<Scalars['Boolean']['input']>;
|
null?: InputMaybe<Scalars['Boolean']['input']>;
|
||||||
or: InputMaybe<Array<InputMaybe<Scalars['Boolean']['input']>>>;
|
or?: InputMaybe<Array<InputMaybe<Scalars['Boolean']['input']>>>;
|
||||||
startsWith: InputMaybe<Scalars['Boolean']['input']>;
|
startsWith?: InputMaybe<Scalars['Boolean']['input']>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type CustomerFiltersInput = {
|
export type CustomerFiltersInput = {
|
||||||
active: InputMaybe<BooleanFilterInput>;
|
active?: InputMaybe<BooleanFilterInput>;
|
||||||
and: InputMaybe<Array<InputMaybe<CustomerFiltersInput>>>;
|
and?: InputMaybe<Array<InputMaybe<CustomerFiltersInput>>>;
|
||||||
blocks: InputMaybe<BlockFiltersInput>;
|
blocks?: InputMaybe<BlockFiltersInput>;
|
||||||
clients: InputMaybe<CustomerFiltersInput>;
|
clients?: InputMaybe<CustomerFiltersInput>;
|
||||||
createdAt: InputMaybe<DateTimeFilterInput>;
|
createdAt?: InputMaybe<DateTimeFilterInput>;
|
||||||
documentId: InputMaybe<IdFilterInput>;
|
documentId?: InputMaybe<IdFilterInput>;
|
||||||
masters: InputMaybe<CustomerFiltersInput>;
|
masters?: InputMaybe<CustomerFiltersInput>;
|
||||||
name: InputMaybe<StringFilterInput>;
|
name?: InputMaybe<StringFilterInput>;
|
||||||
not: InputMaybe<CustomerFiltersInput>;
|
not?: InputMaybe<CustomerFiltersInput>;
|
||||||
or: InputMaybe<Array<InputMaybe<CustomerFiltersInput>>>;
|
or?: InputMaybe<Array<InputMaybe<CustomerFiltersInput>>>;
|
||||||
orders: InputMaybe<OrderFiltersInput>;
|
orders?: InputMaybe<OrderFiltersInput>;
|
||||||
phone: InputMaybe<StringFilterInput>;
|
phone?: InputMaybe<StringFilterInput>;
|
||||||
publishedAt: InputMaybe<DateTimeFilterInput>;
|
photoUrl?: InputMaybe<StringFilterInput>;
|
||||||
role: InputMaybe<StringFilterInput>;
|
publishedAt?: InputMaybe<DateTimeFilterInput>;
|
||||||
setting: InputMaybe<SettingFiltersInput>;
|
role?: InputMaybe<StringFilterInput>;
|
||||||
slots: InputMaybe<SlotFiltersInput>;
|
setting?: InputMaybe<SettingFiltersInput>;
|
||||||
telegramId: InputMaybe<LongFilterInput>;
|
slots?: InputMaybe<SlotFiltersInput>;
|
||||||
updatedAt: InputMaybe<DateTimeFilterInput>;
|
telegramId?: InputMaybe<LongFilterInput>;
|
||||||
|
updatedAt?: InputMaybe<DateTimeFilterInput>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type CustomerInput = {
|
export type CustomerInput = {
|
||||||
active: InputMaybe<Scalars['Boolean']['input']>;
|
active?: InputMaybe<Scalars['Boolean']['input']>;
|
||||||
blocks: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
|
blocks?: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
|
||||||
clients: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
|
clients?: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
|
||||||
masters: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
|
masters?: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
|
||||||
name: InputMaybe<Scalars['String']['input']>;
|
name?: InputMaybe<Scalars['String']['input']>;
|
||||||
orders: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
|
orders?: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
|
||||||
phone: InputMaybe<Scalars['String']['input']>;
|
phone?: InputMaybe<Scalars['String']['input']>;
|
||||||
publishedAt: InputMaybe<Scalars['DateTime']['input']>;
|
photoUrl?: InputMaybe<Scalars['String']['input']>;
|
||||||
role: InputMaybe<Enum_Customer_Role>;
|
publishedAt?: InputMaybe<Scalars['DateTime']['input']>;
|
||||||
setting: InputMaybe<Scalars['ID']['input']>;
|
role?: InputMaybe<Enum_Customer_Role>;
|
||||||
slots: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
|
setting?: InputMaybe<Scalars['ID']['input']>;
|
||||||
telegramId: InputMaybe<Scalars['Long']['input']>;
|
slots?: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
|
||||||
|
telegramId?: InputMaybe<Scalars['Long']['input']>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type DateTimeFilterInput = {
|
export type DateTimeFilterInput = {
|
||||||
and: InputMaybe<Array<InputMaybe<Scalars['DateTime']['input']>>>;
|
and?: InputMaybe<Array<InputMaybe<Scalars['DateTime']['input']>>>;
|
||||||
between: InputMaybe<Array<InputMaybe<Scalars['DateTime']['input']>>>;
|
between?: InputMaybe<Array<InputMaybe<Scalars['DateTime']['input']>>>;
|
||||||
contains: InputMaybe<Scalars['DateTime']['input']>;
|
contains?: InputMaybe<Scalars['DateTime']['input']>;
|
||||||
containsi: InputMaybe<Scalars['DateTime']['input']>;
|
containsi?: InputMaybe<Scalars['DateTime']['input']>;
|
||||||
endsWith: InputMaybe<Scalars['DateTime']['input']>;
|
endsWith?: InputMaybe<Scalars['DateTime']['input']>;
|
||||||
eq: InputMaybe<Scalars['DateTime']['input']>;
|
eq?: InputMaybe<Scalars['DateTime']['input']>;
|
||||||
eqi: InputMaybe<Scalars['DateTime']['input']>;
|
eqi?: InputMaybe<Scalars['DateTime']['input']>;
|
||||||
gt: InputMaybe<Scalars['DateTime']['input']>;
|
gt?: InputMaybe<Scalars['DateTime']['input']>;
|
||||||
gte: InputMaybe<Scalars['DateTime']['input']>;
|
gte?: InputMaybe<Scalars['DateTime']['input']>;
|
||||||
in: InputMaybe<Array<InputMaybe<Scalars['DateTime']['input']>>>;
|
in?: InputMaybe<Array<InputMaybe<Scalars['DateTime']['input']>>>;
|
||||||
lt: InputMaybe<Scalars['DateTime']['input']>;
|
lt?: InputMaybe<Scalars['DateTime']['input']>;
|
||||||
lte: InputMaybe<Scalars['DateTime']['input']>;
|
lte?: InputMaybe<Scalars['DateTime']['input']>;
|
||||||
ne: InputMaybe<Scalars['DateTime']['input']>;
|
ne?: InputMaybe<Scalars['DateTime']['input']>;
|
||||||
nei: InputMaybe<Scalars['DateTime']['input']>;
|
nei?: InputMaybe<Scalars['DateTime']['input']>;
|
||||||
not: InputMaybe<DateTimeFilterInput>;
|
not?: InputMaybe<DateTimeFilterInput>;
|
||||||
notContains: InputMaybe<Scalars['DateTime']['input']>;
|
notContains?: InputMaybe<Scalars['DateTime']['input']>;
|
||||||
notContainsi: InputMaybe<Scalars['DateTime']['input']>;
|
notContainsi?: InputMaybe<Scalars['DateTime']['input']>;
|
||||||
notIn: InputMaybe<Array<InputMaybe<Scalars['DateTime']['input']>>>;
|
notIn?: InputMaybe<Array<InputMaybe<Scalars['DateTime']['input']>>>;
|
||||||
notNull: InputMaybe<Scalars['Boolean']['input']>;
|
notNull?: InputMaybe<Scalars['Boolean']['input']>;
|
||||||
null: InputMaybe<Scalars['Boolean']['input']>;
|
null?: InputMaybe<Scalars['Boolean']['input']>;
|
||||||
or: InputMaybe<Array<InputMaybe<Scalars['DateTime']['input']>>>;
|
or?: InputMaybe<Array<InputMaybe<Scalars['DateTime']['input']>>>;
|
||||||
startsWith: InputMaybe<Scalars['DateTime']['input']>;
|
startsWith?: InputMaybe<Scalars['DateTime']['input']>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export enum Enum_Block_State {
|
export enum Enum_Block_State {
|
||||||
@ -160,179 +162,179 @@ export enum Enum_Slot_State {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export type FileInfoInput = {
|
export type FileInfoInput = {
|
||||||
alternativeText: InputMaybe<Scalars['String']['input']>;
|
alternativeText?: InputMaybe<Scalars['String']['input']>;
|
||||||
caption: InputMaybe<Scalars['String']['input']>;
|
caption?: InputMaybe<Scalars['String']['input']>;
|
||||||
name: InputMaybe<Scalars['String']['input']>;
|
name?: InputMaybe<Scalars['String']['input']>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type FloatFilterInput = {
|
export type FloatFilterInput = {
|
||||||
and: InputMaybe<Array<InputMaybe<Scalars['Float']['input']>>>;
|
and?: InputMaybe<Array<InputMaybe<Scalars['Float']['input']>>>;
|
||||||
between: InputMaybe<Array<InputMaybe<Scalars['Float']['input']>>>;
|
between?: InputMaybe<Array<InputMaybe<Scalars['Float']['input']>>>;
|
||||||
contains: InputMaybe<Scalars['Float']['input']>;
|
contains?: InputMaybe<Scalars['Float']['input']>;
|
||||||
containsi: InputMaybe<Scalars['Float']['input']>;
|
containsi?: InputMaybe<Scalars['Float']['input']>;
|
||||||
endsWith: InputMaybe<Scalars['Float']['input']>;
|
endsWith?: InputMaybe<Scalars['Float']['input']>;
|
||||||
eq: InputMaybe<Scalars['Float']['input']>;
|
eq?: InputMaybe<Scalars['Float']['input']>;
|
||||||
eqi: InputMaybe<Scalars['Float']['input']>;
|
eqi?: InputMaybe<Scalars['Float']['input']>;
|
||||||
gt: InputMaybe<Scalars['Float']['input']>;
|
gt?: InputMaybe<Scalars['Float']['input']>;
|
||||||
gte: InputMaybe<Scalars['Float']['input']>;
|
gte?: InputMaybe<Scalars['Float']['input']>;
|
||||||
in: InputMaybe<Array<InputMaybe<Scalars['Float']['input']>>>;
|
in?: InputMaybe<Array<InputMaybe<Scalars['Float']['input']>>>;
|
||||||
lt: InputMaybe<Scalars['Float']['input']>;
|
lt?: InputMaybe<Scalars['Float']['input']>;
|
||||||
lte: InputMaybe<Scalars['Float']['input']>;
|
lte?: InputMaybe<Scalars['Float']['input']>;
|
||||||
ne: InputMaybe<Scalars['Float']['input']>;
|
ne?: InputMaybe<Scalars['Float']['input']>;
|
||||||
nei: InputMaybe<Scalars['Float']['input']>;
|
nei?: InputMaybe<Scalars['Float']['input']>;
|
||||||
not: InputMaybe<FloatFilterInput>;
|
not?: InputMaybe<FloatFilterInput>;
|
||||||
notContains: InputMaybe<Scalars['Float']['input']>;
|
notContains?: InputMaybe<Scalars['Float']['input']>;
|
||||||
notContainsi: InputMaybe<Scalars['Float']['input']>;
|
notContainsi?: InputMaybe<Scalars['Float']['input']>;
|
||||||
notIn: InputMaybe<Array<InputMaybe<Scalars['Float']['input']>>>;
|
notIn?: InputMaybe<Array<InputMaybe<Scalars['Float']['input']>>>;
|
||||||
notNull: InputMaybe<Scalars['Boolean']['input']>;
|
notNull?: InputMaybe<Scalars['Boolean']['input']>;
|
||||||
null: InputMaybe<Scalars['Boolean']['input']>;
|
null?: InputMaybe<Scalars['Boolean']['input']>;
|
||||||
or: InputMaybe<Array<InputMaybe<Scalars['Float']['input']>>>;
|
or?: InputMaybe<Array<InputMaybe<Scalars['Float']['input']>>>;
|
||||||
startsWith: InputMaybe<Scalars['Float']['input']>;
|
startsWith?: InputMaybe<Scalars['Float']['input']>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type I18NLocaleFiltersInput = {
|
export type I18NLocaleFiltersInput = {
|
||||||
and: InputMaybe<Array<InputMaybe<I18NLocaleFiltersInput>>>;
|
and?: InputMaybe<Array<InputMaybe<I18NLocaleFiltersInput>>>;
|
||||||
code: InputMaybe<StringFilterInput>;
|
code?: InputMaybe<StringFilterInput>;
|
||||||
createdAt: InputMaybe<DateTimeFilterInput>;
|
createdAt?: InputMaybe<DateTimeFilterInput>;
|
||||||
documentId: InputMaybe<IdFilterInput>;
|
documentId?: InputMaybe<IdFilterInput>;
|
||||||
name: InputMaybe<StringFilterInput>;
|
name?: InputMaybe<StringFilterInput>;
|
||||||
not: InputMaybe<I18NLocaleFiltersInput>;
|
not?: InputMaybe<I18NLocaleFiltersInput>;
|
||||||
or: InputMaybe<Array<InputMaybe<I18NLocaleFiltersInput>>>;
|
or?: InputMaybe<Array<InputMaybe<I18NLocaleFiltersInput>>>;
|
||||||
publishedAt: InputMaybe<DateTimeFilterInput>;
|
publishedAt?: InputMaybe<DateTimeFilterInput>;
|
||||||
updatedAt: InputMaybe<DateTimeFilterInput>;
|
updatedAt?: InputMaybe<DateTimeFilterInput>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type IdFilterInput = {
|
export type IdFilterInput = {
|
||||||
and: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
|
and?: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
|
||||||
between: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
|
between?: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
|
||||||
contains: InputMaybe<Scalars['ID']['input']>;
|
contains?: InputMaybe<Scalars['ID']['input']>;
|
||||||
containsi: InputMaybe<Scalars['ID']['input']>;
|
containsi?: InputMaybe<Scalars['ID']['input']>;
|
||||||
endsWith: InputMaybe<Scalars['ID']['input']>;
|
endsWith?: InputMaybe<Scalars['ID']['input']>;
|
||||||
eq: InputMaybe<Scalars['ID']['input']>;
|
eq?: InputMaybe<Scalars['ID']['input']>;
|
||||||
eqi: InputMaybe<Scalars['ID']['input']>;
|
eqi?: InputMaybe<Scalars['ID']['input']>;
|
||||||
gt: InputMaybe<Scalars['ID']['input']>;
|
gt?: InputMaybe<Scalars['ID']['input']>;
|
||||||
gte: InputMaybe<Scalars['ID']['input']>;
|
gte?: InputMaybe<Scalars['ID']['input']>;
|
||||||
in: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
|
in?: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
|
||||||
lt: InputMaybe<Scalars['ID']['input']>;
|
lt?: InputMaybe<Scalars['ID']['input']>;
|
||||||
lte: InputMaybe<Scalars['ID']['input']>;
|
lte?: InputMaybe<Scalars['ID']['input']>;
|
||||||
ne: InputMaybe<Scalars['ID']['input']>;
|
ne?: InputMaybe<Scalars['ID']['input']>;
|
||||||
nei: InputMaybe<Scalars['ID']['input']>;
|
nei?: InputMaybe<Scalars['ID']['input']>;
|
||||||
not: InputMaybe<IdFilterInput>;
|
not?: InputMaybe<IdFilterInput>;
|
||||||
notContains: InputMaybe<Scalars['ID']['input']>;
|
notContains?: InputMaybe<Scalars['ID']['input']>;
|
||||||
notContainsi: InputMaybe<Scalars['ID']['input']>;
|
notContainsi?: InputMaybe<Scalars['ID']['input']>;
|
||||||
notIn: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
|
notIn?: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
|
||||||
notNull: InputMaybe<Scalars['Boolean']['input']>;
|
notNull?: InputMaybe<Scalars['Boolean']['input']>;
|
||||||
null: InputMaybe<Scalars['Boolean']['input']>;
|
null?: InputMaybe<Scalars['Boolean']['input']>;
|
||||||
or: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
|
or?: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
|
||||||
startsWith: InputMaybe<Scalars['ID']['input']>;
|
startsWith?: InputMaybe<Scalars['ID']['input']>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type IntFilterInput = {
|
export type IntFilterInput = {
|
||||||
and: InputMaybe<Array<InputMaybe<Scalars['Int']['input']>>>;
|
and?: InputMaybe<Array<InputMaybe<Scalars['Int']['input']>>>;
|
||||||
between: InputMaybe<Array<InputMaybe<Scalars['Int']['input']>>>;
|
between?: InputMaybe<Array<InputMaybe<Scalars['Int']['input']>>>;
|
||||||
contains: InputMaybe<Scalars['Int']['input']>;
|
contains?: InputMaybe<Scalars['Int']['input']>;
|
||||||
containsi: InputMaybe<Scalars['Int']['input']>;
|
containsi?: InputMaybe<Scalars['Int']['input']>;
|
||||||
endsWith: InputMaybe<Scalars['Int']['input']>;
|
endsWith?: InputMaybe<Scalars['Int']['input']>;
|
||||||
eq: InputMaybe<Scalars['Int']['input']>;
|
eq?: InputMaybe<Scalars['Int']['input']>;
|
||||||
eqi: InputMaybe<Scalars['Int']['input']>;
|
eqi?: InputMaybe<Scalars['Int']['input']>;
|
||||||
gt: InputMaybe<Scalars['Int']['input']>;
|
gt?: InputMaybe<Scalars['Int']['input']>;
|
||||||
gte: InputMaybe<Scalars['Int']['input']>;
|
gte?: InputMaybe<Scalars['Int']['input']>;
|
||||||
in: InputMaybe<Array<InputMaybe<Scalars['Int']['input']>>>;
|
in?: InputMaybe<Array<InputMaybe<Scalars['Int']['input']>>>;
|
||||||
lt: InputMaybe<Scalars['Int']['input']>;
|
lt?: InputMaybe<Scalars['Int']['input']>;
|
||||||
lte: InputMaybe<Scalars['Int']['input']>;
|
lte?: InputMaybe<Scalars['Int']['input']>;
|
||||||
ne: InputMaybe<Scalars['Int']['input']>;
|
ne?: InputMaybe<Scalars['Int']['input']>;
|
||||||
nei: InputMaybe<Scalars['Int']['input']>;
|
nei?: InputMaybe<Scalars['Int']['input']>;
|
||||||
not: InputMaybe<IntFilterInput>;
|
not?: InputMaybe<IntFilterInput>;
|
||||||
notContains: InputMaybe<Scalars['Int']['input']>;
|
notContains?: InputMaybe<Scalars['Int']['input']>;
|
||||||
notContainsi: InputMaybe<Scalars['Int']['input']>;
|
notContainsi?: InputMaybe<Scalars['Int']['input']>;
|
||||||
notIn: InputMaybe<Array<InputMaybe<Scalars['Int']['input']>>>;
|
notIn?: InputMaybe<Array<InputMaybe<Scalars['Int']['input']>>>;
|
||||||
notNull: InputMaybe<Scalars['Boolean']['input']>;
|
notNull?: InputMaybe<Scalars['Boolean']['input']>;
|
||||||
null: InputMaybe<Scalars['Boolean']['input']>;
|
null?: InputMaybe<Scalars['Boolean']['input']>;
|
||||||
or: InputMaybe<Array<InputMaybe<Scalars['Int']['input']>>>;
|
or?: InputMaybe<Array<InputMaybe<Scalars['Int']['input']>>>;
|
||||||
startsWith: InputMaybe<Scalars['Int']['input']>;
|
startsWith?: InputMaybe<Scalars['Int']['input']>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type JsonFilterInput = {
|
export type JsonFilterInput = {
|
||||||
and: InputMaybe<Array<InputMaybe<Scalars['JSON']['input']>>>;
|
and?: InputMaybe<Array<InputMaybe<Scalars['JSON']['input']>>>;
|
||||||
between: InputMaybe<Array<InputMaybe<Scalars['JSON']['input']>>>;
|
between?: InputMaybe<Array<InputMaybe<Scalars['JSON']['input']>>>;
|
||||||
contains: InputMaybe<Scalars['JSON']['input']>;
|
contains?: InputMaybe<Scalars['JSON']['input']>;
|
||||||
containsi: InputMaybe<Scalars['JSON']['input']>;
|
containsi?: InputMaybe<Scalars['JSON']['input']>;
|
||||||
endsWith: InputMaybe<Scalars['JSON']['input']>;
|
endsWith?: InputMaybe<Scalars['JSON']['input']>;
|
||||||
eq: InputMaybe<Scalars['JSON']['input']>;
|
eq?: InputMaybe<Scalars['JSON']['input']>;
|
||||||
eqi: InputMaybe<Scalars['JSON']['input']>;
|
eqi?: InputMaybe<Scalars['JSON']['input']>;
|
||||||
gt: InputMaybe<Scalars['JSON']['input']>;
|
gt?: InputMaybe<Scalars['JSON']['input']>;
|
||||||
gte: InputMaybe<Scalars['JSON']['input']>;
|
gte?: InputMaybe<Scalars['JSON']['input']>;
|
||||||
in: InputMaybe<Array<InputMaybe<Scalars['JSON']['input']>>>;
|
in?: InputMaybe<Array<InputMaybe<Scalars['JSON']['input']>>>;
|
||||||
lt: InputMaybe<Scalars['JSON']['input']>;
|
lt?: InputMaybe<Scalars['JSON']['input']>;
|
||||||
lte: InputMaybe<Scalars['JSON']['input']>;
|
lte?: InputMaybe<Scalars['JSON']['input']>;
|
||||||
ne: InputMaybe<Scalars['JSON']['input']>;
|
ne?: InputMaybe<Scalars['JSON']['input']>;
|
||||||
nei: InputMaybe<Scalars['JSON']['input']>;
|
nei?: InputMaybe<Scalars['JSON']['input']>;
|
||||||
not: InputMaybe<JsonFilterInput>;
|
not?: InputMaybe<JsonFilterInput>;
|
||||||
notContains: InputMaybe<Scalars['JSON']['input']>;
|
notContains?: InputMaybe<Scalars['JSON']['input']>;
|
||||||
notContainsi: InputMaybe<Scalars['JSON']['input']>;
|
notContainsi?: InputMaybe<Scalars['JSON']['input']>;
|
||||||
notIn: InputMaybe<Array<InputMaybe<Scalars['JSON']['input']>>>;
|
notIn?: InputMaybe<Array<InputMaybe<Scalars['JSON']['input']>>>;
|
||||||
notNull: InputMaybe<Scalars['Boolean']['input']>;
|
notNull?: InputMaybe<Scalars['Boolean']['input']>;
|
||||||
null: InputMaybe<Scalars['Boolean']['input']>;
|
null?: InputMaybe<Scalars['Boolean']['input']>;
|
||||||
or: InputMaybe<Array<InputMaybe<Scalars['JSON']['input']>>>;
|
or?: InputMaybe<Array<InputMaybe<Scalars['JSON']['input']>>>;
|
||||||
startsWith: InputMaybe<Scalars['JSON']['input']>;
|
startsWith?: InputMaybe<Scalars['JSON']['input']>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type LongFilterInput = {
|
export type LongFilterInput = {
|
||||||
and: InputMaybe<Array<InputMaybe<Scalars['Long']['input']>>>;
|
and?: InputMaybe<Array<InputMaybe<Scalars['Long']['input']>>>;
|
||||||
between: InputMaybe<Array<InputMaybe<Scalars['Long']['input']>>>;
|
between?: InputMaybe<Array<InputMaybe<Scalars['Long']['input']>>>;
|
||||||
contains: InputMaybe<Scalars['Long']['input']>;
|
contains?: InputMaybe<Scalars['Long']['input']>;
|
||||||
containsi: InputMaybe<Scalars['Long']['input']>;
|
containsi?: InputMaybe<Scalars['Long']['input']>;
|
||||||
endsWith: InputMaybe<Scalars['Long']['input']>;
|
endsWith?: InputMaybe<Scalars['Long']['input']>;
|
||||||
eq: InputMaybe<Scalars['Long']['input']>;
|
eq?: InputMaybe<Scalars['Long']['input']>;
|
||||||
eqi: InputMaybe<Scalars['Long']['input']>;
|
eqi?: InputMaybe<Scalars['Long']['input']>;
|
||||||
gt: InputMaybe<Scalars['Long']['input']>;
|
gt?: InputMaybe<Scalars['Long']['input']>;
|
||||||
gte: InputMaybe<Scalars['Long']['input']>;
|
gte?: InputMaybe<Scalars['Long']['input']>;
|
||||||
in: InputMaybe<Array<InputMaybe<Scalars['Long']['input']>>>;
|
in?: InputMaybe<Array<InputMaybe<Scalars['Long']['input']>>>;
|
||||||
lt: InputMaybe<Scalars['Long']['input']>;
|
lt?: InputMaybe<Scalars['Long']['input']>;
|
||||||
lte: InputMaybe<Scalars['Long']['input']>;
|
lte?: InputMaybe<Scalars['Long']['input']>;
|
||||||
ne: InputMaybe<Scalars['Long']['input']>;
|
ne?: InputMaybe<Scalars['Long']['input']>;
|
||||||
nei: InputMaybe<Scalars['Long']['input']>;
|
nei?: InputMaybe<Scalars['Long']['input']>;
|
||||||
not: InputMaybe<LongFilterInput>;
|
not?: InputMaybe<LongFilterInput>;
|
||||||
notContains: InputMaybe<Scalars['Long']['input']>;
|
notContains?: InputMaybe<Scalars['Long']['input']>;
|
||||||
notContainsi: InputMaybe<Scalars['Long']['input']>;
|
notContainsi?: InputMaybe<Scalars['Long']['input']>;
|
||||||
notIn: InputMaybe<Array<InputMaybe<Scalars['Long']['input']>>>;
|
notIn?: InputMaybe<Array<InputMaybe<Scalars['Long']['input']>>>;
|
||||||
notNull: InputMaybe<Scalars['Boolean']['input']>;
|
notNull?: InputMaybe<Scalars['Boolean']['input']>;
|
||||||
null: InputMaybe<Scalars['Boolean']['input']>;
|
null?: InputMaybe<Scalars['Boolean']['input']>;
|
||||||
or: InputMaybe<Array<InputMaybe<Scalars['Long']['input']>>>;
|
or?: InputMaybe<Array<InputMaybe<Scalars['Long']['input']>>>;
|
||||||
startsWith: InputMaybe<Scalars['Long']['input']>;
|
startsWith?: InputMaybe<Scalars['Long']['input']>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type OrderFiltersInput = {
|
export type OrderFiltersInput = {
|
||||||
and: InputMaybe<Array<InputMaybe<OrderFiltersInput>>>;
|
and?: InputMaybe<Array<InputMaybe<OrderFiltersInput>>>;
|
||||||
block: InputMaybe<BlockFiltersInput>;
|
block?: InputMaybe<BlockFiltersInput>;
|
||||||
client: InputMaybe<CustomerFiltersInput>;
|
client?: InputMaybe<CustomerFiltersInput>;
|
||||||
createdAt: InputMaybe<DateTimeFilterInput>;
|
createdAt?: InputMaybe<DateTimeFilterInput>;
|
||||||
documentId: InputMaybe<IdFilterInput>;
|
documentId?: InputMaybe<IdFilterInput>;
|
||||||
not: InputMaybe<OrderFiltersInput>;
|
not?: InputMaybe<OrderFiltersInput>;
|
||||||
or: InputMaybe<Array<InputMaybe<OrderFiltersInput>>>;
|
or?: InputMaybe<Array<InputMaybe<OrderFiltersInput>>>;
|
||||||
price: InputMaybe<IntFilterInput>;
|
price?: InputMaybe<IntFilterInput>;
|
||||||
publishedAt: InputMaybe<DateTimeFilterInput>;
|
publishedAt?: InputMaybe<DateTimeFilterInput>;
|
||||||
service: InputMaybe<StringFilterInput>;
|
service?: InputMaybe<StringFilterInput>;
|
||||||
slot: InputMaybe<SlotFiltersInput>;
|
slot?: InputMaybe<SlotFiltersInput>;
|
||||||
state: InputMaybe<StringFilterInput>;
|
state?: InputMaybe<StringFilterInput>;
|
||||||
updatedAt: InputMaybe<DateTimeFilterInput>;
|
updatedAt?: InputMaybe<DateTimeFilterInput>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type OrderInput = {
|
export type OrderInput = {
|
||||||
block: InputMaybe<Scalars['ID']['input']>;
|
block?: InputMaybe<Scalars['ID']['input']>;
|
||||||
client: InputMaybe<Scalars['ID']['input']>;
|
client?: InputMaybe<Scalars['ID']['input']>;
|
||||||
price: InputMaybe<Scalars['Int']['input']>;
|
price?: InputMaybe<Scalars['Int']['input']>;
|
||||||
publishedAt: InputMaybe<Scalars['DateTime']['input']>;
|
publishedAt?: InputMaybe<Scalars['DateTime']['input']>;
|
||||||
service: InputMaybe<Scalars['String']['input']>;
|
service?: InputMaybe<Scalars['String']['input']>;
|
||||||
slot: InputMaybe<Scalars['ID']['input']>;
|
slot?: InputMaybe<Scalars['ID']['input']>;
|
||||||
state: InputMaybe<Enum_Order_State>;
|
state?: InputMaybe<Enum_Order_State>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type PaginationArg = {
|
export type PaginationArg = {
|
||||||
limit: InputMaybe<Scalars['Int']['input']>;
|
limit?: InputMaybe<Scalars['Int']['input']>;
|
||||||
page: InputMaybe<Scalars['Int']['input']>;
|
page?: InputMaybe<Scalars['Int']['input']>;
|
||||||
pageSize: InputMaybe<Scalars['Int']['input']>;
|
pageSize?: InputMaybe<Scalars['Int']['input']>;
|
||||||
start: InputMaybe<Scalars['Int']['input']>;
|
start?: InputMaybe<Scalars['Int']['input']>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export enum PublicationStatus {
|
export enum PublicationStatus {
|
||||||
@ -341,154 +343,154 @@ export enum PublicationStatus {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export type ReviewWorkflowsWorkflowFiltersInput = {
|
export type ReviewWorkflowsWorkflowFiltersInput = {
|
||||||
and: InputMaybe<Array<InputMaybe<ReviewWorkflowsWorkflowFiltersInput>>>;
|
and?: InputMaybe<Array<InputMaybe<ReviewWorkflowsWorkflowFiltersInput>>>;
|
||||||
contentTypes: InputMaybe<JsonFilterInput>;
|
contentTypes?: InputMaybe<JsonFilterInput>;
|
||||||
createdAt: InputMaybe<DateTimeFilterInput>;
|
createdAt?: InputMaybe<DateTimeFilterInput>;
|
||||||
documentId: InputMaybe<IdFilterInput>;
|
documentId?: InputMaybe<IdFilterInput>;
|
||||||
name: InputMaybe<StringFilterInput>;
|
name?: InputMaybe<StringFilterInput>;
|
||||||
not: InputMaybe<ReviewWorkflowsWorkflowFiltersInput>;
|
not?: InputMaybe<ReviewWorkflowsWorkflowFiltersInput>;
|
||||||
or: InputMaybe<Array<InputMaybe<ReviewWorkflowsWorkflowFiltersInput>>>;
|
or?: InputMaybe<Array<InputMaybe<ReviewWorkflowsWorkflowFiltersInput>>>;
|
||||||
publishedAt: InputMaybe<DateTimeFilterInput>;
|
publishedAt?: InputMaybe<DateTimeFilterInput>;
|
||||||
stageRequiredToPublish: InputMaybe<ReviewWorkflowsWorkflowStageFiltersInput>;
|
stageRequiredToPublish?: InputMaybe<ReviewWorkflowsWorkflowStageFiltersInput>;
|
||||||
stages: InputMaybe<ReviewWorkflowsWorkflowStageFiltersInput>;
|
stages?: InputMaybe<ReviewWorkflowsWorkflowStageFiltersInput>;
|
||||||
updatedAt: InputMaybe<DateTimeFilterInput>;
|
updatedAt?: InputMaybe<DateTimeFilterInput>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type ReviewWorkflowsWorkflowInput = {
|
export type ReviewWorkflowsWorkflowInput = {
|
||||||
contentTypes: InputMaybe<Scalars['JSON']['input']>;
|
contentTypes?: InputMaybe<Scalars['JSON']['input']>;
|
||||||
name: InputMaybe<Scalars['String']['input']>;
|
name?: InputMaybe<Scalars['String']['input']>;
|
||||||
publishedAt: InputMaybe<Scalars['DateTime']['input']>;
|
publishedAt?: InputMaybe<Scalars['DateTime']['input']>;
|
||||||
stageRequiredToPublish: InputMaybe<Scalars['ID']['input']>;
|
stageRequiredToPublish?: InputMaybe<Scalars['ID']['input']>;
|
||||||
stages: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
|
stages?: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type ReviewWorkflowsWorkflowStageFiltersInput = {
|
export type ReviewWorkflowsWorkflowStageFiltersInput = {
|
||||||
and: InputMaybe<Array<InputMaybe<ReviewWorkflowsWorkflowStageFiltersInput>>>;
|
and?: InputMaybe<Array<InputMaybe<ReviewWorkflowsWorkflowStageFiltersInput>>>;
|
||||||
color: InputMaybe<StringFilterInput>;
|
color?: InputMaybe<StringFilterInput>;
|
||||||
createdAt: InputMaybe<DateTimeFilterInput>;
|
createdAt?: InputMaybe<DateTimeFilterInput>;
|
||||||
documentId: InputMaybe<IdFilterInput>;
|
documentId?: InputMaybe<IdFilterInput>;
|
||||||
name: InputMaybe<StringFilterInput>;
|
name?: InputMaybe<StringFilterInput>;
|
||||||
not: InputMaybe<ReviewWorkflowsWorkflowStageFiltersInput>;
|
not?: InputMaybe<ReviewWorkflowsWorkflowStageFiltersInput>;
|
||||||
or: InputMaybe<Array<InputMaybe<ReviewWorkflowsWorkflowStageFiltersInput>>>;
|
or?: InputMaybe<Array<InputMaybe<ReviewWorkflowsWorkflowStageFiltersInput>>>;
|
||||||
publishedAt: InputMaybe<DateTimeFilterInput>;
|
publishedAt?: InputMaybe<DateTimeFilterInput>;
|
||||||
updatedAt: InputMaybe<DateTimeFilterInput>;
|
updatedAt?: InputMaybe<DateTimeFilterInput>;
|
||||||
workflow: InputMaybe<ReviewWorkflowsWorkflowFiltersInput>;
|
workflow?: InputMaybe<ReviewWorkflowsWorkflowFiltersInput>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type ReviewWorkflowsWorkflowStageInput = {
|
export type ReviewWorkflowsWorkflowStageInput = {
|
||||||
color: InputMaybe<Scalars['String']['input']>;
|
color?: InputMaybe<Scalars['String']['input']>;
|
||||||
name: InputMaybe<Scalars['String']['input']>;
|
name?: InputMaybe<Scalars['String']['input']>;
|
||||||
publishedAt: InputMaybe<Scalars['DateTime']['input']>;
|
publishedAt?: InputMaybe<Scalars['DateTime']['input']>;
|
||||||
workflow: InputMaybe<Scalars['ID']['input']>;
|
workflow?: InputMaybe<Scalars['ID']['input']>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type SettingFiltersInput = {
|
export type SettingFiltersInput = {
|
||||||
and: InputMaybe<Array<InputMaybe<SettingFiltersInput>>>;
|
and?: InputMaybe<Array<InputMaybe<SettingFiltersInput>>>;
|
||||||
createdAt: InputMaybe<DateTimeFilterInput>;
|
createdAt?: InputMaybe<DateTimeFilterInput>;
|
||||||
customer: InputMaybe<CustomerFiltersInput>;
|
customer?: InputMaybe<CustomerFiltersInput>;
|
||||||
documentId: InputMaybe<IdFilterInput>;
|
documentId?: InputMaybe<IdFilterInput>;
|
||||||
not: InputMaybe<SettingFiltersInput>;
|
not?: InputMaybe<SettingFiltersInput>;
|
||||||
or: InputMaybe<Array<InputMaybe<SettingFiltersInput>>>;
|
or?: InputMaybe<Array<InputMaybe<SettingFiltersInput>>>;
|
||||||
publishedAt: InputMaybe<DateTimeFilterInput>;
|
publishedAt?: InputMaybe<DateTimeFilterInput>;
|
||||||
recordingByBlocks: InputMaybe<BooleanFilterInput>;
|
recordingByBlocks?: InputMaybe<BooleanFilterInput>;
|
||||||
updatedAt: InputMaybe<DateTimeFilterInput>;
|
updatedAt?: InputMaybe<DateTimeFilterInput>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type SettingInput = {
|
export type SettingInput = {
|
||||||
customer: InputMaybe<Scalars['ID']['input']>;
|
customer?: InputMaybe<Scalars['ID']['input']>;
|
||||||
publishedAt: InputMaybe<Scalars['DateTime']['input']>;
|
publishedAt?: InputMaybe<Scalars['DateTime']['input']>;
|
||||||
recordingByBlocks: InputMaybe<Scalars['Boolean']['input']>;
|
recordingByBlocks?: InputMaybe<Scalars['Boolean']['input']>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type SlotFiltersInput = {
|
export type SlotFiltersInput = {
|
||||||
and: InputMaybe<Array<InputMaybe<SlotFiltersInput>>>;
|
and?: InputMaybe<Array<InputMaybe<SlotFiltersInput>>>;
|
||||||
createdAt: InputMaybe<DateTimeFilterInput>;
|
createdAt?: InputMaybe<DateTimeFilterInput>;
|
||||||
dateend: InputMaybe<DateTimeFilterInput>;
|
dateend?: InputMaybe<DateTimeFilterInput>;
|
||||||
datestart: InputMaybe<DateTimeFilterInput>;
|
datestart?: InputMaybe<DateTimeFilterInput>;
|
||||||
documentId: InputMaybe<IdFilterInput>;
|
documentId?: InputMaybe<IdFilterInput>;
|
||||||
master: InputMaybe<CustomerFiltersInput>;
|
master?: InputMaybe<CustomerFiltersInput>;
|
||||||
not: InputMaybe<SlotFiltersInput>;
|
not?: InputMaybe<SlotFiltersInput>;
|
||||||
or: InputMaybe<Array<InputMaybe<SlotFiltersInput>>>;
|
or?: InputMaybe<Array<InputMaybe<SlotFiltersInput>>>;
|
||||||
orders: InputMaybe<OrderFiltersInput>;
|
orders?: InputMaybe<OrderFiltersInput>;
|
||||||
publishedAt: InputMaybe<DateTimeFilterInput>;
|
publishedAt?: InputMaybe<DateTimeFilterInput>;
|
||||||
state: InputMaybe<StringFilterInput>;
|
state?: InputMaybe<StringFilterInput>;
|
||||||
updatedAt: InputMaybe<DateTimeFilterInput>;
|
updatedAt?: InputMaybe<DateTimeFilterInput>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type SlotInput = {
|
export type SlotInput = {
|
||||||
dateend: InputMaybe<Scalars['DateTime']['input']>;
|
dateend?: InputMaybe<Scalars['DateTime']['input']>;
|
||||||
datestart: InputMaybe<Scalars['DateTime']['input']>;
|
datestart?: InputMaybe<Scalars['DateTime']['input']>;
|
||||||
master: InputMaybe<Scalars['ID']['input']>;
|
master?: InputMaybe<Scalars['ID']['input']>;
|
||||||
orders: InputMaybe<Scalars['ID']['input']>;
|
orders?: InputMaybe<Scalars['ID']['input']>;
|
||||||
publishedAt: InputMaybe<Scalars['DateTime']['input']>;
|
publishedAt?: InputMaybe<Scalars['DateTime']['input']>;
|
||||||
state: InputMaybe<Enum_Slot_State>;
|
state?: InputMaybe<Enum_Slot_State>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type StringFilterInput = {
|
export type StringFilterInput = {
|
||||||
and: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
|
and?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
|
||||||
between: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
|
between?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
|
||||||
contains: InputMaybe<Scalars['String']['input']>;
|
contains?: InputMaybe<Scalars['String']['input']>;
|
||||||
containsi: InputMaybe<Scalars['String']['input']>;
|
containsi?: InputMaybe<Scalars['String']['input']>;
|
||||||
endsWith: InputMaybe<Scalars['String']['input']>;
|
endsWith?: InputMaybe<Scalars['String']['input']>;
|
||||||
eq: InputMaybe<Scalars['String']['input']>;
|
eq?: InputMaybe<Scalars['String']['input']>;
|
||||||
eqi: InputMaybe<Scalars['String']['input']>;
|
eqi?: InputMaybe<Scalars['String']['input']>;
|
||||||
gt: InputMaybe<Scalars['String']['input']>;
|
gt?: InputMaybe<Scalars['String']['input']>;
|
||||||
gte: InputMaybe<Scalars['String']['input']>;
|
gte?: InputMaybe<Scalars['String']['input']>;
|
||||||
in: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
|
in?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
|
||||||
lt: InputMaybe<Scalars['String']['input']>;
|
lt?: InputMaybe<Scalars['String']['input']>;
|
||||||
lte: InputMaybe<Scalars['String']['input']>;
|
lte?: InputMaybe<Scalars['String']['input']>;
|
||||||
ne: InputMaybe<Scalars['String']['input']>;
|
ne?: InputMaybe<Scalars['String']['input']>;
|
||||||
nei: InputMaybe<Scalars['String']['input']>;
|
nei?: InputMaybe<Scalars['String']['input']>;
|
||||||
not: InputMaybe<StringFilterInput>;
|
not?: InputMaybe<StringFilterInput>;
|
||||||
notContains: InputMaybe<Scalars['String']['input']>;
|
notContains?: InputMaybe<Scalars['String']['input']>;
|
||||||
notContainsi: InputMaybe<Scalars['String']['input']>;
|
notContainsi?: InputMaybe<Scalars['String']['input']>;
|
||||||
notIn: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
|
notIn?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
|
||||||
notNull: InputMaybe<Scalars['Boolean']['input']>;
|
notNull?: InputMaybe<Scalars['Boolean']['input']>;
|
||||||
null: InputMaybe<Scalars['Boolean']['input']>;
|
null?: InputMaybe<Scalars['Boolean']['input']>;
|
||||||
or: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
|
or?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
|
||||||
startsWith: InputMaybe<Scalars['String']['input']>;
|
startsWith?: InputMaybe<Scalars['String']['input']>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type UploadFileFiltersInput = {
|
export type UploadFileFiltersInput = {
|
||||||
alternativeText: InputMaybe<StringFilterInput>;
|
alternativeText?: InputMaybe<StringFilterInput>;
|
||||||
and: InputMaybe<Array<InputMaybe<UploadFileFiltersInput>>>;
|
and?: InputMaybe<Array<InputMaybe<UploadFileFiltersInput>>>;
|
||||||
caption: InputMaybe<StringFilterInput>;
|
caption?: InputMaybe<StringFilterInput>;
|
||||||
createdAt: InputMaybe<DateTimeFilterInput>;
|
createdAt?: InputMaybe<DateTimeFilterInput>;
|
||||||
documentId: InputMaybe<IdFilterInput>;
|
documentId?: InputMaybe<IdFilterInput>;
|
||||||
ext: InputMaybe<StringFilterInput>;
|
ext?: InputMaybe<StringFilterInput>;
|
||||||
formats: InputMaybe<JsonFilterInput>;
|
formats?: InputMaybe<JsonFilterInput>;
|
||||||
hash: InputMaybe<StringFilterInput>;
|
hash?: InputMaybe<StringFilterInput>;
|
||||||
height: InputMaybe<IntFilterInput>;
|
height?: InputMaybe<IntFilterInput>;
|
||||||
mime: InputMaybe<StringFilterInput>;
|
mime?: InputMaybe<StringFilterInput>;
|
||||||
name: InputMaybe<StringFilterInput>;
|
name?: InputMaybe<StringFilterInput>;
|
||||||
not: InputMaybe<UploadFileFiltersInput>;
|
not?: InputMaybe<UploadFileFiltersInput>;
|
||||||
or: InputMaybe<Array<InputMaybe<UploadFileFiltersInput>>>;
|
or?: InputMaybe<Array<InputMaybe<UploadFileFiltersInput>>>;
|
||||||
previewUrl: InputMaybe<StringFilterInput>;
|
previewUrl?: InputMaybe<StringFilterInput>;
|
||||||
provider: InputMaybe<StringFilterInput>;
|
provider?: InputMaybe<StringFilterInput>;
|
||||||
provider_metadata: InputMaybe<JsonFilterInput>;
|
provider_metadata?: InputMaybe<JsonFilterInput>;
|
||||||
publishedAt: InputMaybe<DateTimeFilterInput>;
|
publishedAt?: InputMaybe<DateTimeFilterInput>;
|
||||||
size: InputMaybe<FloatFilterInput>;
|
size?: InputMaybe<FloatFilterInput>;
|
||||||
updatedAt: InputMaybe<DateTimeFilterInput>;
|
updatedAt?: InputMaybe<DateTimeFilterInput>;
|
||||||
url: InputMaybe<StringFilterInput>;
|
url?: InputMaybe<StringFilterInput>;
|
||||||
width: InputMaybe<IntFilterInput>;
|
width?: InputMaybe<IntFilterInput>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type UsersPermissionsLoginInput = {
|
export type UsersPermissionsLoginInput = {
|
||||||
identifier: Scalars['String']['input'];
|
identifier: Scalars['String']['input'];
|
||||||
password: Scalars['String']['input'];
|
password: Scalars['String']['input'];
|
||||||
provider: Scalars['String']['input'];
|
provider?: Scalars['String']['input'];
|
||||||
};
|
};
|
||||||
|
|
||||||
export type UsersPermissionsPermissionFiltersInput = {
|
export type UsersPermissionsPermissionFiltersInput = {
|
||||||
action: InputMaybe<StringFilterInput>;
|
action?: InputMaybe<StringFilterInput>;
|
||||||
and: InputMaybe<Array<InputMaybe<UsersPermissionsPermissionFiltersInput>>>;
|
and?: InputMaybe<Array<InputMaybe<UsersPermissionsPermissionFiltersInput>>>;
|
||||||
createdAt: InputMaybe<DateTimeFilterInput>;
|
createdAt?: InputMaybe<DateTimeFilterInput>;
|
||||||
documentId: InputMaybe<IdFilterInput>;
|
documentId?: InputMaybe<IdFilterInput>;
|
||||||
not: InputMaybe<UsersPermissionsPermissionFiltersInput>;
|
not?: InputMaybe<UsersPermissionsPermissionFiltersInput>;
|
||||||
or: InputMaybe<Array<InputMaybe<UsersPermissionsPermissionFiltersInput>>>;
|
or?: InputMaybe<Array<InputMaybe<UsersPermissionsPermissionFiltersInput>>>;
|
||||||
publishedAt: InputMaybe<DateTimeFilterInput>;
|
publishedAt?: InputMaybe<DateTimeFilterInput>;
|
||||||
role: InputMaybe<UsersPermissionsRoleFiltersInput>;
|
role?: InputMaybe<UsersPermissionsRoleFiltersInput>;
|
||||||
updatedAt: InputMaybe<DateTimeFilterInput>;
|
updatedAt?: InputMaybe<DateTimeFilterInput>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type UsersPermissionsRegisterInput = {
|
export type UsersPermissionsRegisterInput = {
|
||||||
@ -498,54 +500,54 @@ export type UsersPermissionsRegisterInput = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
export type UsersPermissionsRoleFiltersInput = {
|
export type UsersPermissionsRoleFiltersInput = {
|
||||||
and: InputMaybe<Array<InputMaybe<UsersPermissionsRoleFiltersInput>>>;
|
and?: InputMaybe<Array<InputMaybe<UsersPermissionsRoleFiltersInput>>>;
|
||||||
createdAt: InputMaybe<DateTimeFilterInput>;
|
createdAt?: InputMaybe<DateTimeFilterInput>;
|
||||||
description: InputMaybe<StringFilterInput>;
|
description?: InputMaybe<StringFilterInput>;
|
||||||
documentId: InputMaybe<IdFilterInput>;
|
documentId?: InputMaybe<IdFilterInput>;
|
||||||
name: InputMaybe<StringFilterInput>;
|
name?: InputMaybe<StringFilterInput>;
|
||||||
not: InputMaybe<UsersPermissionsRoleFiltersInput>;
|
not?: InputMaybe<UsersPermissionsRoleFiltersInput>;
|
||||||
or: InputMaybe<Array<InputMaybe<UsersPermissionsRoleFiltersInput>>>;
|
or?: InputMaybe<Array<InputMaybe<UsersPermissionsRoleFiltersInput>>>;
|
||||||
permissions: InputMaybe<UsersPermissionsPermissionFiltersInput>;
|
permissions?: InputMaybe<UsersPermissionsPermissionFiltersInput>;
|
||||||
publishedAt: InputMaybe<DateTimeFilterInput>;
|
publishedAt?: InputMaybe<DateTimeFilterInput>;
|
||||||
type: InputMaybe<StringFilterInput>;
|
type?: InputMaybe<StringFilterInput>;
|
||||||
updatedAt: InputMaybe<DateTimeFilterInput>;
|
updatedAt?: InputMaybe<DateTimeFilterInput>;
|
||||||
users: InputMaybe<UsersPermissionsUserFiltersInput>;
|
users?: InputMaybe<UsersPermissionsUserFiltersInput>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type UsersPermissionsRoleInput = {
|
export type UsersPermissionsRoleInput = {
|
||||||
description: InputMaybe<Scalars['String']['input']>;
|
description?: InputMaybe<Scalars['String']['input']>;
|
||||||
name: InputMaybe<Scalars['String']['input']>;
|
name?: InputMaybe<Scalars['String']['input']>;
|
||||||
permissions: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
|
permissions?: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
|
||||||
publishedAt: InputMaybe<Scalars['DateTime']['input']>;
|
publishedAt?: InputMaybe<Scalars['DateTime']['input']>;
|
||||||
type: InputMaybe<Scalars['String']['input']>;
|
type?: InputMaybe<Scalars['String']['input']>;
|
||||||
users: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
|
users?: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type UsersPermissionsUserFiltersInput = {
|
export type UsersPermissionsUserFiltersInput = {
|
||||||
and: InputMaybe<Array<InputMaybe<UsersPermissionsUserFiltersInput>>>;
|
and?: InputMaybe<Array<InputMaybe<UsersPermissionsUserFiltersInput>>>;
|
||||||
blocked: InputMaybe<BooleanFilterInput>;
|
blocked?: InputMaybe<BooleanFilterInput>;
|
||||||
confirmed: InputMaybe<BooleanFilterInput>;
|
confirmed?: InputMaybe<BooleanFilterInput>;
|
||||||
createdAt: InputMaybe<DateTimeFilterInput>;
|
createdAt?: InputMaybe<DateTimeFilterInput>;
|
||||||
documentId: InputMaybe<IdFilterInput>;
|
documentId?: InputMaybe<IdFilterInput>;
|
||||||
email: InputMaybe<StringFilterInput>;
|
email?: InputMaybe<StringFilterInput>;
|
||||||
not: InputMaybe<UsersPermissionsUserFiltersInput>;
|
not?: InputMaybe<UsersPermissionsUserFiltersInput>;
|
||||||
or: InputMaybe<Array<InputMaybe<UsersPermissionsUserFiltersInput>>>;
|
or?: InputMaybe<Array<InputMaybe<UsersPermissionsUserFiltersInput>>>;
|
||||||
provider: InputMaybe<StringFilterInput>;
|
provider?: InputMaybe<StringFilterInput>;
|
||||||
publishedAt: InputMaybe<DateTimeFilterInput>;
|
publishedAt?: InputMaybe<DateTimeFilterInput>;
|
||||||
role: InputMaybe<UsersPermissionsRoleFiltersInput>;
|
role?: InputMaybe<UsersPermissionsRoleFiltersInput>;
|
||||||
updatedAt: InputMaybe<DateTimeFilterInput>;
|
updatedAt?: InputMaybe<DateTimeFilterInput>;
|
||||||
username: InputMaybe<StringFilterInput>;
|
username?: InputMaybe<StringFilterInput>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type UsersPermissionsUserInput = {
|
export type UsersPermissionsUserInput = {
|
||||||
blocked: InputMaybe<Scalars['Boolean']['input']>;
|
blocked?: InputMaybe<Scalars['Boolean']['input']>;
|
||||||
confirmed: InputMaybe<Scalars['Boolean']['input']>;
|
confirmed?: InputMaybe<Scalars['Boolean']['input']>;
|
||||||
email: InputMaybe<Scalars['String']['input']>;
|
email?: InputMaybe<Scalars['String']['input']>;
|
||||||
password: InputMaybe<Scalars['String']['input']>;
|
password?: InputMaybe<Scalars['String']['input']>;
|
||||||
provider: InputMaybe<Scalars['String']['input']>;
|
provider?: InputMaybe<Scalars['String']['input']>;
|
||||||
publishedAt: InputMaybe<Scalars['DateTime']['input']>;
|
publishedAt?: InputMaybe<Scalars['DateTime']['input']>;
|
||||||
role: InputMaybe<Scalars['ID']['input']>;
|
role?: InputMaybe<Scalars['ID']['input']>;
|
||||||
username: InputMaybe<Scalars['String']['input']>;
|
username?: InputMaybe<Scalars['String']['input']>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type RegisterMutationVariables = Exact<{
|
export type RegisterMutationVariables = Exact<{
|
||||||
@ -555,7 +557,7 @@ export type RegisterMutationVariables = Exact<{
|
|||||||
}>;
|
}>;
|
||||||
|
|
||||||
|
|
||||||
export type RegisterMutation = { __typename?: 'Mutation', register: { __typename?: 'UsersPermissionsLoginPayload', jwt: string | null, user: { __typename?: 'UsersPermissionsMe', username: string } } };
|
export type RegisterMutation = { __typename?: 'Mutation', register: { __typename?: 'UsersPermissionsLoginPayload', jwt?: string | null | undefined, user: { __typename?: 'UsersPermissionsMe', username: string } } };
|
||||||
|
|
||||||
export type LoginMutationVariables = Exact<{
|
export type LoginMutationVariables = Exact<{
|
||||||
identifier: Scalars['String']['input'];
|
identifier: Scalars['String']['input'];
|
||||||
@ -563,7 +565,9 @@ export type LoginMutationVariables = Exact<{
|
|||||||
}>;
|
}>;
|
||||||
|
|
||||||
|
|
||||||
export type LoginMutation = { __typename?: 'Mutation', login: { __typename?: 'UsersPermissionsLoginPayload', jwt: string | null } };
|
export type LoginMutation = { __typename?: 'Mutation', login: { __typename?: 'UsersPermissionsLoginPayload', jwt?: string | null | undefined } };
|
||||||
|
|
||||||
|
export type CustomerProfileFragment = { __typename?: 'Customer', active?: boolean | null | undefined, documentId: string, name: string, phone: string, photoUrl?: string | null | undefined, role: Enum_Customer_Role, telegramId?: any | null | undefined };
|
||||||
|
|
||||||
export type CreateCustomerMutationVariables = Exact<{
|
export type CreateCustomerMutationVariables = Exact<{
|
||||||
name: Scalars['String']['input'];
|
name: Scalars['String']['input'];
|
||||||
@ -572,17 +576,26 @@ export type CreateCustomerMutationVariables = Exact<{
|
|||||||
}>;
|
}>;
|
||||||
|
|
||||||
|
|
||||||
export type CreateCustomerMutation = { __typename?: 'Mutation', createCustomer: { __typename?: 'Customer', documentId: string, name: string, telegramId: any | null, phone: string, role: Enum_Customer_Role, active: boolean | null, createdAt: any | null, updatedAt: any | null, publishedAt: any | null } | null };
|
export type CreateCustomerMutation = { __typename?: 'Mutation', createCustomer?: { __typename?: 'Customer', active?: boolean | null | undefined, documentId: string, name: string, phone: string, photoUrl?: string | null | undefined, role: Enum_Customer_Role, telegramId?: any | null | undefined } | null | undefined };
|
||||||
|
|
||||||
export type GetCustomerQueryVariables = Exact<{
|
export type GetCustomerQueryVariables = Exact<{
|
||||||
telegramId: Scalars['Long']['input'];
|
telegramId: Scalars['Long']['input'];
|
||||||
}>;
|
}>;
|
||||||
|
|
||||||
|
|
||||||
export type GetCustomerQuery = { __typename?: 'Query', customers: Array<{ __typename?: 'Customer', name: string } | null> };
|
export type GetCustomerQuery = { __typename?: 'Query', customers: Array<{ __typename?: 'Customer', active?: boolean | null | undefined, documentId: string, name: string, phone: string, photoUrl?: string | null | undefined, role: Enum_Customer_Role, telegramId?: any | null | undefined } | null | undefined> };
|
||||||
|
|
||||||
|
export type UpdateCustomerProfileMutationVariables = Exact<{
|
||||||
|
documentId: Scalars['ID']['input'];
|
||||||
|
data: CustomerInput;
|
||||||
|
}>;
|
||||||
|
|
||||||
|
|
||||||
|
export type UpdateCustomerProfileMutation = { __typename?: 'Mutation', updateCustomer?: { __typename?: 'Customer', active?: boolean | null | undefined, documentId: string, name: string, phone: string, photoUrl?: string | null | undefined, role: Enum_Customer_Role, telegramId?: any | null | undefined } | null | undefined };
|
||||||
|
|
||||||
|
export const CustomerProfileFragmentDoc = {"kind":"Document","definitions":[{"kind":"FragmentDefinition","name":{"kind":"Name","value":"CustomerProfile"},"typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"Customer"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"active"}},{"kind":"Field","name":{"kind":"Name","value":"documentId"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"phone"}},{"kind":"Field","name":{"kind":"Name","value":"photoUrl"}},{"kind":"Field","name":{"kind":"Name","value":"role"}},{"kind":"Field","name":{"kind":"Name","value":"telegramId"}}]}}]} as unknown as DocumentNode<CustomerProfileFragment, unknown>;
|
||||||
export const RegisterDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"Register"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"identifier"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"password"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"email"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"register"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"input"},"value":{"kind":"ObjectValue","fields":[{"kind":"ObjectField","name":{"kind":"Name","value":"username"},"value":{"kind":"Variable","name":{"kind":"Name","value":"identifier"}}},{"kind":"ObjectField","name":{"kind":"Name","value":"password"},"value":{"kind":"Variable","name":{"kind":"Name","value":"password"}}},{"kind":"ObjectField","name":{"kind":"Name","value":"email"},"value":{"kind":"Variable","name":{"kind":"Name","value":"email"}}}]}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"jwt"}},{"kind":"Field","name":{"kind":"Name","value":"user"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"username"}}]}}]}}]}}]} as unknown as DocumentNode<RegisterMutation, RegisterMutationVariables>;
|
export const RegisterDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"Register"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"identifier"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"password"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"email"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"register"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"input"},"value":{"kind":"ObjectValue","fields":[{"kind":"ObjectField","name":{"kind":"Name","value":"username"},"value":{"kind":"Variable","name":{"kind":"Name","value":"identifier"}}},{"kind":"ObjectField","name":{"kind":"Name","value":"password"},"value":{"kind":"Variable","name":{"kind":"Name","value":"password"}}},{"kind":"ObjectField","name":{"kind":"Name","value":"email"},"value":{"kind":"Variable","name":{"kind":"Name","value":"email"}}}]}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"jwt"}},{"kind":"Field","name":{"kind":"Name","value":"user"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"username"}}]}}]}}]}}]} as unknown as DocumentNode<RegisterMutation, RegisterMutationVariables>;
|
||||||
export const LoginDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"Login"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"identifier"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"password"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"login"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"input"},"value":{"kind":"ObjectValue","fields":[{"kind":"ObjectField","name":{"kind":"Name","value":"identifier"},"value":{"kind":"Variable","name":{"kind":"Name","value":"identifier"}}},{"kind":"ObjectField","name":{"kind":"Name","value":"password"},"value":{"kind":"Variable","name":{"kind":"Name","value":"password"}}}]}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"jwt"}}]}}]}}]} as unknown as DocumentNode<LoginMutation, LoginMutationVariables>;
|
export const LoginDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"Login"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"identifier"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"password"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"login"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"input"},"value":{"kind":"ObjectValue","fields":[{"kind":"ObjectField","name":{"kind":"Name","value":"identifier"},"value":{"kind":"Variable","name":{"kind":"Name","value":"identifier"}}},{"kind":"ObjectField","name":{"kind":"Name","value":"password"},"value":{"kind":"Variable","name":{"kind":"Name","value":"password"}}}]}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"jwt"}}]}}]}}]} as unknown as DocumentNode<LoginMutation, LoginMutationVariables>;
|
||||||
export const CreateCustomerDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"CreateCustomer"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"name"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"telegramId"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"Long"}}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"phone"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"createCustomer"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"data"},"value":{"kind":"ObjectValue","fields":[{"kind":"ObjectField","name":{"kind":"Name","value":"name"},"value":{"kind":"Variable","name":{"kind":"Name","value":"name"}}},{"kind":"ObjectField","name":{"kind":"Name","value":"telegramId"},"value":{"kind":"Variable","name":{"kind":"Name","value":"telegramId"}}},{"kind":"ObjectField","name":{"kind":"Name","value":"phone"},"value":{"kind":"Variable","name":{"kind":"Name","value":"phone"}}},{"kind":"ObjectField","name":{"kind":"Name","value":"role"},"value":{"kind":"EnumValue","value":"client"}}]}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"documentId"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"telegramId"}},{"kind":"Field","name":{"kind":"Name","value":"phone"}},{"kind":"Field","name":{"kind":"Name","value":"role"}},{"kind":"Field","name":{"kind":"Name","value":"active"}},{"kind":"Field","name":{"kind":"Name","value":"createdAt"}},{"kind":"Field","name":{"kind":"Name","value":"updatedAt"}},{"kind":"Field","name":{"kind":"Name","value":"publishedAt"}}]}}]}}]} as unknown as DocumentNode<CreateCustomerMutation, CreateCustomerMutationVariables>;
|
export const CreateCustomerDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"CreateCustomer"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"name"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"telegramId"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"Long"}}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"phone"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"createCustomer"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"data"},"value":{"kind":"ObjectValue","fields":[{"kind":"ObjectField","name":{"kind":"Name","value":"name"},"value":{"kind":"Variable","name":{"kind":"Name","value":"name"}}},{"kind":"ObjectField","name":{"kind":"Name","value":"telegramId"},"value":{"kind":"Variable","name":{"kind":"Name","value":"telegramId"}}},{"kind":"ObjectField","name":{"kind":"Name","value":"phone"},"value":{"kind":"Variable","name":{"kind":"Name","value":"phone"}}},{"kind":"ObjectField","name":{"kind":"Name","value":"role"},"value":{"kind":"EnumValue","value":"client"}}]}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"FragmentSpread","name":{"kind":"Name","value":"CustomerProfile"}}]}}]}},{"kind":"FragmentDefinition","name":{"kind":"Name","value":"CustomerProfile"},"typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"Customer"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"active"}},{"kind":"Field","name":{"kind":"Name","value":"documentId"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"phone"}},{"kind":"Field","name":{"kind":"Name","value":"photoUrl"}},{"kind":"Field","name":{"kind":"Name","value":"role"}},{"kind":"Field","name":{"kind":"Name","value":"telegramId"}}]}}]} as unknown as DocumentNode<CreateCustomerMutation, CreateCustomerMutationVariables>;
|
||||||
export const GetCustomerDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"GetCustomer"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"telegramId"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"Long"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"customers"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"filters"},"value":{"kind":"ObjectValue","fields":[{"kind":"ObjectField","name":{"kind":"Name","value":"telegramId"},"value":{"kind":"ObjectValue","fields":[{"kind":"ObjectField","name":{"kind":"Name","value":"eq"},"value":{"kind":"Variable","name":{"kind":"Name","value":"telegramId"}}}]}}]}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"name"}}]}}]}}]} as unknown as DocumentNode<GetCustomerQuery, GetCustomerQueryVariables>;
|
export const GetCustomerDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"GetCustomer"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"telegramId"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"Long"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"customers"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"filters"},"value":{"kind":"ObjectValue","fields":[{"kind":"ObjectField","name":{"kind":"Name","value":"telegramId"},"value":{"kind":"ObjectValue","fields":[{"kind":"ObjectField","name":{"kind":"Name","value":"eq"},"value":{"kind":"Variable","name":{"kind":"Name","value":"telegramId"}}}]}}]}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"FragmentSpread","name":{"kind":"Name","value":"CustomerProfile"}}]}}]}},{"kind":"FragmentDefinition","name":{"kind":"Name","value":"CustomerProfile"},"typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"Customer"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"active"}},{"kind":"Field","name":{"kind":"Name","value":"documentId"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"phone"}},{"kind":"Field","name":{"kind":"Name","value":"photoUrl"}},{"kind":"Field","name":{"kind":"Name","value":"role"}},{"kind":"Field","name":{"kind":"Name","value":"telegramId"}}]}}]} as unknown as DocumentNode<GetCustomerQuery, GetCustomerQueryVariables>;
|
||||||
|
export const UpdateCustomerProfileDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"UpdateCustomerProfile"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"documentId"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"ID"}}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"data"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"CustomerInput"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"updateCustomer"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"documentId"},"value":{"kind":"Variable","name":{"kind":"Name","value":"documentId"}}},{"kind":"Argument","name":{"kind":"Name","value":"data"},"value":{"kind":"Variable","name":{"kind":"Name","value":"data"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"FragmentSpread","name":{"kind":"Name","value":"CustomerProfile"}}]}}]}},{"kind":"FragmentDefinition","name":{"kind":"Name","value":"CustomerProfile"},"typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"Customer"}},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"active"}},{"kind":"Field","name":{"kind":"Name","value":"documentId"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"phone"}},{"kind":"Field","name":{"kind":"Name","value":"photoUrl"}},{"kind":"Field","name":{"kind":"Name","value":"role"}},{"kind":"Field","name":{"kind":"Name","value":"telegramId"}}]}}]} as unknown as DocumentNode<UpdateCustomerProfileMutation, UpdateCustomerProfileMutationVariables>;
|
||||||
@ -45,6 +45,8 @@
|
|||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@radix-ui/react-avatar": "catalog:",
|
"@radix-ui/react-avatar": "catalog:",
|
||||||
|
"@radix-ui/react-checkbox": "^1.1.3",
|
||||||
|
"@radix-ui/react-label": "^2.1.1",
|
||||||
"react": "catalog:",
|
"react": "catalog:",
|
||||||
"react-dom": "catalog:"
|
"react-dom": "catalog:"
|
||||||
}
|
}
|
||||||
|
|||||||
54
packages/ui/src/components/ui/card.tsx
Normal file
54
packages/ui/src/components/ui/card.tsx
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
import { cn } from '@repo/ui/lib/utils';
|
||||||
|
import * as React from 'react';
|
||||||
|
|
||||||
|
const Card = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(
|
||||||
|
({ className, ...props }, ref) => (
|
||||||
|
<div
|
||||||
|
className={cn('rounded-lg border bg-card text-card-foreground shadow-sm', className)}
|
||||||
|
ref={ref}
|
||||||
|
{...props}
|
||||||
|
/>
|
||||||
|
),
|
||||||
|
);
|
||||||
|
Card.displayName = 'Card';
|
||||||
|
|
||||||
|
const CardHeader = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(
|
||||||
|
({ className, ...props }, ref) => (
|
||||||
|
<div className={cn('flex flex-col space-y-1.5 p-6', className)} ref={ref} {...props} />
|
||||||
|
),
|
||||||
|
);
|
||||||
|
CardHeader.displayName = 'CardHeader';
|
||||||
|
|
||||||
|
const CardTitle = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(
|
||||||
|
({ className, ...props }, ref) => (
|
||||||
|
<div
|
||||||
|
className={cn('text-2xl font-semibold leading-none tracking-tight', className)}
|
||||||
|
ref={ref}
|
||||||
|
{...props}
|
||||||
|
/>
|
||||||
|
),
|
||||||
|
);
|
||||||
|
CardTitle.displayName = 'CardTitle';
|
||||||
|
|
||||||
|
const CardDescription = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(
|
||||||
|
({ className, ...props }, ref) => (
|
||||||
|
<div className={cn('text-sm text-muted-foreground', className)} ref={ref} {...props} />
|
||||||
|
),
|
||||||
|
);
|
||||||
|
CardDescription.displayName = 'CardDescription';
|
||||||
|
|
||||||
|
const CardContent = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(
|
||||||
|
({ className, ...props }, ref) => (
|
||||||
|
<div className={cn('p-6 pt-0', className)} ref={ref} {...props} />
|
||||||
|
),
|
||||||
|
);
|
||||||
|
CardContent.displayName = 'CardContent';
|
||||||
|
|
||||||
|
const CardFooter = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(
|
||||||
|
({ className, ...props }, ref) => (
|
||||||
|
<div className={cn('flex items-center p-6 pt-0', className)} ref={ref} {...props} />
|
||||||
|
),
|
||||||
|
);
|
||||||
|
CardFooter.displayName = 'CardFooter';
|
||||||
|
|
||||||
|
export { Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle };
|
||||||
29
packages/ui/src/components/ui/checkbox.tsx
Normal file
29
packages/ui/src/components/ui/checkbox.tsx
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
'use client';
|
||||||
|
|
||||||
|
import * as CheckboxPrimitive from '@radix-ui/react-checkbox';
|
||||||
|
import { cn } from '@repo/ui/lib/utils';
|
||||||
|
import { Check } from 'lucide-react';
|
||||||
|
import * as React from 'react';
|
||||||
|
|
||||||
|
const Checkbox = React.forwardRef<
|
||||||
|
React.ElementRef<typeof CheckboxPrimitive.Root>,
|
||||||
|
React.ComponentPropsWithoutRef<typeof CheckboxPrimitive.Root>
|
||||||
|
>(({ className, ...props }, ref) => (
|
||||||
|
<CheckboxPrimitive.Root
|
||||||
|
className={cn(
|
||||||
|
'peer h-4 w-4 shrink-0 rounded-sm border border-primary ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground',
|
||||||
|
className,
|
||||||
|
)}
|
||||||
|
ref={ref}
|
||||||
|
{...props}
|
||||||
|
>
|
||||||
|
<CheckboxPrimitive.Indicator className={cn('flex items-center justify-center text-current')}>
|
||||||
|
<Check className="size-4" />
|
||||||
|
</CheckboxPrimitive.Indicator>
|
||||||
|
</CheckboxPrimitive.Root>
|
||||||
|
));
|
||||||
|
Checkbox.displayName = CheckboxPrimitive.Root.displayName;
|
||||||
|
|
||||||
|
export { Checkbox };
|
||||||
|
|
||||||
|
export { type CheckboxProps } from '@radix-ui/react-checkbox';
|
||||||
21
packages/ui/src/components/ui/input.tsx
Normal file
21
packages/ui/src/components/ui/input.tsx
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
import { cn } from '@repo/ui/lib/utils';
|
||||||
|
import * as React from 'react';
|
||||||
|
|
||||||
|
const Input = React.forwardRef<HTMLInputElement, React.ComponentProps<'input'>>(
|
||||||
|
({ className, type, ...props }, ref) => {
|
||||||
|
return (
|
||||||
|
<input
|
||||||
|
className={cn(
|
||||||
|
'flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 text-base ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 md:text-sm',
|
||||||
|
className,
|
||||||
|
)}
|
||||||
|
ref={ref}
|
||||||
|
type={type}
|
||||||
|
{...props}
|
||||||
|
/>
|
||||||
|
);
|
||||||
|
},
|
||||||
|
);
|
||||||
|
Input.displayName = 'Input';
|
||||||
|
|
||||||
|
export { Input };
|
||||||
20
packages/ui/src/components/ui/label.tsx
Normal file
20
packages/ui/src/components/ui/label.tsx
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
'use client';
|
||||||
|
|
||||||
|
import * as LabelPrimitive from '@radix-ui/react-label';
|
||||||
|
import { cn } from '@repo/ui/lib/utils';
|
||||||
|
import { cva, type VariantProps } from 'class-variance-authority';
|
||||||
|
import * as React from 'react';
|
||||||
|
|
||||||
|
const labelVariants = cva(
|
||||||
|
'text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70',
|
||||||
|
);
|
||||||
|
|
||||||
|
const Label = React.forwardRef<
|
||||||
|
React.ElementRef<typeof LabelPrimitive.Root>,
|
||||||
|
React.ComponentPropsWithoutRef<typeof LabelPrimitive.Root> & VariantProps<typeof labelVariants>
|
||||||
|
>(({ className, ...props }, ref) => (
|
||||||
|
<LabelPrimitive.Root className={cn(labelVariants(), className)} ref={ref} {...props} />
|
||||||
|
));
|
||||||
|
Label.displayName = LabelPrimitive.Root.displayName;
|
||||||
|
|
||||||
|
export { Label };
|
||||||
21
packages/ui/src/components/ui/spinner.tsx
Normal file
21
packages/ui/src/components/ui/spinner.tsx
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
import { cn } from '@repo/ui/lib/utils';
|
||||||
|
import { Loader2 } from 'lucide-react';
|
||||||
|
|
||||||
|
type LoadingSpinnerProps = React.HTMLAttributes<HTMLDivElement> & {
|
||||||
|
readonly size?: 'lg' | 'md' | 'sm';
|
||||||
|
};
|
||||||
|
|
||||||
|
export function LoadingSpinner({ className, size = 'md', ...props }: LoadingSpinnerProps) {
|
||||||
|
return (
|
||||||
|
<div className={cn('flex items-center justify-center', className)} role="status" {...props}>
|
||||||
|
<Loader2
|
||||||
|
className={cn('animate-spin text-muted-foreground', {
|
||||||
|
'h-4 w-4': size === 'sm',
|
||||||
|
'h-8 w-8': size === 'md',
|
||||||
|
'h-12 w-12': size === 'lg',
|
||||||
|
})}
|
||||||
|
/>
|
||||||
|
<span className="sr-only">Loading...</span>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
}
|
||||||
461
pnpm-lock.yaml
generated
461
pnpm-lock.yaml
generated
@ -234,12 +234,18 @@ importers:
|
|||||||
next-intl:
|
next-intl:
|
||||||
specifier: 'catalog:'
|
specifier: 'catalog:'
|
||||||
version: 3.26.0(next@15.1.0(@babel/core@7.26.0)(@playwright/test@1.49.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react@19.0.0)
|
version: 3.26.0(next@15.1.0(@babel/core@7.26.0)(@playwright/test@1.49.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react@19.0.0)
|
||||||
|
next-themes:
|
||||||
|
specifier: ^0.4.4
|
||||||
|
version: 0.4.4(react-dom@19.0.0(react@19.0.0))(react@19.0.0)
|
||||||
react:
|
react:
|
||||||
specifier: 'catalog:'
|
specifier: 'catalog:'
|
||||||
version: 19.0.0
|
version: 19.0.0
|
||||||
react-dom:
|
react-dom:
|
||||||
specifier: 'catalog:'
|
specifier: 'catalog:'
|
||||||
version: 19.0.0(react@19.0.0)
|
version: 19.0.0(react@19.0.0)
|
||||||
|
use-debounce:
|
||||||
|
specifier: ^10.0.4
|
||||||
|
version: 10.0.4(react@19.0.0)
|
||||||
zod:
|
zod:
|
||||||
specifier: 'catalog:'
|
specifier: 'catalog:'
|
||||||
version: 3.24.1
|
version: 3.24.1
|
||||||
@ -303,13 +309,13 @@ importers:
|
|||||||
version: 5.1.4(typescript@5.7.2)(vite@5.4.11(@types/node@20.17.8))
|
version: 5.1.4(typescript@5.7.2)(vite@5.4.11(@types/node@20.17.8))
|
||||||
vitest:
|
vitest:
|
||||||
specifier: 'catalog:'
|
specifier: 'catalog:'
|
||||||
version: 2.1.8(@types/node@20.17.8)(jsdom@25.0.1)
|
version: 2.1.8(@types/node@20.17.8)(jsdom@25.0.1)(msw@2.7.0(@types/node@20.17.8)(typescript@5.7.2))
|
||||||
|
|
||||||
packages/eslint-config:
|
packages/eslint-config:
|
||||||
devDependencies:
|
devDependencies:
|
||||||
'@vchikalkin/eslint-config-awesome':
|
'@vchikalkin/eslint-config-awesome':
|
||||||
specifier: 'catalog:'
|
specifier: 'catalog:'
|
||||||
version: 2.0.6(@babel/core@7.26.0)(@next/eslint-plugin-next@15.0.3)(@types/node@20.17.8)(eslint-plugin-canonical@5.0.0(@typescript-eslint/parser@8.16.0(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2))(eslint-plugin-import-x@4.5.0(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2))(eslint-plugin-import-x@4.5.0(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2))(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2))(eslint-plugin-import-x@4.5.0(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2))(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2)(vitest@2.1.8(@types/node@20.17.8)(jsdom@25.0.1))
|
version: 2.0.6(@babel/core@7.26.0)(@next/eslint-plugin-next@15.0.3)(@types/node@20.17.8)(eslint-plugin-canonical@5.0.0(@typescript-eslint/parser@8.16.0(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2))(eslint-plugin-import-x@4.5.0(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2))(eslint-plugin-import-x@4.5.0(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2))(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2))(eslint-plugin-import-x@4.5.0(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2))(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2)(vitest@2.1.8(@types/node@20.17.8)(jsdom@25.0.1)(msw@2.7.0(@types/node@20.17.8)(typescript@5.7.2)))
|
||||||
eslint:
|
eslint:
|
||||||
specifier: 'catalog:'
|
specifier: 'catalog:'
|
||||||
version: 9.15.0(jiti@2.4.1)
|
version: 9.15.0(jiti@2.4.1)
|
||||||
@ -361,7 +367,7 @@ importers:
|
|||||||
version: 5.1.4(typescript@5.7.2)(vite@5.4.11(@types/node@20.17.8))
|
version: 5.1.4(typescript@5.7.2)(vite@5.4.11(@types/node@20.17.8))
|
||||||
vitest:
|
vitest:
|
||||||
specifier: 'catalog:'
|
specifier: 'catalog:'
|
||||||
version: 2.1.8(@types/node@20.17.8)(jsdom@25.0.1)
|
version: 2.1.8(@types/node@20.17.8)(jsdom@25.0.1)(msw@2.7.0(@types/node@20.17.8)(typescript@5.7.2))
|
||||||
|
|
||||||
packages/lint-staged-config: {}
|
packages/lint-staged-config: {}
|
||||||
|
|
||||||
@ -372,6 +378,12 @@ importers:
|
|||||||
'@radix-ui/react-avatar':
|
'@radix-ui/react-avatar':
|
||||||
specifier: 'catalog:'
|
specifier: 'catalog:'
|
||||||
version: 1.1.2(@types/react-dom@19.0.1)(@types/react@19.0.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)
|
version: 1.1.2(@types/react-dom@19.0.1)(@types/react@19.0.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)
|
||||||
|
'@radix-ui/react-checkbox':
|
||||||
|
specifier: ^1.1.3
|
||||||
|
version: 1.1.3(@types/react-dom@19.0.1)(@types/react@19.0.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)
|
||||||
|
'@radix-ui/react-label':
|
||||||
|
specifier: ^2.1.1
|
||||||
|
version: 2.1.1(@types/react-dom@19.0.1)(@types/react@19.0.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)
|
||||||
react:
|
react:
|
||||||
specifier: 'catalog:'
|
specifier: 'catalog:'
|
||||||
version: 19.0.0
|
version: 19.0.0
|
||||||
@ -1072,6 +1084,15 @@ packages:
|
|||||||
resolution: {integrity: sha512-Z/yiTPj+lDVnF7lWeKCIJzaIkI0vYO87dMpZ4bg4TDrFe4XXLFWL1TbXU27gBP3QccxV9mZICCrnjnYlJjXHOA==}
|
resolution: {integrity: sha512-Z/yiTPj+lDVnF7lWeKCIJzaIkI0vYO87dMpZ4bg4TDrFe4XXLFWL1TbXU27gBP3QccxV9mZICCrnjnYlJjXHOA==}
|
||||||
engines: {node: '>=6.9.0'}
|
engines: {node: '>=6.9.0'}
|
||||||
|
|
||||||
|
'@bundled-es-modules/cookie@2.0.1':
|
||||||
|
resolution: {integrity: sha512-8o+5fRPLNbjbdGRRmJj3h6Hh1AQJf2dk3qQ/5ZFb+PXkRNiSoMGGUKlsgLfrxneb72axVJyIYji64E2+nNfYyw==}
|
||||||
|
|
||||||
|
'@bundled-es-modules/statuses@1.0.1':
|
||||||
|
resolution: {integrity: sha512-yn7BklA5acgcBr+7w064fGV+SGIFySjCKpqjcWgBAIfrAkY+4GQTJJHQMeT3V/sgz23VTEVV8TtOmkvJAhFVfg==}
|
||||||
|
|
||||||
|
'@bundled-es-modules/tough-cookie@0.1.6':
|
||||||
|
resolution: {integrity: sha512-dvMHbL464C0zI+Yqxbz6kZ5TOEp7GLW+pry/RWndAR8MJQAXZ2rPmIs8tziTZjeIyhSNZgZbCePtfSbdWqStJw==}
|
||||||
|
|
||||||
'@emnapi/runtime@1.3.1':
|
'@emnapi/runtime@1.3.1':
|
||||||
resolution: {integrity: sha512-kEBmG8KyqtxJZv+ygbEim+KCGtIq1fC22Ms3S4ziXmYKm8uyoLX0MHONVKwp+9opg390VaKRNt4a7A9NwmpNhw==}
|
resolution: {integrity: sha512-kEBmG8KyqtxJZv+ygbEim+KCGtIq1fC22Ms3S4ziXmYKm8uyoLX0MHONVKwp+9opg390VaKRNt4a7A9NwmpNhw==}
|
||||||
|
|
||||||
@ -1843,6 +1864,26 @@ packages:
|
|||||||
cpu: [x64]
|
cpu: [x64]
|
||||||
os: [win32]
|
os: [win32]
|
||||||
|
|
||||||
|
'@inquirer/confirm@5.1.1':
|
||||||
|
resolution: {integrity: sha512-vVLSbGci+IKQvDOtzpPTCOiEJCNidHcAq9JYVoWTW0svb5FiwSLotkM+JXNXejfjnzVYV9n0DTBythl9+XgTxg==}
|
||||||
|
engines: {node: '>=18'}
|
||||||
|
peerDependencies:
|
||||||
|
'@types/node': '>=18'
|
||||||
|
|
||||||
|
'@inquirer/core@10.1.2':
|
||||||
|
resolution: {integrity: sha512-bHd96F3ezHg1mf/J0Rb4CV8ndCN0v28kUlrHqP7+ECm1C/A+paB7Xh2lbMk6x+kweQC+rZOxM/YeKikzxco8bQ==}
|
||||||
|
engines: {node: '>=18'}
|
||||||
|
|
||||||
|
'@inquirer/figures@1.0.9':
|
||||||
|
resolution: {integrity: sha512-BXvGj0ehzrngHTPTDqUoDT3NXL8U0RxUk2zJm2A66RhCEIWdtU1v6GuUqNAgArW4PQ9CinqIWyHdQgdwOj06zQ==}
|
||||||
|
engines: {node: '>=18'}
|
||||||
|
|
||||||
|
'@inquirer/type@3.0.2':
|
||||||
|
resolution: {integrity: sha512-ZhQ4TvhwHZF+lGhQ2O/rsjo80XoZR5/5qhOY3t6FJuX5XBg5Be8YzYTvaUGJnc12AUGI2nr4QSUE4PhKSigx7g==}
|
||||||
|
engines: {node: '>=18'}
|
||||||
|
peerDependencies:
|
||||||
|
'@types/node': '>=18'
|
||||||
|
|
||||||
'@isaacs/cliui@8.0.2':
|
'@isaacs/cliui@8.0.2':
|
||||||
resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==}
|
resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==}
|
||||||
engines: {node: '>=12'}
|
engines: {node: '>=12'}
|
||||||
@ -1868,6 +1909,10 @@ packages:
|
|||||||
'@kamilkisiela/fast-url-parser@1.1.4':
|
'@kamilkisiela/fast-url-parser@1.1.4':
|
||||||
resolution: {integrity: sha512-gbkePEBupNydxCelHCESvFSFM8XPh1Zs/OAVRW/rKpEqPAl5PbOM90Si8mv9bvnR53uPD2s/FiRxdvSejpRJew==}
|
resolution: {integrity: sha512-gbkePEBupNydxCelHCESvFSFM8XPh1Zs/OAVRW/rKpEqPAl5PbOM90Si8mv9bvnR53uPD2s/FiRxdvSejpRJew==}
|
||||||
|
|
||||||
|
'@mswjs/interceptors@0.37.3':
|
||||||
|
resolution: {integrity: sha512-USvgCL/uOGFtVa6SVyRrC8kIAedzRohxIXN5LISlg5C5vLZCn7dgMFVSNhSF9cuBEFrm/O2spDWEZeMnw4ZXYg==}
|
||||||
|
engines: {node: '>=18'}
|
||||||
|
|
||||||
'@next/env@15.1.0':
|
'@next/env@15.1.0':
|
||||||
resolution: {integrity: sha512-UcCO481cROsqJuszPPXJnb7GGuLq617ve4xuAyyNG4VSSocJNtMU5Fsx+Lp6mlN8c7W58aZLc5y6D/2xNmaK+w==}
|
resolution: {integrity: sha512-UcCO481cROsqJuszPPXJnb7GGuLq617ve4xuAyyNG4VSSocJNtMU5Fsx+Lp6mlN8c7W58aZLc5y6D/2xNmaK+w==}
|
||||||
|
|
||||||
@ -1944,6 +1989,15 @@ packages:
|
|||||||
resolution: {integrity: sha512-nn5ozdjYQpUCZlWGuxcJY/KpxkWQs4DcbMCmKojjyrYDEAGy4Ce19NN4v5MduafTwJlbKc99UA8YhSVqq9yPZA==}
|
resolution: {integrity: sha512-nn5ozdjYQpUCZlWGuxcJY/KpxkWQs4DcbMCmKojjyrYDEAGy4Ce19NN4v5MduafTwJlbKc99UA8YhSVqq9yPZA==}
|
||||||
engines: {node: '>=12.4.0'}
|
engines: {node: '>=12.4.0'}
|
||||||
|
|
||||||
|
'@open-draft/deferred-promise@2.2.0':
|
||||||
|
resolution: {integrity: sha512-CecwLWx3rhxVQF6V4bAgPS5t+So2sTbPgAzafKkVizyi7tlwpcFpdFqq+wqF2OwNBmqFuu6tOyouTuxgpMfzmA==}
|
||||||
|
|
||||||
|
'@open-draft/logger@0.3.0':
|
||||||
|
resolution: {integrity: sha512-X2g45fzhxH238HKO4xbSr7+wBS8Fvw6ixhTDuvLd5mqh6bJJCFAPwU9mPDxbcrRtfxv4u5IHCEH77BmxvXmmxQ==}
|
||||||
|
|
||||||
|
'@open-draft/until@2.1.0':
|
||||||
|
resolution: {integrity: sha512-U69T3ItWHvLwGg5eJ0n3I62nWuE6ilHlmz7zM0npLBRvPRd7e6NYmg54vvRtP5mZG7kZqZCFVdsTWo7BPtBujg==}
|
||||||
|
|
||||||
'@panva/hkdf@1.2.1':
|
'@panva/hkdf@1.2.1':
|
||||||
resolution: {integrity: sha512-6oclG6Y3PiDFcoyk8srjLfVKyMfVCKJ27JwNPViuXziFpmdz+MZnZN/aKY0JGXgYuO/VghU0jcOAZgWXZ1Dmrw==}
|
resolution: {integrity: sha512-6oclG6Y3PiDFcoyk8srjLfVKyMfVCKJ27JwNPViuXziFpmdz+MZnZN/aKY0JGXgYuO/VghU0jcOAZgWXZ1Dmrw==}
|
||||||
|
|
||||||
@ -1971,6 +2025,9 @@ packages:
|
|||||||
engines: {node: '>=18'}
|
engines: {node: '>=18'}
|
||||||
hasBin: true
|
hasBin: true
|
||||||
|
|
||||||
|
'@radix-ui/primitive@1.1.1':
|
||||||
|
resolution: {integrity: sha512-SJ31y+Q/zAyShtXJc8x83i9TYdbAfHZ++tUZnvjJJqFjzsdUnKsxPL6IEtBlxKkU7yzer//GQtZSV4GbldL3YA==}
|
||||||
|
|
||||||
'@radix-ui/react-avatar@1.1.2':
|
'@radix-ui/react-avatar@1.1.2':
|
||||||
resolution: {integrity: sha512-GaC7bXQZ5VgZvVvsJ5mu/AEbjYLnhhkoidOboC50Z6FFlLA03wG2ianUoH+zgDQ31/9gCF59bE4+2bBgTyMiig==}
|
resolution: {integrity: sha512-GaC7bXQZ5VgZvVvsJ5mu/AEbjYLnhhkoidOboC50Z6FFlLA03wG2ianUoH+zgDQ31/9gCF59bE4+2bBgTyMiig==}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
@ -1984,6 +2041,19 @@ packages:
|
|||||||
'@types/react-dom':
|
'@types/react-dom':
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
|
'@radix-ui/react-checkbox@1.1.3':
|
||||||
|
resolution: {integrity: sha512-HD7/ocp8f1B3e6OHygH0n7ZKjONkhciy1Nh0yuBgObqThc3oyx+vuMfFHKAknXRHHWVE9XvXStxJFyjUmB8PIw==}
|
||||||
|
peerDependencies:
|
||||||
|
'@types/react': '*'
|
||||||
|
'@types/react-dom': '*'
|
||||||
|
react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
|
||||||
|
react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
|
||||||
|
peerDependenciesMeta:
|
||||||
|
'@types/react':
|
||||||
|
optional: true
|
||||||
|
'@types/react-dom':
|
||||||
|
optional: true
|
||||||
|
|
||||||
'@radix-ui/react-compose-refs@1.1.1':
|
'@radix-ui/react-compose-refs@1.1.1':
|
||||||
resolution: {integrity: sha512-Y9VzoRDSJtgFMUCoiZBDVo084VQ5hfpXxVE+NgkdNsjiDBByiImMZKKhxMwCbdHvhlENG6a833CbFkOQvTricw==}
|
resolution: {integrity: sha512-Y9VzoRDSJtgFMUCoiZBDVo084VQ5hfpXxVE+NgkdNsjiDBByiImMZKKhxMwCbdHvhlENG6a833CbFkOQvTricw==}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
@ -2002,6 +2072,32 @@ packages:
|
|||||||
'@types/react':
|
'@types/react':
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
|
'@radix-ui/react-label@2.1.1':
|
||||||
|
resolution: {integrity: sha512-UUw5E4e/2+4kFMH7+YxORXGWggtY6sM8WIwh5RZchhLuUg2H1hc98Py+pr8HMz6rdaYrK2t296ZEjYLOCO5uUw==}
|
||||||
|
peerDependencies:
|
||||||
|
'@types/react': '*'
|
||||||
|
'@types/react-dom': '*'
|
||||||
|
react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
|
||||||
|
react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
|
||||||
|
peerDependenciesMeta:
|
||||||
|
'@types/react':
|
||||||
|
optional: true
|
||||||
|
'@types/react-dom':
|
||||||
|
optional: true
|
||||||
|
|
||||||
|
'@radix-ui/react-presence@1.1.2':
|
||||||
|
resolution: {integrity: sha512-18TFr80t5EVgL9x1SwF/YGtfG+l0BS0PRAlCWBDoBEiDQjeKgnNZRVJp/oVBl24sr3Gbfwc/Qpj4OcWTQMsAEg==}
|
||||||
|
peerDependencies:
|
||||||
|
'@types/react': '*'
|
||||||
|
'@types/react-dom': '*'
|
||||||
|
react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
|
||||||
|
react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
|
||||||
|
peerDependenciesMeta:
|
||||||
|
'@types/react':
|
||||||
|
optional: true
|
||||||
|
'@types/react-dom':
|
||||||
|
optional: true
|
||||||
|
|
||||||
'@radix-ui/react-primitive@2.0.1':
|
'@radix-ui/react-primitive@2.0.1':
|
||||||
resolution: {integrity: sha512-sHCWTtxwNn3L3fH8qAfnF3WbUZycW93SM1j3NFDzXBiz8D6F5UTTy8G1+WFEaiCdvCVRJWj6N2R4Xq6HdiHmDg==}
|
resolution: {integrity: sha512-sHCWTtxwNn3L3fH8qAfnF3WbUZycW93SM1j3NFDzXBiz8D6F5UTTy8G1+WFEaiCdvCVRJWj6N2R4Xq6HdiHmDg==}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
@ -2033,6 +2129,15 @@ packages:
|
|||||||
'@types/react':
|
'@types/react':
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
|
'@radix-ui/react-use-controllable-state@1.1.0':
|
||||||
|
resolution: {integrity: sha512-MtfMVJiSr2NjzS0Aa90NPTnvTSg6C/JLCV7ma0W6+OMV78vd8OyRpID+Ng9LxzsPbLeuBnWBA1Nq30AtBIDChw==}
|
||||||
|
peerDependencies:
|
||||||
|
'@types/react': '*'
|
||||||
|
react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
|
||||||
|
peerDependenciesMeta:
|
||||||
|
'@types/react':
|
||||||
|
optional: true
|
||||||
|
|
||||||
'@radix-ui/react-use-layout-effect@1.1.0':
|
'@radix-ui/react-use-layout-effect@1.1.0':
|
||||||
resolution: {integrity: sha512-+FPE0rOdziWSrH9athwI1R0HDVbWlEhd+FR+aSDk4uWGmSJ9Z54sdZVDQPZAinJhJXwfT+qnj969mCsT2gfm5w==}
|
resolution: {integrity: sha512-+FPE0rOdziWSrH9athwI1R0HDVbWlEhd+FR+aSDk4uWGmSJ9Z54sdZVDQPZAinJhJXwfT+qnj969mCsT2gfm5w==}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
@ -2042,6 +2147,24 @@ packages:
|
|||||||
'@types/react':
|
'@types/react':
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
|
'@radix-ui/react-use-previous@1.1.0':
|
||||||
|
resolution: {integrity: sha512-Z/e78qg2YFnnXcW88A4JmTtm4ADckLno6F7OXotmkQfeuCVaKuYzqAATPhVzl3delXE7CxIV8shofPn3jPc5Og==}
|
||||||
|
peerDependencies:
|
||||||
|
'@types/react': '*'
|
||||||
|
react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
|
||||||
|
peerDependenciesMeta:
|
||||||
|
'@types/react':
|
||||||
|
optional: true
|
||||||
|
|
||||||
|
'@radix-ui/react-use-size@1.1.0':
|
||||||
|
resolution: {integrity: sha512-XW3/vWuIXHa+2Uwcc2ABSfcCledmXhhQPlGbfcRXbiUQI5Icjcg19BGCZVKKInYbvUCut/ufbbLLPFC5cbb1hw==}
|
||||||
|
peerDependencies:
|
||||||
|
'@types/react': '*'
|
||||||
|
react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
|
||||||
|
peerDependenciesMeta:
|
||||||
|
'@types/react':
|
||||||
|
optional: true
|
||||||
|
|
||||||
'@repeaterjs/repeater@3.0.4':
|
'@repeaterjs/repeater@3.0.4':
|
||||||
resolution: {integrity: sha512-AW8PKd6iX3vAZ0vA43nOUOnbq/X5ihgU+mSXXqunMkeQADGiqw/PY0JNeYtD5sr0PAy51YPgAPbDoeapv9r8WA==}
|
resolution: {integrity: sha512-AW8PKd6iX3vAZ0vA43nOUOnbq/X5ihgU+mSXXqunMkeQADGiqw/PY0JNeYtD5sr0PAy51YPgAPbDoeapv9r8WA==}
|
||||||
|
|
||||||
@ -2222,6 +2345,9 @@ packages:
|
|||||||
'@types/babel__traverse@7.20.6':
|
'@types/babel__traverse@7.20.6':
|
||||||
resolution: {integrity: sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg==}
|
resolution: {integrity: sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg==}
|
||||||
|
|
||||||
|
'@types/cookie@0.6.0':
|
||||||
|
resolution: {integrity: sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA==}
|
||||||
|
|
||||||
'@types/estree@1.0.6':
|
'@types/estree@1.0.6':
|
||||||
resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==}
|
resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==}
|
||||||
|
|
||||||
@ -2249,6 +2375,12 @@ packages:
|
|||||||
'@types/react@19.0.1':
|
'@types/react@19.0.1':
|
||||||
resolution: {integrity: sha512-YW6614BDhqbpR5KtUYzTA+zlA7nayzJRA9ljz9CQoxthR0sDisYZLuvSMsil36t4EH/uAt8T52Xb4sVw17G+SQ==}
|
resolution: {integrity: sha512-YW6614BDhqbpR5KtUYzTA+zlA7nayzJRA9ljz9CQoxthR0sDisYZLuvSMsil36t4EH/uAt8T52Xb4sVw17G+SQ==}
|
||||||
|
|
||||||
|
'@types/statuses@2.0.5':
|
||||||
|
resolution: {integrity: sha512-jmIUGWrAiwu3dZpxntxieC+1n/5c3mjrImkmOSQ2NC5uP6cYO4aAZDdSmRcI5C1oiTmqlZGHC+/NmJrKogbP5A==}
|
||||||
|
|
||||||
|
'@types/tough-cookie@4.0.5':
|
||||||
|
resolution: {integrity: sha512-/Ad8+nIOV7Rl++6f1BdKxFSMgmoqEoYbHRpPcx3JEfv8VRsQe9Z4mCXeJBzxs7mbHY/XOZZuXlRNfhpVPbs6ZA==}
|
||||||
|
|
||||||
'@types/ws@8.5.13':
|
'@types/ws@8.5.13':
|
||||||
resolution: {integrity: sha512-osM/gWBTPKgHV8XkTunnegTRIsvF6owmf5w+JtAfOw472dptdm0dlGv4xCt6GwQRcC2XVOvvRE/0bAoQcL2QkA==}
|
resolution: {integrity: sha512-osM/gWBTPKgHV8XkTunnegTRIsvF6owmf5w+JtAfOw472dptdm0dlGv4xCt6GwQRcC2XVOvvRE/0bAoQcL2QkA==}
|
||||||
|
|
||||||
@ -2804,6 +2936,10 @@ packages:
|
|||||||
resolution: {integrity: sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==}
|
resolution: {integrity: sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==}
|
||||||
engines: {node: '>= 10'}
|
engines: {node: '>= 10'}
|
||||||
|
|
||||||
|
cli-width@4.1.0:
|
||||||
|
resolution: {integrity: sha512-ouuZd4/dm2Sw5Gmqy6bGyNNNe1qt9RpmxveLSO7KcgsTnU7RXfsw+/bukWGo1abgBiMAic068rclZsO4IWmmxQ==}
|
||||||
|
engines: {node: '>= 12'}
|
||||||
|
|
||||||
client-only@0.0.1:
|
client-only@0.0.1:
|
||||||
resolution: {integrity: sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==}
|
resolution: {integrity: sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==}
|
||||||
|
|
||||||
@ -3794,6 +3930,9 @@ packages:
|
|||||||
header-case@2.0.4:
|
header-case@2.0.4:
|
||||||
resolution: {integrity: sha512-H/vuk5TEEVZwrR0lp2zed9OCo1uAILMlx0JEMgC26rzyJJ3N1v6XkwHHXJQdR2doSjcGPM6OKPYoJgf0plJ11Q==}
|
resolution: {integrity: sha512-H/vuk5TEEVZwrR0lp2zed9OCo1uAILMlx0JEMgC26rzyJJ3N1v6XkwHHXJQdR2doSjcGPM6OKPYoJgf0plJ11Q==}
|
||||||
|
|
||||||
|
headers-polyfill@4.0.3:
|
||||||
|
resolution: {integrity: sha512-IScLbePpkvO846sIwOtOTDjutRMWdXdJmXdMvk6gCBHxFO8d+QKOQedyZSxFTTFYRSmlgSTDtXqqq4pcenBXLQ==}
|
||||||
|
|
||||||
hoist-non-react-statics@3.3.2:
|
hoist-non-react-statics@3.3.2:
|
||||||
resolution: {integrity: sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==}
|
resolution: {integrity: sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==}
|
||||||
|
|
||||||
@ -3982,6 +4121,9 @@ packages:
|
|||||||
resolution: {integrity: sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==}
|
resolution: {integrity: sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==}
|
||||||
engines: {node: '>= 0.4'}
|
engines: {node: '>= 0.4'}
|
||||||
|
|
||||||
|
is-node-process@1.2.0:
|
||||||
|
resolution: {integrity: sha512-Vg4o6/fqPxIjtxgUH5QLJhwZ7gW5diGCVlXpuUfELC62CuxM1iHcRe51f2W1FDy04Ai4KJkagKjx3XaqyfRKXw==}
|
||||||
|
|
||||||
is-number-object@1.0.7:
|
is-number-object@1.0.7:
|
||||||
resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==}
|
resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==}
|
||||||
engines: {node: '>= 0.4'}
|
engines: {node: '>= 0.4'}
|
||||||
@ -4402,9 +4544,23 @@ packages:
|
|||||||
ms@2.1.3:
|
ms@2.1.3:
|
||||||
resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==}
|
resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==}
|
||||||
|
|
||||||
|
msw@2.7.0:
|
||||||
|
resolution: {integrity: sha512-BIodwZ19RWfCbYTxWTUfTXc+sg4OwjCAgxU1ZsgmggX/7S3LdUifsbUPJs61j0rWb19CZRGY5if77duhc0uXzw==}
|
||||||
|
engines: {node: '>=18'}
|
||||||
|
hasBin: true
|
||||||
|
peerDependencies:
|
||||||
|
typescript: '>= 4.8.x'
|
||||||
|
peerDependenciesMeta:
|
||||||
|
typescript:
|
||||||
|
optional: true
|
||||||
|
|
||||||
mute-stream@0.0.8:
|
mute-stream@0.0.8:
|
||||||
resolution: {integrity: sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==}
|
resolution: {integrity: sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==}
|
||||||
|
|
||||||
|
mute-stream@2.0.0:
|
||||||
|
resolution: {integrity: sha512-WWdIxpyjEn+FhQJQQv9aQAYlHoNVdzIzUySNV1gHUPDSdZJ3yZn7pAAbQcV7B56Mvu881q9FZV+0Vx2xC44VWA==}
|
||||||
|
engines: {node: ^18.17.0 || >=20.5.0}
|
||||||
|
|
||||||
mz@2.7.0:
|
mz@2.7.0:
|
||||||
resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==}
|
resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==}
|
||||||
|
|
||||||
@ -4444,6 +4600,12 @@ packages:
|
|||||||
next: ^10.0.0 || ^11.0.0 || ^12.0.0 || ^13.0.0 || ^14.0.0 || ^15.0.0
|
next: ^10.0.0 || ^11.0.0 || ^12.0.0 || ^13.0.0 || ^14.0.0 || ^15.0.0
|
||||||
react: ^16.8.0 || ^17.0.0 || ^18.0.0 || >=19.0.0-rc <19.0.0 || ^19.0.0
|
react: ^16.8.0 || ^17.0.0 || ^18.0.0 || >=19.0.0-rc <19.0.0 || ^19.0.0
|
||||||
|
|
||||||
|
next-themes@0.4.4:
|
||||||
|
resolution: {integrity: sha512-LDQ2qIOJF0VnuVrrMSMLrWGjRMkq+0mpgl6e0juCLqdJ+oo8Q84JRWT6Wh11VDQKkMMe+dVzDKLWs5n87T+PkQ==}
|
||||||
|
peerDependencies:
|
||||||
|
react: ^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc
|
||||||
|
react-dom: ^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc
|
||||||
|
|
||||||
next@15.1.0:
|
next@15.1.0:
|
||||||
resolution: {integrity: sha512-QKhzt6Y8rgLNlj30izdMbxAwjHMFANnLwDwZ+WQh5sMhyt4lEBqDK9QpvWHtIM4rINKPoJ8aiRZKg5ULSybVHw==}
|
resolution: {integrity: sha512-QKhzt6Y8rgLNlj30izdMbxAwjHMFANnLwDwZ+WQh5sMhyt4lEBqDK9QpvWHtIM4rINKPoJ8aiRZKg5ULSybVHw==}
|
||||||
engines: {node: ^18.18.0 || ^19.8.0 || >= 20.0.0}
|
engines: {node: ^18.18.0 || ^19.8.0 || >= 20.0.0}
|
||||||
@ -4588,6 +4750,9 @@ packages:
|
|||||||
resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==}
|
resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==}
|
||||||
engines: {node: '>=0.10.0'}
|
engines: {node: '>=0.10.0'}
|
||||||
|
|
||||||
|
outvariant@1.4.3:
|
||||||
|
resolution: {integrity: sha512-+Sl2UErvtsoajRDKCE5/dBz4DIvHXQQnAxtQTF04OJxY0+DyZXSo5P5Bb7XYWOh81syohlYL24hbDwxedPUJCA==}
|
||||||
|
|
||||||
p-limit@2.3.0:
|
p-limit@2.3.0:
|
||||||
resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==}
|
resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==}
|
||||||
engines: {node: '>=6'}
|
engines: {node: '>=6'}
|
||||||
@ -4682,6 +4847,9 @@ packages:
|
|||||||
resolution: {integrity: sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg==}
|
resolution: {integrity: sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg==}
|
||||||
engines: {node: 20 || >=22}
|
engines: {node: 20 || >=22}
|
||||||
|
|
||||||
|
path-to-regexp@6.3.0:
|
||||||
|
resolution: {integrity: sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==}
|
||||||
|
|
||||||
path-type@4.0.0:
|
path-type@4.0.0:
|
||||||
resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==}
|
resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==}
|
||||||
engines: {node: '>=8'}
|
engines: {node: '>=8'}
|
||||||
@ -4845,6 +5013,9 @@ packages:
|
|||||||
resolution: {integrity: sha512-2yma2tog9VaRZY2mn3Wq51uiSW4NcPYT1cQdBagwyrznrilKSZwIZ0UG3ZPL/mx+axEns0hE35T5ufOYZXEnBQ==}
|
resolution: {integrity: sha512-2yma2tog9VaRZY2mn3Wq51uiSW4NcPYT1cQdBagwyrznrilKSZwIZ0UG3ZPL/mx+axEns0hE35T5ufOYZXEnBQ==}
|
||||||
engines: {node: '>=4'}
|
engines: {node: '>=4'}
|
||||||
|
|
||||||
|
psl@1.15.0:
|
||||||
|
resolution: {integrity: sha512-JZd3gMVBAVQkSs6HdNZo9Sdo0LNcQeMNP3CozBJb3JYC/QUYZTnKxP+f8oWRX4rHP5EurWxqAHTSwUCjlNKa1w==}
|
||||||
|
|
||||||
punycode@1.4.1:
|
punycode@1.4.1:
|
||||||
resolution: {integrity: sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==}
|
resolution: {integrity: sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==}
|
||||||
|
|
||||||
@ -4859,6 +5030,9 @@ packages:
|
|||||||
resolution: {integrity: sha512-pMpnA0qRdFp32b1sJl1wOJNxZLQ2cbQx+k6tjNtZ8CpvVhNqEPRgivZ2WOUev2YMajecdH7ctUPDvEe87nariQ==}
|
resolution: {integrity: sha512-pMpnA0qRdFp32b1sJl1wOJNxZLQ2cbQx+k6tjNtZ8CpvVhNqEPRgivZ2WOUev2YMajecdH7ctUPDvEe87nariQ==}
|
||||||
engines: {node: '>=6.0.0'}
|
engines: {node: '>=6.0.0'}
|
||||||
|
|
||||||
|
querystringify@2.2.0:
|
||||||
|
resolution: {integrity: sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==}
|
||||||
|
|
||||||
queue-microtask@1.2.3:
|
queue-microtask@1.2.3:
|
||||||
resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==}
|
resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==}
|
||||||
|
|
||||||
@ -4996,6 +5170,9 @@ packages:
|
|||||||
resolution: {integrity: sha512-LBnkqsDE7BZKvqylbmn7lTIVdpx4K/QCduRATpO5R+wtPmky/a8pN1bO2D6wXppn1497AJF9mNjqAXr6bdl9jg==}
|
resolution: {integrity: sha512-LBnkqsDE7BZKvqylbmn7lTIVdpx4K/QCduRATpO5R+wtPmky/a8pN1bO2D6wXppn1497AJF9mNjqAXr6bdl9jg==}
|
||||||
engines: {node: '>=0.10.5'}
|
engines: {node: '>=0.10.5'}
|
||||||
|
|
||||||
|
requires-port@1.0.0:
|
||||||
|
resolution: {integrity: sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==}
|
||||||
|
|
||||||
resolve-from@4.0.0:
|
resolve-from@4.0.0:
|
||||||
resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==}
|
resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==}
|
||||||
engines: {node: '>=4'}
|
engines: {node: '>=4'}
|
||||||
@ -5227,6 +5404,10 @@ packages:
|
|||||||
stackback@0.0.2:
|
stackback@0.0.2:
|
||||||
resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==}
|
resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==}
|
||||||
|
|
||||||
|
statuses@2.0.1:
|
||||||
|
resolution: {integrity: sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==}
|
||||||
|
engines: {node: '>= 0.8'}
|
||||||
|
|
||||||
std-env@3.8.0:
|
std-env@3.8.0:
|
||||||
resolution: {integrity: sha512-Bc3YwwCB+OzldMxOXJIIvC6cPRWr/LxOp48CdQTOkPyk/t4JWWJbrilwBd7RJzKV8QW7tJkcgAmeuLLJugl5/w==}
|
resolution: {integrity: sha512-Bc3YwwCB+OzldMxOXJIIvC6cPRWr/LxOp48CdQTOkPyk/t4JWWJbrilwBd7RJzKV8QW7tJkcgAmeuLLJugl5/w==}
|
||||||
|
|
||||||
@ -5234,6 +5415,9 @@ packages:
|
|||||||
resolution: {integrity: sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==}
|
resolution: {integrity: sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==}
|
||||||
engines: {node: '>=10.0.0'}
|
engines: {node: '>=10.0.0'}
|
||||||
|
|
||||||
|
strict-event-emitter@0.5.1:
|
||||||
|
resolution: {integrity: sha512-vMgjE/GGEPEFnhFub6pa4FmJBRBVOLpIII2hvCZ8Kzb7K0hlHo7mQv6xYrBvCL2LtAIBwFUK8wvuJgTVSQ5MFQ==}
|
||||||
|
|
||||||
string-argv@0.3.2:
|
string-argv@0.3.2:
|
||||||
resolution: {integrity: sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==}
|
resolution: {integrity: sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==}
|
||||||
engines: {node: '>=0.6.19'}
|
engines: {node: '>=0.6.19'}
|
||||||
@ -5417,6 +5601,10 @@ packages:
|
|||||||
resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==}
|
resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==}
|
||||||
engines: {node: '>=8.0'}
|
engines: {node: '>=8.0'}
|
||||||
|
|
||||||
|
tough-cookie@4.1.4:
|
||||||
|
resolution: {integrity: sha512-Loo5UUvLD9ScZ6jh8beX1T6sO1w2/MpCRpEP7V280GKMVUQ0Jzar2U3UJPsrdbziLEMMhu3Ujnq//rhiFuIeag==}
|
||||||
|
engines: {node: '>=6'}
|
||||||
|
|
||||||
tough-cookie@5.0.0:
|
tough-cookie@5.0.0:
|
||||||
resolution: {integrity: sha512-FRKsF7cz96xIIeMZ82ehjC3xW2E+O2+v11udrDYewUbszngYhsGa8z6YUMMzO9QJZzzyd0nGGXnML/TReX6W8Q==}
|
resolution: {integrity: sha512-FRKsF7cz96xIIeMZ82ehjC3xW2E+O2+v11udrDYewUbszngYhsGa8z6YUMMzO9QJZzzyd0nGGXnML/TReX6W8Q==}
|
||||||
engines: {node: '>=16'}
|
engines: {node: '>=16'}
|
||||||
@ -5528,6 +5716,10 @@ packages:
|
|||||||
resolution: {integrity: sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==}
|
resolution: {integrity: sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==}
|
||||||
engines: {node: '>=8'}
|
engines: {node: '>=8'}
|
||||||
|
|
||||||
|
type-fest@4.30.2:
|
||||||
|
resolution: {integrity: sha512-UJShLPYi1aWqCdq9HycOL/gwsuqda1OISdBO3t8RlXQC4QvtuIz4b5FCfe2dQIWEpmlRExKmcTBfP1r9bhY7ig==}
|
||||||
|
engines: {node: '>=16'}
|
||||||
|
|
||||||
typed-array-buffer@1.0.2:
|
typed-array-buffer@1.0.2:
|
||||||
resolution: {integrity: sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==}
|
resolution: {integrity: sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==}
|
||||||
engines: {node: '>= 0.4'}
|
engines: {node: '>= 0.4'}
|
||||||
@ -5579,6 +5771,10 @@ packages:
|
|||||||
resolution: {integrity: sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==}
|
resolution: {integrity: sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==}
|
||||||
engines: {node: '>=4'}
|
engines: {node: '>=4'}
|
||||||
|
|
||||||
|
universalify@0.2.0:
|
||||||
|
resolution: {integrity: sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==}
|
||||||
|
engines: {node: '>= 4.0.0'}
|
||||||
|
|
||||||
unixify@1.0.0:
|
unixify@1.0.0:
|
||||||
resolution: {integrity: sha512-6bc58dPYhCMHHuwxldQxO3RRNZ4eCogZ/st++0+fcC1nr0jiGUtAdBJ2qzmLQWSxbtz42pWt4QQMiZ9HvZf5cg==}
|
resolution: {integrity: sha512-6bc58dPYhCMHHuwxldQxO3RRNZ4eCogZ/st++0+fcC1nr0jiGUtAdBJ2qzmLQWSxbtz42pWt4QQMiZ9HvZf5cg==}
|
||||||
engines: {node: '>=0.10.0'}
|
engines: {node: '>=0.10.0'}
|
||||||
@ -5598,12 +5794,21 @@ packages:
|
|||||||
uri-js@4.4.1:
|
uri-js@4.4.1:
|
||||||
resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==}
|
resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==}
|
||||||
|
|
||||||
|
url-parse@1.5.10:
|
||||||
|
resolution: {integrity: sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==}
|
||||||
|
|
||||||
urlpattern-polyfill@10.0.0:
|
urlpattern-polyfill@10.0.0:
|
||||||
resolution: {integrity: sha512-H/A06tKD7sS1O1X2SshBVeA5FLycRpjqiBeqGKmBwBDBy28EnRjORxTNe269KSSr5un5qyWi1iL61wLxpd+ZOg==}
|
resolution: {integrity: sha512-H/A06tKD7sS1O1X2SshBVeA5FLycRpjqiBeqGKmBwBDBy28EnRjORxTNe269KSSr5un5qyWi1iL61wLxpd+ZOg==}
|
||||||
|
|
||||||
urlpattern-polyfill@8.0.2:
|
urlpattern-polyfill@8.0.2:
|
||||||
resolution: {integrity: sha512-Qp95D4TPJl1kC9SKigDcqgyM2VDVO4RiJc2d4qe5GrYm+zbIQCWWKAFaJNQ4BhdFeDGwBmAxqJBwWSJDb9T3BQ==}
|
resolution: {integrity: sha512-Qp95D4TPJl1kC9SKigDcqgyM2VDVO4RiJc2d4qe5GrYm+zbIQCWWKAFaJNQ4BhdFeDGwBmAxqJBwWSJDb9T3BQ==}
|
||||||
|
|
||||||
|
use-debounce@10.0.4:
|
||||||
|
resolution: {integrity: sha512-6Cf7Yr7Wk7Kdv77nnJMf6de4HuDE4dTxKij+RqE9rufDsI6zsbjyAxcH5y2ueJCQAnfgKbzXbZHYlkFwmBlWkw==}
|
||||||
|
engines: {node: '>= 16.0.0'}
|
||||||
|
peerDependencies:
|
||||||
|
react: '*'
|
||||||
|
|
||||||
use-intl@3.26.0:
|
use-intl@3.26.0:
|
||||||
resolution: {integrity: sha512-HGXmpjGlbEv1uFZPfm557LK8p/hv0pKF9UwnrJeHUTxQx6bUGzMgpmPRLCVY3zkr7hfjy4LPwQJfk4Fhnn+dIg==}
|
resolution: {integrity: sha512-HGXmpjGlbEv1uFZPfm557LK8p/hv0pKF9UwnrJeHUTxQx6bUGzMgpmPRLCVY3zkr7hfjy4LPwQJfk4Fhnn+dIg==}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
@ -5863,6 +6068,10 @@ packages:
|
|||||||
resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==}
|
resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==}
|
||||||
engines: {node: '>=10'}
|
engines: {node: '>=10'}
|
||||||
|
|
||||||
|
yoctocolors-cjs@2.1.2:
|
||||||
|
resolution: {integrity: sha512-cYVsTjKl8b+FrnidjibDWskAv7UKOfcwaVZdp/it9n1s9fU3IkgDbhdIRKCW4JDsAlECJY0ytoVPT3sK6kideA==}
|
||||||
|
engines: {node: '>=18'}
|
||||||
|
|
||||||
zen-observable-ts@1.2.5:
|
zen-observable-ts@1.2.5:
|
||||||
resolution: {integrity: sha512-QZWQekv6iB72Naeake9hS1KxHlotfRpe+WGNbNx5/ta+R3DNjVO2bswf63gXlWDcs+EMd7XY8HfVQyP1X6T4Zg==}
|
resolution: {integrity: sha512-QZWQekv6iB72Naeake9hS1KxHlotfRpe+WGNbNx5/ta+R3DNjVO2bswf63gXlWDcs+EMd7XY8HfVQyP1X6T4Zg==}
|
||||||
|
|
||||||
@ -6720,6 +6929,22 @@ snapshots:
|
|||||||
'@babel/helper-string-parser': 7.25.9
|
'@babel/helper-string-parser': 7.25.9
|
||||||
'@babel/helper-validator-identifier': 7.25.9
|
'@babel/helper-validator-identifier': 7.25.9
|
||||||
|
|
||||||
|
'@bundled-es-modules/cookie@2.0.1':
|
||||||
|
dependencies:
|
||||||
|
cookie: 0.7.2
|
||||||
|
optional: true
|
||||||
|
|
||||||
|
'@bundled-es-modules/statuses@1.0.1':
|
||||||
|
dependencies:
|
||||||
|
statuses: 2.0.1
|
||||||
|
optional: true
|
||||||
|
|
||||||
|
'@bundled-es-modules/tough-cookie@0.1.6':
|
||||||
|
dependencies:
|
||||||
|
'@types/tough-cookie': 4.0.5
|
||||||
|
tough-cookie: 4.1.4
|
||||||
|
optional: true
|
||||||
|
|
||||||
'@emnapi/runtime@1.3.1':
|
'@emnapi/runtime@1.3.1':
|
||||||
dependencies:
|
dependencies:
|
||||||
tslib: 2.8.1
|
tslib: 2.8.1
|
||||||
@ -7650,6 +7875,36 @@ snapshots:
|
|||||||
'@img/sharp-win32-x64@0.33.5':
|
'@img/sharp-win32-x64@0.33.5':
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
|
'@inquirer/confirm@5.1.1(@types/node@20.17.8)':
|
||||||
|
dependencies:
|
||||||
|
'@inquirer/core': 10.1.2(@types/node@20.17.8)
|
||||||
|
'@inquirer/type': 3.0.2(@types/node@20.17.8)
|
||||||
|
'@types/node': 20.17.8
|
||||||
|
optional: true
|
||||||
|
|
||||||
|
'@inquirer/core@10.1.2(@types/node@20.17.8)':
|
||||||
|
dependencies:
|
||||||
|
'@inquirer/figures': 1.0.9
|
||||||
|
'@inquirer/type': 3.0.2(@types/node@20.17.8)
|
||||||
|
ansi-escapes: 4.3.2
|
||||||
|
cli-width: 4.1.0
|
||||||
|
mute-stream: 2.0.0
|
||||||
|
signal-exit: 4.1.0
|
||||||
|
strip-ansi: 6.0.1
|
||||||
|
wrap-ansi: 6.2.0
|
||||||
|
yoctocolors-cjs: 2.1.2
|
||||||
|
transitivePeerDependencies:
|
||||||
|
- '@types/node'
|
||||||
|
optional: true
|
||||||
|
|
||||||
|
'@inquirer/figures@1.0.9':
|
||||||
|
optional: true
|
||||||
|
|
||||||
|
'@inquirer/type@3.0.2(@types/node@20.17.8)':
|
||||||
|
dependencies:
|
||||||
|
'@types/node': 20.17.8
|
||||||
|
optional: true
|
||||||
|
|
||||||
'@isaacs/cliui@8.0.2':
|
'@isaacs/cliui@8.0.2':
|
||||||
dependencies:
|
dependencies:
|
||||||
string-width: 5.1.2
|
string-width: 5.1.2
|
||||||
@ -7678,6 +7933,16 @@ snapshots:
|
|||||||
|
|
||||||
'@kamilkisiela/fast-url-parser@1.1.4': {}
|
'@kamilkisiela/fast-url-parser@1.1.4': {}
|
||||||
|
|
||||||
|
'@mswjs/interceptors@0.37.3':
|
||||||
|
dependencies:
|
||||||
|
'@open-draft/deferred-promise': 2.2.0
|
||||||
|
'@open-draft/logger': 0.3.0
|
||||||
|
'@open-draft/until': 2.1.0
|
||||||
|
is-node-process: 1.2.0
|
||||||
|
outvariant: 1.4.3
|
||||||
|
strict-event-emitter: 0.5.1
|
||||||
|
optional: true
|
||||||
|
|
||||||
'@next/env@15.1.0': {}
|
'@next/env@15.1.0': {}
|
||||||
|
|
||||||
'@next/eslint-plugin-next@14.2.18':
|
'@next/eslint-plugin-next@14.2.18':
|
||||||
@ -7730,6 +7995,18 @@ snapshots:
|
|||||||
|
|
||||||
'@nolyfill/is-core-module@1.0.39': {}
|
'@nolyfill/is-core-module@1.0.39': {}
|
||||||
|
|
||||||
|
'@open-draft/deferred-promise@2.2.0':
|
||||||
|
optional: true
|
||||||
|
|
||||||
|
'@open-draft/logger@0.3.0':
|
||||||
|
dependencies:
|
||||||
|
is-node-process: 1.2.0
|
||||||
|
outvariant: 1.4.3
|
||||||
|
optional: true
|
||||||
|
|
||||||
|
'@open-draft/until@2.1.0':
|
||||||
|
optional: true
|
||||||
|
|
||||||
'@panva/hkdf@1.2.1': {}
|
'@panva/hkdf@1.2.1': {}
|
||||||
|
|
||||||
'@peculiar/asn1-schema@2.3.13':
|
'@peculiar/asn1-schema@2.3.13':
|
||||||
@ -7759,6 +8036,8 @@ snapshots:
|
|||||||
dependencies:
|
dependencies:
|
||||||
playwright: 1.49.1
|
playwright: 1.49.1
|
||||||
|
|
||||||
|
'@radix-ui/primitive@1.1.1': {}
|
||||||
|
|
||||||
'@radix-ui/react-avatar@1.1.2(@types/react-dom@19.0.1)(@types/react@19.0.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)':
|
'@radix-ui/react-avatar@1.1.2(@types/react-dom@19.0.1)(@types/react@19.0.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@radix-ui/react-context': 1.1.1(@types/react@19.0.1)(react@19.0.0)
|
'@radix-ui/react-context': 1.1.1(@types/react@19.0.1)(react@19.0.0)
|
||||||
@ -7771,6 +8050,22 @@ snapshots:
|
|||||||
'@types/react': 19.0.1
|
'@types/react': 19.0.1
|
||||||
'@types/react-dom': 19.0.1
|
'@types/react-dom': 19.0.1
|
||||||
|
|
||||||
|
'@radix-ui/react-checkbox@1.1.3(@types/react-dom@19.0.1)(@types/react@19.0.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)':
|
||||||
|
dependencies:
|
||||||
|
'@radix-ui/primitive': 1.1.1
|
||||||
|
'@radix-ui/react-compose-refs': 1.1.1(@types/react@19.0.1)(react@19.0.0)
|
||||||
|
'@radix-ui/react-context': 1.1.1(@types/react@19.0.1)(react@19.0.0)
|
||||||
|
'@radix-ui/react-presence': 1.1.2(@types/react-dom@19.0.1)(@types/react@19.0.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)
|
||||||
|
'@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.0.1)(@types/react@19.0.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)
|
||||||
|
'@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.0.1)(react@19.0.0)
|
||||||
|
'@radix-ui/react-use-previous': 1.1.0(@types/react@19.0.1)(react@19.0.0)
|
||||||
|
'@radix-ui/react-use-size': 1.1.0(@types/react@19.0.1)(react@19.0.0)
|
||||||
|
react: 19.0.0
|
||||||
|
react-dom: 19.0.0(react@19.0.0)
|
||||||
|
optionalDependencies:
|
||||||
|
'@types/react': 19.0.1
|
||||||
|
'@types/react-dom': 19.0.1
|
||||||
|
|
||||||
'@radix-ui/react-compose-refs@1.1.1(@types/react@19.0.1)(react@19.0.0)':
|
'@radix-ui/react-compose-refs@1.1.1(@types/react@19.0.1)(react@19.0.0)':
|
||||||
dependencies:
|
dependencies:
|
||||||
react: 19.0.0
|
react: 19.0.0
|
||||||
@ -7783,6 +8078,25 @@ snapshots:
|
|||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
'@types/react': 19.0.1
|
'@types/react': 19.0.1
|
||||||
|
|
||||||
|
'@radix-ui/react-label@2.1.1(@types/react-dom@19.0.1)(@types/react@19.0.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)':
|
||||||
|
dependencies:
|
||||||
|
'@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.0.1)(@types/react@19.0.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)
|
||||||
|
react: 19.0.0
|
||||||
|
react-dom: 19.0.0(react@19.0.0)
|
||||||
|
optionalDependencies:
|
||||||
|
'@types/react': 19.0.1
|
||||||
|
'@types/react-dom': 19.0.1
|
||||||
|
|
||||||
|
'@radix-ui/react-presence@1.1.2(@types/react-dom@19.0.1)(@types/react@19.0.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)':
|
||||||
|
dependencies:
|
||||||
|
'@radix-ui/react-compose-refs': 1.1.1(@types/react@19.0.1)(react@19.0.0)
|
||||||
|
'@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.0.1)(react@19.0.0)
|
||||||
|
react: 19.0.0
|
||||||
|
react-dom: 19.0.0(react@19.0.0)
|
||||||
|
optionalDependencies:
|
||||||
|
'@types/react': 19.0.1
|
||||||
|
'@types/react-dom': 19.0.1
|
||||||
|
|
||||||
'@radix-ui/react-primitive@2.0.1(@types/react-dom@19.0.1)(@types/react@19.0.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)':
|
'@radix-ui/react-primitive@2.0.1(@types/react-dom@19.0.1)(@types/react@19.0.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@radix-ui/react-slot': 1.1.1(@types/react@19.0.1)(react@19.0.0)
|
'@radix-ui/react-slot': 1.1.1(@types/react@19.0.1)(react@19.0.0)
|
||||||
@ -7805,12 +8119,32 @@ snapshots:
|
|||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
'@types/react': 19.0.1
|
'@types/react': 19.0.1
|
||||||
|
|
||||||
|
'@radix-ui/react-use-controllable-state@1.1.0(@types/react@19.0.1)(react@19.0.0)':
|
||||||
|
dependencies:
|
||||||
|
'@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.0.1)(react@19.0.0)
|
||||||
|
react: 19.0.0
|
||||||
|
optionalDependencies:
|
||||||
|
'@types/react': 19.0.1
|
||||||
|
|
||||||
'@radix-ui/react-use-layout-effect@1.1.0(@types/react@19.0.1)(react@19.0.0)':
|
'@radix-ui/react-use-layout-effect@1.1.0(@types/react@19.0.1)(react@19.0.0)':
|
||||||
dependencies:
|
dependencies:
|
||||||
react: 19.0.0
|
react: 19.0.0
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
'@types/react': 19.0.1
|
'@types/react': 19.0.1
|
||||||
|
|
||||||
|
'@radix-ui/react-use-previous@1.1.0(@types/react@19.0.1)(react@19.0.0)':
|
||||||
|
dependencies:
|
||||||
|
react: 19.0.0
|
||||||
|
optionalDependencies:
|
||||||
|
'@types/react': 19.0.1
|
||||||
|
|
||||||
|
'@radix-ui/react-use-size@1.1.0(@types/react@19.0.1)(react@19.0.0)':
|
||||||
|
dependencies:
|
||||||
|
'@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.0.1)(react@19.0.0)
|
||||||
|
react: 19.0.0
|
||||||
|
optionalDependencies:
|
||||||
|
'@types/react': 19.0.1
|
||||||
|
|
||||||
'@repeaterjs/repeater@3.0.4': {}
|
'@repeaterjs/repeater@3.0.4': {}
|
||||||
|
|
||||||
'@repeaterjs/repeater@3.0.6': {}
|
'@repeaterjs/repeater@3.0.6': {}
|
||||||
@ -7975,6 +8309,9 @@ snapshots:
|
|||||||
dependencies:
|
dependencies:
|
||||||
'@babel/types': 7.26.0
|
'@babel/types': 7.26.0
|
||||||
|
|
||||||
|
'@types/cookie@0.6.0':
|
||||||
|
optional: true
|
||||||
|
|
||||||
'@types/estree@1.0.6': {}
|
'@types/estree@1.0.6': {}
|
||||||
|
|
||||||
'@types/js-yaml@4.0.9': {}
|
'@types/js-yaml@4.0.9': {}
|
||||||
@ -8001,6 +8338,12 @@ snapshots:
|
|||||||
dependencies:
|
dependencies:
|
||||||
csstype: 3.1.3
|
csstype: 3.1.3
|
||||||
|
|
||||||
|
'@types/statuses@2.0.5':
|
||||||
|
optional: true
|
||||||
|
|
||||||
|
'@types/tough-cookie@4.0.5':
|
||||||
|
optional: true
|
||||||
|
|
||||||
'@types/ws@8.5.13':
|
'@types/ws@8.5.13':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@types/node': 20.17.8
|
'@types/node': 20.17.8
|
||||||
@ -8164,10 +8507,10 @@ snapshots:
|
|||||||
'@typescript-eslint/types': 8.17.0
|
'@typescript-eslint/types': 8.17.0
|
||||||
eslint-visitor-keys: 4.2.0
|
eslint-visitor-keys: 4.2.0
|
||||||
|
|
||||||
'@vchikalkin/eslint-config-awesome@2.0.6(@babel/core@7.26.0)(@next/eslint-plugin-next@15.0.3)(@types/node@20.17.8)(eslint-plugin-canonical@5.0.0(@typescript-eslint/parser@8.16.0(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2))(eslint-plugin-import-x@4.5.0(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2))(eslint-plugin-import-x@4.5.0(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2))(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2))(eslint-plugin-import-x@4.5.0(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2))(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2)(vitest@2.1.8(@types/node@20.17.8)(jsdom@25.0.1))':
|
'@vchikalkin/eslint-config-awesome@2.0.6(@babel/core@7.26.0)(@next/eslint-plugin-next@15.0.3)(@types/node@20.17.8)(eslint-plugin-canonical@5.0.0(@typescript-eslint/parser@8.16.0(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2))(eslint-plugin-import-x@4.5.0(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2))(eslint-plugin-import-x@4.5.0(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2))(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2))(eslint-plugin-import-x@4.5.0(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2))(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2)(vitest@2.1.8(@types/node@20.17.8)(jsdom@25.0.1)(msw@2.7.0(@types/node@20.17.8)(typescript@5.7.2)))':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@next/eslint-plugin-next': 15.0.3
|
'@next/eslint-plugin-next': 15.0.3
|
||||||
eslint-config-canonical: 44.3.33(@babel/core@7.26.0)(@types/node@20.17.8)(eslint-plugin-import-x@4.5.0(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2))(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2)(vitest@2.1.8(@types/node@20.17.8)(jsdom@25.0.1))
|
eslint-config-canonical: 44.3.33(@babel/core@7.26.0)(@types/node@20.17.8)(eslint-plugin-import-x@4.5.0(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2))(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2)(vitest@2.1.8(@types/node@20.17.8)(jsdom@25.0.1)(msw@2.7.0(@types/node@20.17.8)(typescript@5.7.2)))
|
||||||
eslint-plugin-canonical: 5.0.0(@typescript-eslint/parser@8.16.0(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2))(eslint-plugin-import-x@4.5.0(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2))(eslint-plugin-import-x@4.5.0(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2))(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2)
|
eslint-plugin-canonical: 5.0.0(@typescript-eslint/parser@8.16.0(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2))(eslint-plugin-import-x@4.5.0(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2))(eslint-plugin-import-x@4.5.0(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2))(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2)
|
||||||
eslint-plugin-sonarjs: 3.0.1(eslint@9.15.0(jiti@2.4.1))
|
eslint-plugin-sonarjs: 3.0.1(eslint@9.15.0(jiti@2.4.1))
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
@ -8206,12 +8549,13 @@ snapshots:
|
|||||||
chai: 5.1.2
|
chai: 5.1.2
|
||||||
tinyrainbow: 1.2.0
|
tinyrainbow: 1.2.0
|
||||||
|
|
||||||
'@vitest/mocker@2.1.8(vite@5.4.11(@types/node@20.17.8))':
|
'@vitest/mocker@2.1.8(msw@2.7.0(@types/node@20.17.8)(typescript@5.7.2))(vite@5.4.11(@types/node@20.17.8))':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@vitest/spy': 2.1.8
|
'@vitest/spy': 2.1.8
|
||||||
estree-walker: 3.0.3
|
estree-walker: 3.0.3
|
||||||
magic-string: 0.30.15
|
magic-string: 0.30.15
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
|
msw: 2.7.0(@types/node@20.17.8)(typescript@5.7.2)
|
||||||
vite: 5.4.11(@types/node@20.17.8)
|
vite: 5.4.11(@types/node@20.17.8)
|
||||||
|
|
||||||
'@vitest/pretty-format@2.1.8':
|
'@vitest/pretty-format@2.1.8':
|
||||||
@ -8710,6 +9054,9 @@ snapshots:
|
|||||||
|
|
||||||
cli-width@3.0.0: {}
|
cli-width@3.0.0: {}
|
||||||
|
|
||||||
|
cli-width@4.1.0:
|
||||||
|
optional: true
|
||||||
|
|
||||||
client-only@0.0.1: {}
|
client-only@0.0.1: {}
|
||||||
|
|
||||||
cliui@6.0.0:
|
cliui@6.0.0:
|
||||||
@ -9138,7 +9485,7 @@ snapshots:
|
|||||||
eslint: 9.15.0(jiti@2.4.1)
|
eslint: 9.15.0(jiti@2.4.1)
|
||||||
semver: 7.6.3
|
semver: 7.6.3
|
||||||
|
|
||||||
eslint-config-canonical@44.3.33(@babel/core@7.26.0)(@types/node@20.17.8)(eslint-plugin-import-x@4.5.0(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2))(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2)(vitest@2.1.8(@types/node@20.17.8)(jsdom@25.0.1)):
|
eslint-config-canonical@44.3.33(@babel/core@7.26.0)(@types/node@20.17.8)(eslint-plugin-import-x@4.5.0(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2))(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2)(vitest@2.1.8(@types/node@20.17.8)(jsdom@25.0.1)(msw@2.7.0(@types/node@20.17.8)(typescript@5.7.2))):
|
||||||
dependencies:
|
dependencies:
|
||||||
'@graphql-eslint/eslint-plugin': 3.20.1(@babel/core@7.26.0)(@types/node@20.17.8)(graphql@16.9.0)
|
'@graphql-eslint/eslint-plugin': 3.20.1(@babel/core@7.26.0)(@types/node@20.17.8)(graphql@16.9.0)
|
||||||
'@next/eslint-plugin-next': 14.2.18
|
'@next/eslint-plugin-next': 14.2.18
|
||||||
@ -9169,7 +9516,7 @@ snapshots:
|
|||||||
eslint-plugin-react-hooks: 5.1.0-rc-fb9a90fa48-20240614(eslint@9.15.0(jiti@2.4.1))
|
eslint-plugin-react-hooks: 5.1.0-rc-fb9a90fa48-20240614(eslint@9.15.0(jiti@2.4.1))
|
||||||
eslint-plugin-regexp: 2.7.0(eslint@9.15.0(jiti@2.4.1))
|
eslint-plugin-regexp: 2.7.0(eslint@9.15.0(jiti@2.4.1))
|
||||||
eslint-plugin-unicorn: 56.0.1(eslint@9.15.0(jiti@2.4.1))
|
eslint-plugin-unicorn: 56.0.1(eslint@9.15.0(jiti@2.4.1))
|
||||||
eslint-plugin-vitest: 0.5.4(@typescript-eslint/eslint-plugin@8.16.0(@typescript-eslint/parser@8.16.0(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2))(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2))(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2)(vitest@2.1.8(@types/node@20.17.8)(jsdom@25.0.1))
|
eslint-plugin-vitest: 0.5.4(@typescript-eslint/eslint-plugin@8.16.0(@typescript-eslint/parser@8.16.0(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2))(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2))(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2)(vitest@2.1.8(@types/node@20.17.8)(jsdom@25.0.1)(msw@2.7.0(@types/node@20.17.8)(typescript@5.7.2)))
|
||||||
eslint-plugin-yml: 1.16.0(eslint@9.15.0(jiti@2.4.1))
|
eslint-plugin-yml: 1.16.0(eslint@9.15.0(jiti@2.4.1))
|
||||||
eslint-plugin-zod: 1.4.0(eslint@9.15.0(jiti@2.4.1))
|
eslint-plugin-zod: 1.4.0(eslint@9.15.0(jiti@2.4.1))
|
||||||
globals: 15.12.0
|
globals: 15.12.0
|
||||||
@ -9526,13 +9873,13 @@ snapshots:
|
|||||||
semver: 7.6.3
|
semver: 7.6.3
|
||||||
strip-indent: 3.0.0
|
strip-indent: 3.0.0
|
||||||
|
|
||||||
eslint-plugin-vitest@0.5.4(@typescript-eslint/eslint-plugin@8.16.0(@typescript-eslint/parser@8.16.0(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2))(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2))(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2)(vitest@2.1.8(@types/node@20.17.8)(jsdom@25.0.1)):
|
eslint-plugin-vitest@0.5.4(@typescript-eslint/eslint-plugin@8.16.0(@typescript-eslint/parser@8.16.0(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2))(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2))(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2)(vitest@2.1.8(@types/node@20.17.8)(jsdom@25.0.1)(msw@2.7.0(@types/node@20.17.8)(typescript@5.7.2))):
|
||||||
dependencies:
|
dependencies:
|
||||||
'@typescript-eslint/utils': 7.18.0(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2)
|
'@typescript-eslint/utils': 7.18.0(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2)
|
||||||
eslint: 9.15.0(jiti@2.4.1)
|
eslint: 9.15.0(jiti@2.4.1)
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
'@typescript-eslint/eslint-plugin': 8.16.0(@typescript-eslint/parser@8.16.0(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2))(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2)
|
'@typescript-eslint/eslint-plugin': 8.16.0(@typescript-eslint/parser@8.16.0(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2))(eslint@9.15.0(jiti@2.4.1))(typescript@5.7.2)
|
||||||
vitest: 2.1.8(@types/node@20.17.8)(jsdom@25.0.1)
|
vitest: 2.1.8(@types/node@20.17.8)(jsdom@25.0.1)(msw@2.7.0(@types/node@20.17.8)(typescript@5.7.2))
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
- typescript
|
- typescript
|
||||||
@ -9991,6 +10338,9 @@ snapshots:
|
|||||||
capital-case: 1.0.4
|
capital-case: 1.0.4
|
||||||
tslib: 2.8.1
|
tslib: 2.8.1
|
||||||
|
|
||||||
|
headers-polyfill@4.0.3:
|
||||||
|
optional: true
|
||||||
|
|
||||||
hoist-non-react-statics@3.3.2:
|
hoist-non-react-statics@3.3.2:
|
||||||
dependencies:
|
dependencies:
|
||||||
react-is: 16.13.1
|
react-is: 16.13.1
|
||||||
@ -10183,6 +10533,9 @@ snapshots:
|
|||||||
|
|
||||||
is-negative-zero@2.0.3: {}
|
is-negative-zero@2.0.3: {}
|
||||||
|
|
||||||
|
is-node-process@1.2.0:
|
||||||
|
optional: true
|
||||||
|
|
||||||
is-number-object@1.0.7:
|
is-number-object@1.0.7:
|
||||||
dependencies:
|
dependencies:
|
||||||
has-tostringtag: 1.0.2
|
has-tostringtag: 1.0.2
|
||||||
@ -10597,8 +10950,37 @@ snapshots:
|
|||||||
|
|
||||||
ms@2.1.3: {}
|
ms@2.1.3: {}
|
||||||
|
|
||||||
|
msw@2.7.0(@types/node@20.17.8)(typescript@5.7.2):
|
||||||
|
dependencies:
|
||||||
|
'@bundled-es-modules/cookie': 2.0.1
|
||||||
|
'@bundled-es-modules/statuses': 1.0.1
|
||||||
|
'@bundled-es-modules/tough-cookie': 0.1.6
|
||||||
|
'@inquirer/confirm': 5.1.1(@types/node@20.17.8)
|
||||||
|
'@mswjs/interceptors': 0.37.3
|
||||||
|
'@open-draft/deferred-promise': 2.2.0
|
||||||
|
'@open-draft/until': 2.1.0
|
||||||
|
'@types/cookie': 0.6.0
|
||||||
|
'@types/statuses': 2.0.5
|
||||||
|
graphql: 16.9.0
|
||||||
|
headers-polyfill: 4.0.3
|
||||||
|
is-node-process: 1.2.0
|
||||||
|
outvariant: 1.4.3
|
||||||
|
path-to-regexp: 6.3.0
|
||||||
|
picocolors: 1.1.1
|
||||||
|
strict-event-emitter: 0.5.1
|
||||||
|
type-fest: 4.30.2
|
||||||
|
yargs: 17.7.2
|
||||||
|
optionalDependencies:
|
||||||
|
typescript: 5.7.2
|
||||||
|
transitivePeerDependencies:
|
||||||
|
- '@types/node'
|
||||||
|
optional: true
|
||||||
|
|
||||||
mute-stream@0.0.8: {}
|
mute-stream@0.0.8: {}
|
||||||
|
|
||||||
|
mute-stream@2.0.0:
|
||||||
|
optional: true
|
||||||
|
|
||||||
mz@2.7.0:
|
mz@2.7.0:
|
||||||
dependencies:
|
dependencies:
|
||||||
any-promise: 1.3.0
|
any-promise: 1.3.0
|
||||||
@ -10636,6 +11018,11 @@ snapshots:
|
|||||||
react: 19.0.0
|
react: 19.0.0
|
||||||
use-intl: 3.26.0(react@19.0.0)
|
use-intl: 3.26.0(react@19.0.0)
|
||||||
|
|
||||||
|
next-themes@0.4.4(react-dom@19.0.0(react@19.0.0))(react@19.0.0):
|
||||||
|
dependencies:
|
||||||
|
react: 19.0.0
|
||||||
|
react-dom: 19.0.0(react@19.0.0)
|
||||||
|
|
||||||
next@15.1.0(@babel/core@7.26.0)(@playwright/test@1.49.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0):
|
next@15.1.0(@babel/core@7.26.0)(@playwright/test@1.49.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0):
|
||||||
dependencies:
|
dependencies:
|
||||||
'@next/env': 15.1.0
|
'@next/env': 15.1.0
|
||||||
@ -10793,6 +11180,9 @@ snapshots:
|
|||||||
|
|
||||||
os-tmpdir@1.0.2: {}
|
os-tmpdir@1.0.2: {}
|
||||||
|
|
||||||
|
outvariant@1.4.3:
|
||||||
|
optional: true
|
||||||
|
|
||||||
p-limit@2.3.0:
|
p-limit@2.3.0:
|
||||||
dependencies:
|
dependencies:
|
||||||
p-try: 2.2.0
|
p-try: 2.2.0
|
||||||
@ -10886,6 +11276,9 @@ snapshots:
|
|||||||
lru-cache: 11.0.2
|
lru-cache: 11.0.2
|
||||||
minipass: 7.1.2
|
minipass: 7.1.2
|
||||||
|
|
||||||
|
path-to-regexp@6.3.0:
|
||||||
|
optional: true
|
||||||
|
|
||||||
path-type@4.0.0: {}
|
path-type@4.0.0: {}
|
||||||
|
|
||||||
pathe@1.1.2: {}
|
pathe@1.1.2: {}
|
||||||
@ -11009,6 +11402,11 @@ snapshots:
|
|||||||
|
|
||||||
proto-props@2.0.0: {}
|
proto-props@2.0.0: {}
|
||||||
|
|
||||||
|
psl@1.15.0:
|
||||||
|
dependencies:
|
||||||
|
punycode: 2.3.1
|
||||||
|
optional: true
|
||||||
|
|
||||||
punycode@1.4.1: {}
|
punycode@1.4.1: {}
|
||||||
|
|
||||||
punycode@2.3.1: {}
|
punycode@2.3.1: {}
|
||||||
@ -11019,6 +11417,9 @@ snapshots:
|
|||||||
|
|
||||||
pvutils@1.1.3: {}
|
pvutils@1.1.3: {}
|
||||||
|
|
||||||
|
querystringify@2.2.0:
|
||||||
|
optional: true
|
||||||
|
|
||||||
queue-microtask@1.2.3: {}
|
queue-microtask@1.2.3: {}
|
||||||
|
|
||||||
rambda@7.5.0: {}
|
rambda@7.5.0: {}
|
||||||
@ -11159,6 +11560,9 @@ snapshots:
|
|||||||
|
|
||||||
requireindex@1.1.0: {}
|
requireindex@1.1.0: {}
|
||||||
|
|
||||||
|
requires-port@1.0.0:
|
||||||
|
optional: true
|
||||||
|
|
||||||
resolve-from@4.0.0: {}
|
resolve-from@4.0.0: {}
|
||||||
|
|
||||||
resolve-from@5.0.0: {}
|
resolve-from@5.0.0: {}
|
||||||
@ -11431,10 +11835,16 @@ snapshots:
|
|||||||
|
|
||||||
stackback@0.0.2: {}
|
stackback@0.0.2: {}
|
||||||
|
|
||||||
|
statuses@2.0.1:
|
||||||
|
optional: true
|
||||||
|
|
||||||
std-env@3.8.0: {}
|
std-env@3.8.0: {}
|
||||||
|
|
||||||
streamsearch@1.1.0: {}
|
streamsearch@1.1.0: {}
|
||||||
|
|
||||||
|
strict-event-emitter@0.5.1:
|
||||||
|
optional: true
|
||||||
|
|
||||||
string-argv@0.3.2: {}
|
string-argv@0.3.2: {}
|
||||||
|
|
||||||
string-env-interpolation@1.0.1: {}
|
string-env-interpolation@1.0.1: {}
|
||||||
@ -11653,6 +12063,14 @@ snapshots:
|
|||||||
dependencies:
|
dependencies:
|
||||||
is-number: 7.0.0
|
is-number: 7.0.0
|
||||||
|
|
||||||
|
tough-cookie@4.1.4:
|
||||||
|
dependencies:
|
||||||
|
psl: 1.15.0
|
||||||
|
punycode: 2.3.1
|
||||||
|
universalify: 0.2.0
|
||||||
|
url-parse: 1.5.10
|
||||||
|
optional: true
|
||||||
|
|
||||||
tough-cookie@5.0.0:
|
tough-cookie@5.0.0:
|
||||||
dependencies:
|
dependencies:
|
||||||
tldts: 6.1.66
|
tldts: 6.1.66
|
||||||
@ -11742,6 +12160,9 @@ snapshots:
|
|||||||
|
|
||||||
type-fest@0.8.1: {}
|
type-fest@0.8.1: {}
|
||||||
|
|
||||||
|
type-fest@4.30.2:
|
||||||
|
optional: true
|
||||||
|
|
||||||
typed-array-buffer@1.0.2:
|
typed-array-buffer@1.0.2:
|
||||||
dependencies:
|
dependencies:
|
||||||
call-bind: 1.0.7
|
call-bind: 1.0.7
|
||||||
@ -11801,6 +12222,9 @@ snapshots:
|
|||||||
|
|
||||||
unicode-property-aliases-ecmascript@2.1.0: {}
|
unicode-property-aliases-ecmascript@2.1.0: {}
|
||||||
|
|
||||||
|
universalify@0.2.0:
|
||||||
|
optional: true
|
||||||
|
|
||||||
unixify@1.0.0:
|
unixify@1.0.0:
|
||||||
dependencies:
|
dependencies:
|
||||||
normalize-path: 2.1.1
|
normalize-path: 2.1.1
|
||||||
@ -11823,10 +12247,20 @@ snapshots:
|
|||||||
dependencies:
|
dependencies:
|
||||||
punycode: 2.3.1
|
punycode: 2.3.1
|
||||||
|
|
||||||
|
url-parse@1.5.10:
|
||||||
|
dependencies:
|
||||||
|
querystringify: 2.2.0
|
||||||
|
requires-port: 1.0.0
|
||||||
|
optional: true
|
||||||
|
|
||||||
urlpattern-polyfill@10.0.0: {}
|
urlpattern-polyfill@10.0.0: {}
|
||||||
|
|
||||||
urlpattern-polyfill@8.0.2: {}
|
urlpattern-polyfill@8.0.2: {}
|
||||||
|
|
||||||
|
use-debounce@10.0.4(react@19.0.0):
|
||||||
|
dependencies:
|
||||||
|
react: 19.0.0
|
||||||
|
|
||||||
use-intl@3.26.0(react@19.0.0):
|
use-intl@3.26.0(react@19.0.0):
|
||||||
dependencies:
|
dependencies:
|
||||||
'@formatjs/fast-memoize': 2.2.5
|
'@formatjs/fast-memoize': 2.2.5
|
||||||
@ -11882,10 +12316,10 @@ snapshots:
|
|||||||
'@types/node': 20.17.8
|
'@types/node': 20.17.8
|
||||||
fsevents: 2.3.3
|
fsevents: 2.3.3
|
||||||
|
|
||||||
vitest@2.1.8(@types/node@20.17.8)(jsdom@25.0.1):
|
vitest@2.1.8(@types/node@20.17.8)(jsdom@25.0.1)(msw@2.7.0(@types/node@20.17.8)(typescript@5.7.2)):
|
||||||
dependencies:
|
dependencies:
|
||||||
'@vitest/expect': 2.1.8
|
'@vitest/expect': 2.1.8
|
||||||
'@vitest/mocker': 2.1.8(vite@5.4.11(@types/node@20.17.8))
|
'@vitest/mocker': 2.1.8(msw@2.7.0(@types/node@20.17.8)(typescript@5.7.2))(vite@5.4.11(@types/node@20.17.8))
|
||||||
'@vitest/pretty-format': 2.1.8
|
'@vitest/pretty-format': 2.1.8
|
||||||
'@vitest/runner': 2.1.8
|
'@vitest/runner': 2.1.8
|
||||||
'@vitest/snapshot': 2.1.8
|
'@vitest/snapshot': 2.1.8
|
||||||
@ -12099,6 +12533,9 @@ snapshots:
|
|||||||
|
|
||||||
yocto-queue@0.1.0: {}
|
yocto-queue@0.1.0: {}
|
||||||
|
|
||||||
|
yoctocolors-cjs@2.1.2:
|
||||||
|
optional: true
|
||||||
|
|
||||||
zen-observable-ts@1.2.5:
|
zen-observable-ts@1.2.5:
|
||||||
dependencies:
|
dependencies:
|
||||||
zen-observable: 0.8.15
|
zen-observable: 0.8.15
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user