app/web: handle update profile name

This commit is contained in:
vchikalkin 2025-01-06 17:59:44 +03:00
parent 6570233b4c
commit 702fc131de
9 changed files with 525 additions and 433 deletions

View File

@ -1,11 +1,28 @@
'use server';
import { authOptions } from '@/config/auth';
import { getCustomer, updateCustomerProfile } from '@repo/graphql/api';
import { type CustomerInput } from '@repo/graphql/types';
import { getServerSession } from 'next-auth/next';
import { revalidatePath } from 'next/cache';
export async function becomeMaster() {
revalidatePath('/profile');
}
export async function updateName() {
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');
}

View File

@ -1,5 +1,4 @@
/* eslint-disable sonarjs/different-types-comparison */
import { becomeMaster, updateName } from '@/actions/profile';
import { becomeMaster, updateProfile } from '@/actions/profile';
import { ProfileField } from '@/components/profile/profile-field';
import { authOptions } from '@/config/auth';
import { getCustomer } from '@repo/graphql/api';
@ -14,6 +13,8 @@ export default async function ProfilePage() {
const user = data.customers.at(0);
const photoUrl = user?.photoUrl ?? 'https://github.com/shadcn.png';
if (!user) return 'Профиль не найден';
return (
<div className="mx-auto h-screen max-w-md">
<Card>
@ -25,7 +26,13 @@ export default async function ProfilePage() {
<h2 className="text-2xl font-bold">{user?.name}</h2>
</CardHeader>
<CardContent className="space-y-4">
<ProfileField id="name" label="Имя" onChange={updateName} value={user?.name ?? ''} />
<ProfileField
fieldName="name"
id="name"
label="Имя"
onChange={updateProfile}
value={user?.name ?? ''}
/>
<ProfileField disabled id="phone" label="Телефон" value={user?.phone ?? ''} />
<ProfileField
disabled

View File

@ -1,34 +1,50 @@
/* 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, useState, useTransition } from 'react';
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: string) => void;
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 [isPending, startTransition] = useTransition();
const [isPending, setIsPending] = useState(false);
const debouncedCallback = useDebouncedCallback((newValue: string) => {
if (!onChange || !fieldName) return;
setIsPending(true);
const result = onChange({ [fieldName]: newValue });
if (result instanceof Promise) {
result.finally(() => setIsPending(false));
} else {
setIsPending(false);
}
}, 300);
const inputRef = useFocus(isPending);
const handleChange = (event: ChangeEvent<HTMLInputElement>) => {
const newValue = event.target.value;
setValue(newValue);
if (onChange) {
startTransition(() => {
onChange(newValue);
});
}
debouncedCallback(newValue);
};
return (
@ -39,8 +55,20 @@ export function ProfileField({
disabled={disabled || isPending}
id={id}
onChange={handleChange}
ref={inputRef}
value={value}
/>
</div>
);
}
function useFocus(isPending: boolean) {
const inputRef = useRef<HTMLInputElement | null>(null);
useEffect(() => {
if (inputRef.current) {
inputRef.current.focus();
}
}, [isPending]);
return inputRef;
}

View File

@ -24,6 +24,7 @@
"next-themes": "^0.4.4",
"react": "catalog:",
"react-dom": "catalog:",
"use-debounce": "^10.0.4",
"zod": "catalog:"
},
"devDependencies": {

View File

@ -19,3 +19,12 @@ export async function getCustomer(variables: GQL.GetCustomerQueryVariables) {
variables,
});
}
export async function updateCustomerProfile(variables: GQL.UpdateCustomerProfileMutationVariables) {
const { mutate } = await getClientWithToken();
return mutate({
mutation: GQL.UpdateCustomerProfileDocument,
variables,
});
}

View File

@ -4,9 +4,10 @@ module.exports = {
generates: {
'./types/operations.generated.ts': {
config: {
avoidOptionals: true,
avoidOptionals: false,
onlyOperationTypes: true,
useTypeImports: true,
maybeValue: 'T | null | undefined'
},
plugins: ['typescript', 'typescript-operations', 'typed-document-node'],
},

View File

@ -1,22 +1,27 @@
fragment CustomerProfile on Customer {
active
documentId
name
phone
photoUrl
role
telegramId
}
mutation CreateCustomer($name: String!, $telegramId: Long!, $phone: String!) {
createCustomer(data: { name: $name, telegramId: $telegramId, phone: $phone, role: client }) {
documentId
name
telegramId
phone
role
active
createdAt
updatedAt
publishedAt
...CustomerProfile
}
}
query GetCustomer($telegramId: Long!) {
customers(filters: { telegramId: { eq: $telegramId } }) {
name
phone
role
photoUrl
...CustomerProfile
}
}
mutation UpdateCustomerProfile($documentId: ID!, $data: CustomerInput!) {
updateCustomer(documentId: $documentId, data: $data) {
...CustomerProfile
}
}

View File

@ -1,6 +1,6 @@
import type { TypedDocumentNode as DocumentNode } from '@graphql-typed-document-node/core';
export type Maybe<T> = T | null;
export type InputMaybe<T> = Maybe<T>;
export type Maybe<T> = T | null | undefined;
export type InputMaybe<T> = T | null | undefined;
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 MakeMaybe<T, K extends keyof T> = Omit<T, K> & { [SubKey in K]: Maybe<T[SubKey]> };
@ -19,121 +19,121 @@ export type Scalars = {
};
export type BlockFiltersInput = {
and: InputMaybe<Array<InputMaybe<BlockFiltersInput>>>;
client: InputMaybe<CustomerFiltersInput>;
createdAt: InputMaybe<DateTimeFilterInput>;
dateend: InputMaybe<DateTimeFilterInput>;
datestart: InputMaybe<DateTimeFilterInput>;
documentId: InputMaybe<IdFilterInput>;
master: InputMaybe<CustomerFiltersInput>;
not: InputMaybe<BlockFiltersInput>;
or: InputMaybe<Array<InputMaybe<BlockFiltersInput>>>;
orders: InputMaybe<OrderFiltersInput>;
publishedAt: InputMaybe<DateTimeFilterInput>;
sessionsCompleted: InputMaybe<IntFilterInput>;
sessionsTotal: InputMaybe<IntFilterInput>;
state: InputMaybe<StringFilterInput>;
updatedAt: InputMaybe<DateTimeFilterInput>;
and?: InputMaybe<Array<InputMaybe<BlockFiltersInput>>>;
client?: InputMaybe<CustomerFiltersInput>;
createdAt?: InputMaybe<DateTimeFilterInput>;
dateend?: InputMaybe<DateTimeFilterInput>;
datestart?: InputMaybe<DateTimeFilterInput>;
documentId?: InputMaybe<IdFilterInput>;
master?: InputMaybe<CustomerFiltersInput>;
not?: InputMaybe<BlockFiltersInput>;
or?: InputMaybe<Array<InputMaybe<BlockFiltersInput>>>;
orders?: InputMaybe<OrderFiltersInput>;
publishedAt?: InputMaybe<DateTimeFilterInput>;
sessionsCompleted?: InputMaybe<IntFilterInput>;
sessionsTotal?: InputMaybe<IntFilterInput>;
state?: InputMaybe<StringFilterInput>;
updatedAt?: InputMaybe<DateTimeFilterInput>;
};
export type BlockInput = {
client: InputMaybe<Scalars['ID']['input']>;
dateend: InputMaybe<Scalars['DateTime']['input']>;
datestart: InputMaybe<Scalars['DateTime']['input']>;
master: InputMaybe<Scalars['ID']['input']>;
orders: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
publishedAt: InputMaybe<Scalars['DateTime']['input']>;
sessionsCompleted: InputMaybe<Scalars['Int']['input']>;
sessionsTotal: InputMaybe<Scalars['Int']['input']>;
state: InputMaybe<Enum_Block_State>;
client?: InputMaybe<Scalars['ID']['input']>;
dateend?: InputMaybe<Scalars['DateTime']['input']>;
datestart?: InputMaybe<Scalars['DateTime']['input']>;
master?: InputMaybe<Scalars['ID']['input']>;
orders?: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
publishedAt?: InputMaybe<Scalars['DateTime']['input']>;
sessionsCompleted?: InputMaybe<Scalars['Int']['input']>;
sessionsTotal?: InputMaybe<Scalars['Int']['input']>;
state?: InputMaybe<Enum_Block_State>;
};
export type BooleanFilterInput = {
and: InputMaybe<Array<InputMaybe<Scalars['Boolean']['input']>>>;
between: InputMaybe<Array<InputMaybe<Scalars['Boolean']['input']>>>;
contains: InputMaybe<Scalars['Boolean']['input']>;
containsi: InputMaybe<Scalars['Boolean']['input']>;
endsWith: InputMaybe<Scalars['Boolean']['input']>;
eq: InputMaybe<Scalars['Boolean']['input']>;
eqi: InputMaybe<Scalars['Boolean']['input']>;
gt: InputMaybe<Scalars['Boolean']['input']>;
gte: InputMaybe<Scalars['Boolean']['input']>;
in: InputMaybe<Array<InputMaybe<Scalars['Boolean']['input']>>>;
lt: InputMaybe<Scalars['Boolean']['input']>;
lte: InputMaybe<Scalars['Boolean']['input']>;
ne: InputMaybe<Scalars['Boolean']['input']>;
nei: InputMaybe<Scalars['Boolean']['input']>;
not: InputMaybe<BooleanFilterInput>;
notContains: InputMaybe<Scalars['Boolean']['input']>;
notContainsi: InputMaybe<Scalars['Boolean']['input']>;
notIn: InputMaybe<Array<InputMaybe<Scalars['Boolean']['input']>>>;
notNull: InputMaybe<Scalars['Boolean']['input']>;
null: InputMaybe<Scalars['Boolean']['input']>;
or: InputMaybe<Array<InputMaybe<Scalars['Boolean']['input']>>>;
startsWith: InputMaybe<Scalars['Boolean']['input']>;
and?: InputMaybe<Array<InputMaybe<Scalars['Boolean']['input']>>>;
between?: InputMaybe<Array<InputMaybe<Scalars['Boolean']['input']>>>;
contains?: InputMaybe<Scalars['Boolean']['input']>;
containsi?: InputMaybe<Scalars['Boolean']['input']>;
endsWith?: InputMaybe<Scalars['Boolean']['input']>;
eq?: InputMaybe<Scalars['Boolean']['input']>;
eqi?: InputMaybe<Scalars['Boolean']['input']>;
gt?: InputMaybe<Scalars['Boolean']['input']>;
gte?: InputMaybe<Scalars['Boolean']['input']>;
in?: InputMaybe<Array<InputMaybe<Scalars['Boolean']['input']>>>;
lt?: InputMaybe<Scalars['Boolean']['input']>;
lte?: InputMaybe<Scalars['Boolean']['input']>;
ne?: InputMaybe<Scalars['Boolean']['input']>;
nei?: InputMaybe<Scalars['Boolean']['input']>;
not?: InputMaybe<BooleanFilterInput>;
notContains?: InputMaybe<Scalars['Boolean']['input']>;
notContainsi?: InputMaybe<Scalars['Boolean']['input']>;
notIn?: InputMaybe<Array<InputMaybe<Scalars['Boolean']['input']>>>;
notNull?: InputMaybe<Scalars['Boolean']['input']>;
null?: InputMaybe<Scalars['Boolean']['input']>;
or?: InputMaybe<Array<InputMaybe<Scalars['Boolean']['input']>>>;
startsWith?: InputMaybe<Scalars['Boolean']['input']>;
};
export type CustomerFiltersInput = {
active: InputMaybe<BooleanFilterInput>;
and: InputMaybe<Array<InputMaybe<CustomerFiltersInput>>>;
blocks: InputMaybe<BlockFiltersInput>;
clients: InputMaybe<CustomerFiltersInput>;
createdAt: InputMaybe<DateTimeFilterInput>;
documentId: InputMaybe<IdFilterInput>;
masters: InputMaybe<CustomerFiltersInput>;
name: InputMaybe<StringFilterInput>;
not: InputMaybe<CustomerFiltersInput>;
or: InputMaybe<Array<InputMaybe<CustomerFiltersInput>>>;
orders: InputMaybe<OrderFiltersInput>;
phone: InputMaybe<StringFilterInput>;
photoUrl: InputMaybe<StringFilterInput>;
publishedAt: InputMaybe<DateTimeFilterInput>;
role: InputMaybe<StringFilterInput>;
setting: InputMaybe<SettingFiltersInput>;
slots: InputMaybe<SlotFiltersInput>;
telegramId: InputMaybe<LongFilterInput>;
updatedAt: InputMaybe<DateTimeFilterInput>;
active?: InputMaybe<BooleanFilterInput>;
and?: InputMaybe<Array<InputMaybe<CustomerFiltersInput>>>;
blocks?: InputMaybe<BlockFiltersInput>;
clients?: InputMaybe<CustomerFiltersInput>;
createdAt?: InputMaybe<DateTimeFilterInput>;
documentId?: InputMaybe<IdFilterInput>;
masters?: InputMaybe<CustomerFiltersInput>;
name?: InputMaybe<StringFilterInput>;
not?: InputMaybe<CustomerFiltersInput>;
or?: InputMaybe<Array<InputMaybe<CustomerFiltersInput>>>;
orders?: InputMaybe<OrderFiltersInput>;
phone?: InputMaybe<StringFilterInput>;
photoUrl?: InputMaybe<StringFilterInput>;
publishedAt?: InputMaybe<DateTimeFilterInput>;
role?: InputMaybe<StringFilterInput>;
setting?: InputMaybe<SettingFiltersInput>;
slots?: InputMaybe<SlotFiltersInput>;
telegramId?: InputMaybe<LongFilterInput>;
updatedAt?: InputMaybe<DateTimeFilterInput>;
};
export type CustomerInput = {
active: InputMaybe<Scalars['Boolean']['input']>;
blocks: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
clients: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
masters: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
name: InputMaybe<Scalars['String']['input']>;
orders: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
phone: InputMaybe<Scalars['String']['input']>;
photoUrl: InputMaybe<Scalars['String']['input']>;
publishedAt: InputMaybe<Scalars['DateTime']['input']>;
role: InputMaybe<Enum_Customer_Role>;
setting: InputMaybe<Scalars['ID']['input']>;
slots: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
telegramId: InputMaybe<Scalars['Long']['input']>;
active?: InputMaybe<Scalars['Boolean']['input']>;
blocks?: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
clients?: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
masters?: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
name?: InputMaybe<Scalars['String']['input']>;
orders?: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
phone?: InputMaybe<Scalars['String']['input']>;
photoUrl?: InputMaybe<Scalars['String']['input']>;
publishedAt?: InputMaybe<Scalars['DateTime']['input']>;
role?: InputMaybe<Enum_Customer_Role>;
setting?: InputMaybe<Scalars['ID']['input']>;
slots?: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
telegramId?: InputMaybe<Scalars['Long']['input']>;
};
export type DateTimeFilterInput = {
and: InputMaybe<Array<InputMaybe<Scalars['DateTime']['input']>>>;
between: InputMaybe<Array<InputMaybe<Scalars['DateTime']['input']>>>;
contains: InputMaybe<Scalars['DateTime']['input']>;
containsi: InputMaybe<Scalars['DateTime']['input']>;
endsWith: InputMaybe<Scalars['DateTime']['input']>;
eq: InputMaybe<Scalars['DateTime']['input']>;
eqi: InputMaybe<Scalars['DateTime']['input']>;
gt: InputMaybe<Scalars['DateTime']['input']>;
gte: InputMaybe<Scalars['DateTime']['input']>;
in: InputMaybe<Array<InputMaybe<Scalars['DateTime']['input']>>>;
lt: InputMaybe<Scalars['DateTime']['input']>;
lte: InputMaybe<Scalars['DateTime']['input']>;
ne: InputMaybe<Scalars['DateTime']['input']>;
nei: InputMaybe<Scalars['DateTime']['input']>;
not: InputMaybe<DateTimeFilterInput>;
notContains: InputMaybe<Scalars['DateTime']['input']>;
notContainsi: InputMaybe<Scalars['DateTime']['input']>;
notIn: InputMaybe<Array<InputMaybe<Scalars['DateTime']['input']>>>;
notNull: InputMaybe<Scalars['Boolean']['input']>;
null: InputMaybe<Scalars['Boolean']['input']>;
or: InputMaybe<Array<InputMaybe<Scalars['DateTime']['input']>>>;
startsWith: InputMaybe<Scalars['DateTime']['input']>;
and?: InputMaybe<Array<InputMaybe<Scalars['DateTime']['input']>>>;
between?: InputMaybe<Array<InputMaybe<Scalars['DateTime']['input']>>>;
contains?: InputMaybe<Scalars['DateTime']['input']>;
containsi?: InputMaybe<Scalars['DateTime']['input']>;
endsWith?: InputMaybe<Scalars['DateTime']['input']>;
eq?: InputMaybe<Scalars['DateTime']['input']>;
eqi?: InputMaybe<Scalars['DateTime']['input']>;
gt?: InputMaybe<Scalars['DateTime']['input']>;
gte?: InputMaybe<Scalars['DateTime']['input']>;
in?: InputMaybe<Array<InputMaybe<Scalars['DateTime']['input']>>>;
lt?: InputMaybe<Scalars['DateTime']['input']>;
lte?: InputMaybe<Scalars['DateTime']['input']>;
ne?: InputMaybe<Scalars['DateTime']['input']>;
nei?: InputMaybe<Scalars['DateTime']['input']>;
not?: InputMaybe<DateTimeFilterInput>;
notContains?: InputMaybe<Scalars['DateTime']['input']>;
notContainsi?: InputMaybe<Scalars['DateTime']['input']>;
notIn?: InputMaybe<Array<InputMaybe<Scalars['DateTime']['input']>>>;
notNull?: InputMaybe<Scalars['Boolean']['input']>;
null?: InputMaybe<Scalars['Boolean']['input']>;
or?: InputMaybe<Array<InputMaybe<Scalars['DateTime']['input']>>>;
startsWith?: InputMaybe<Scalars['DateTime']['input']>;
};
export enum Enum_Block_State {
@ -162,179 +162,179 @@ export enum Enum_Slot_State {
}
export type FileInfoInput = {
alternativeText: InputMaybe<Scalars['String']['input']>;
caption: InputMaybe<Scalars['String']['input']>;
name: InputMaybe<Scalars['String']['input']>;
alternativeText?: InputMaybe<Scalars['String']['input']>;
caption?: InputMaybe<Scalars['String']['input']>;
name?: InputMaybe<Scalars['String']['input']>;
};
export type FloatFilterInput = {
and: InputMaybe<Array<InputMaybe<Scalars['Float']['input']>>>;
between: InputMaybe<Array<InputMaybe<Scalars['Float']['input']>>>;
contains: InputMaybe<Scalars['Float']['input']>;
containsi: InputMaybe<Scalars['Float']['input']>;
endsWith: InputMaybe<Scalars['Float']['input']>;
eq: InputMaybe<Scalars['Float']['input']>;
eqi: InputMaybe<Scalars['Float']['input']>;
gt: InputMaybe<Scalars['Float']['input']>;
gte: InputMaybe<Scalars['Float']['input']>;
in: InputMaybe<Array<InputMaybe<Scalars['Float']['input']>>>;
lt: InputMaybe<Scalars['Float']['input']>;
lte: InputMaybe<Scalars['Float']['input']>;
ne: InputMaybe<Scalars['Float']['input']>;
nei: InputMaybe<Scalars['Float']['input']>;
not: InputMaybe<FloatFilterInput>;
notContains: InputMaybe<Scalars['Float']['input']>;
notContainsi: InputMaybe<Scalars['Float']['input']>;
notIn: InputMaybe<Array<InputMaybe<Scalars['Float']['input']>>>;
notNull: InputMaybe<Scalars['Boolean']['input']>;
null: InputMaybe<Scalars['Boolean']['input']>;
or: InputMaybe<Array<InputMaybe<Scalars['Float']['input']>>>;
startsWith: InputMaybe<Scalars['Float']['input']>;
and?: InputMaybe<Array<InputMaybe<Scalars['Float']['input']>>>;
between?: InputMaybe<Array<InputMaybe<Scalars['Float']['input']>>>;
contains?: InputMaybe<Scalars['Float']['input']>;
containsi?: InputMaybe<Scalars['Float']['input']>;
endsWith?: InputMaybe<Scalars['Float']['input']>;
eq?: InputMaybe<Scalars['Float']['input']>;
eqi?: InputMaybe<Scalars['Float']['input']>;
gt?: InputMaybe<Scalars['Float']['input']>;
gte?: InputMaybe<Scalars['Float']['input']>;
in?: InputMaybe<Array<InputMaybe<Scalars['Float']['input']>>>;
lt?: InputMaybe<Scalars['Float']['input']>;
lte?: InputMaybe<Scalars['Float']['input']>;
ne?: InputMaybe<Scalars['Float']['input']>;
nei?: InputMaybe<Scalars['Float']['input']>;
not?: InputMaybe<FloatFilterInput>;
notContains?: InputMaybe<Scalars['Float']['input']>;
notContainsi?: InputMaybe<Scalars['Float']['input']>;
notIn?: InputMaybe<Array<InputMaybe<Scalars['Float']['input']>>>;
notNull?: InputMaybe<Scalars['Boolean']['input']>;
null?: InputMaybe<Scalars['Boolean']['input']>;
or?: InputMaybe<Array<InputMaybe<Scalars['Float']['input']>>>;
startsWith?: InputMaybe<Scalars['Float']['input']>;
};
export type I18NLocaleFiltersInput = {
and: InputMaybe<Array<InputMaybe<I18NLocaleFiltersInput>>>;
code: InputMaybe<StringFilterInput>;
createdAt: InputMaybe<DateTimeFilterInput>;
documentId: InputMaybe<IdFilterInput>;
name: InputMaybe<StringFilterInput>;
not: InputMaybe<I18NLocaleFiltersInput>;
or: InputMaybe<Array<InputMaybe<I18NLocaleFiltersInput>>>;
publishedAt: InputMaybe<DateTimeFilterInput>;
updatedAt: InputMaybe<DateTimeFilterInput>;
and?: InputMaybe<Array<InputMaybe<I18NLocaleFiltersInput>>>;
code?: InputMaybe<StringFilterInput>;
createdAt?: InputMaybe<DateTimeFilterInput>;
documentId?: InputMaybe<IdFilterInput>;
name?: InputMaybe<StringFilterInput>;
not?: InputMaybe<I18NLocaleFiltersInput>;
or?: InputMaybe<Array<InputMaybe<I18NLocaleFiltersInput>>>;
publishedAt?: InputMaybe<DateTimeFilterInput>;
updatedAt?: InputMaybe<DateTimeFilterInput>;
};
export type IdFilterInput = {
and: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
between: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
contains: InputMaybe<Scalars['ID']['input']>;
containsi: InputMaybe<Scalars['ID']['input']>;
endsWith: InputMaybe<Scalars['ID']['input']>;
eq: InputMaybe<Scalars['ID']['input']>;
eqi: InputMaybe<Scalars['ID']['input']>;
gt: InputMaybe<Scalars['ID']['input']>;
gte: InputMaybe<Scalars['ID']['input']>;
in: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
lt: InputMaybe<Scalars['ID']['input']>;
lte: InputMaybe<Scalars['ID']['input']>;
ne: InputMaybe<Scalars['ID']['input']>;
nei: InputMaybe<Scalars['ID']['input']>;
not: InputMaybe<IdFilterInput>;
notContains: InputMaybe<Scalars['ID']['input']>;
notContainsi: InputMaybe<Scalars['ID']['input']>;
notIn: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
notNull: InputMaybe<Scalars['Boolean']['input']>;
null: InputMaybe<Scalars['Boolean']['input']>;
or: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
startsWith: InputMaybe<Scalars['ID']['input']>;
and?: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
between?: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
contains?: InputMaybe<Scalars['ID']['input']>;
containsi?: InputMaybe<Scalars['ID']['input']>;
endsWith?: InputMaybe<Scalars['ID']['input']>;
eq?: InputMaybe<Scalars['ID']['input']>;
eqi?: InputMaybe<Scalars['ID']['input']>;
gt?: InputMaybe<Scalars['ID']['input']>;
gte?: InputMaybe<Scalars['ID']['input']>;
in?: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
lt?: InputMaybe<Scalars['ID']['input']>;
lte?: InputMaybe<Scalars['ID']['input']>;
ne?: InputMaybe<Scalars['ID']['input']>;
nei?: InputMaybe<Scalars['ID']['input']>;
not?: InputMaybe<IdFilterInput>;
notContains?: InputMaybe<Scalars['ID']['input']>;
notContainsi?: InputMaybe<Scalars['ID']['input']>;
notIn?: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
notNull?: InputMaybe<Scalars['Boolean']['input']>;
null?: InputMaybe<Scalars['Boolean']['input']>;
or?: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
startsWith?: InputMaybe<Scalars['ID']['input']>;
};
export type IntFilterInput = {
and: InputMaybe<Array<InputMaybe<Scalars['Int']['input']>>>;
between: InputMaybe<Array<InputMaybe<Scalars['Int']['input']>>>;
contains: InputMaybe<Scalars['Int']['input']>;
containsi: InputMaybe<Scalars['Int']['input']>;
endsWith: InputMaybe<Scalars['Int']['input']>;
eq: InputMaybe<Scalars['Int']['input']>;
eqi: InputMaybe<Scalars['Int']['input']>;
gt: InputMaybe<Scalars['Int']['input']>;
gte: InputMaybe<Scalars['Int']['input']>;
in: InputMaybe<Array<InputMaybe<Scalars['Int']['input']>>>;
lt: InputMaybe<Scalars['Int']['input']>;
lte: InputMaybe<Scalars['Int']['input']>;
ne: InputMaybe<Scalars['Int']['input']>;
nei: InputMaybe<Scalars['Int']['input']>;
not: InputMaybe<IntFilterInput>;
notContains: InputMaybe<Scalars['Int']['input']>;
notContainsi: InputMaybe<Scalars['Int']['input']>;
notIn: InputMaybe<Array<InputMaybe<Scalars['Int']['input']>>>;
notNull: InputMaybe<Scalars['Boolean']['input']>;
null: InputMaybe<Scalars['Boolean']['input']>;
or: InputMaybe<Array<InputMaybe<Scalars['Int']['input']>>>;
startsWith: InputMaybe<Scalars['Int']['input']>;
and?: InputMaybe<Array<InputMaybe<Scalars['Int']['input']>>>;
between?: InputMaybe<Array<InputMaybe<Scalars['Int']['input']>>>;
contains?: InputMaybe<Scalars['Int']['input']>;
containsi?: InputMaybe<Scalars['Int']['input']>;
endsWith?: InputMaybe<Scalars['Int']['input']>;
eq?: InputMaybe<Scalars['Int']['input']>;
eqi?: InputMaybe<Scalars['Int']['input']>;
gt?: InputMaybe<Scalars['Int']['input']>;
gte?: InputMaybe<Scalars['Int']['input']>;
in?: InputMaybe<Array<InputMaybe<Scalars['Int']['input']>>>;
lt?: InputMaybe<Scalars['Int']['input']>;
lte?: InputMaybe<Scalars['Int']['input']>;
ne?: InputMaybe<Scalars['Int']['input']>;
nei?: InputMaybe<Scalars['Int']['input']>;
not?: InputMaybe<IntFilterInput>;
notContains?: InputMaybe<Scalars['Int']['input']>;
notContainsi?: InputMaybe<Scalars['Int']['input']>;
notIn?: InputMaybe<Array<InputMaybe<Scalars['Int']['input']>>>;
notNull?: InputMaybe<Scalars['Boolean']['input']>;
null?: InputMaybe<Scalars['Boolean']['input']>;
or?: InputMaybe<Array<InputMaybe<Scalars['Int']['input']>>>;
startsWith?: InputMaybe<Scalars['Int']['input']>;
};
export type JsonFilterInput = {
and: InputMaybe<Array<InputMaybe<Scalars['JSON']['input']>>>;
between: InputMaybe<Array<InputMaybe<Scalars['JSON']['input']>>>;
contains: InputMaybe<Scalars['JSON']['input']>;
containsi: InputMaybe<Scalars['JSON']['input']>;
endsWith: InputMaybe<Scalars['JSON']['input']>;
eq: InputMaybe<Scalars['JSON']['input']>;
eqi: InputMaybe<Scalars['JSON']['input']>;
gt: InputMaybe<Scalars['JSON']['input']>;
gte: InputMaybe<Scalars['JSON']['input']>;
in: InputMaybe<Array<InputMaybe<Scalars['JSON']['input']>>>;
lt: InputMaybe<Scalars['JSON']['input']>;
lte: InputMaybe<Scalars['JSON']['input']>;
ne: InputMaybe<Scalars['JSON']['input']>;
nei: InputMaybe<Scalars['JSON']['input']>;
not: InputMaybe<JsonFilterInput>;
notContains: InputMaybe<Scalars['JSON']['input']>;
notContainsi: InputMaybe<Scalars['JSON']['input']>;
notIn: InputMaybe<Array<InputMaybe<Scalars['JSON']['input']>>>;
notNull: InputMaybe<Scalars['Boolean']['input']>;
null: InputMaybe<Scalars['Boolean']['input']>;
or: InputMaybe<Array<InputMaybe<Scalars['JSON']['input']>>>;
startsWith: InputMaybe<Scalars['JSON']['input']>;
and?: InputMaybe<Array<InputMaybe<Scalars['JSON']['input']>>>;
between?: InputMaybe<Array<InputMaybe<Scalars['JSON']['input']>>>;
contains?: InputMaybe<Scalars['JSON']['input']>;
containsi?: InputMaybe<Scalars['JSON']['input']>;
endsWith?: InputMaybe<Scalars['JSON']['input']>;
eq?: InputMaybe<Scalars['JSON']['input']>;
eqi?: InputMaybe<Scalars['JSON']['input']>;
gt?: InputMaybe<Scalars['JSON']['input']>;
gte?: InputMaybe<Scalars['JSON']['input']>;
in?: InputMaybe<Array<InputMaybe<Scalars['JSON']['input']>>>;
lt?: InputMaybe<Scalars['JSON']['input']>;
lte?: InputMaybe<Scalars['JSON']['input']>;
ne?: InputMaybe<Scalars['JSON']['input']>;
nei?: InputMaybe<Scalars['JSON']['input']>;
not?: InputMaybe<JsonFilterInput>;
notContains?: InputMaybe<Scalars['JSON']['input']>;
notContainsi?: InputMaybe<Scalars['JSON']['input']>;
notIn?: InputMaybe<Array<InputMaybe<Scalars['JSON']['input']>>>;
notNull?: InputMaybe<Scalars['Boolean']['input']>;
null?: InputMaybe<Scalars['Boolean']['input']>;
or?: InputMaybe<Array<InputMaybe<Scalars['JSON']['input']>>>;
startsWith?: InputMaybe<Scalars['JSON']['input']>;
};
export type LongFilterInput = {
and: InputMaybe<Array<InputMaybe<Scalars['Long']['input']>>>;
between: InputMaybe<Array<InputMaybe<Scalars['Long']['input']>>>;
contains: InputMaybe<Scalars['Long']['input']>;
containsi: InputMaybe<Scalars['Long']['input']>;
endsWith: InputMaybe<Scalars['Long']['input']>;
eq: InputMaybe<Scalars['Long']['input']>;
eqi: InputMaybe<Scalars['Long']['input']>;
gt: InputMaybe<Scalars['Long']['input']>;
gte: InputMaybe<Scalars['Long']['input']>;
in: InputMaybe<Array<InputMaybe<Scalars['Long']['input']>>>;
lt: InputMaybe<Scalars['Long']['input']>;
lte: InputMaybe<Scalars['Long']['input']>;
ne: InputMaybe<Scalars['Long']['input']>;
nei: InputMaybe<Scalars['Long']['input']>;
not: InputMaybe<LongFilterInput>;
notContains: InputMaybe<Scalars['Long']['input']>;
notContainsi: InputMaybe<Scalars['Long']['input']>;
notIn: InputMaybe<Array<InputMaybe<Scalars['Long']['input']>>>;
notNull: InputMaybe<Scalars['Boolean']['input']>;
null: InputMaybe<Scalars['Boolean']['input']>;
or: InputMaybe<Array<InputMaybe<Scalars['Long']['input']>>>;
startsWith: InputMaybe<Scalars['Long']['input']>;
and?: InputMaybe<Array<InputMaybe<Scalars['Long']['input']>>>;
between?: InputMaybe<Array<InputMaybe<Scalars['Long']['input']>>>;
contains?: InputMaybe<Scalars['Long']['input']>;
containsi?: InputMaybe<Scalars['Long']['input']>;
endsWith?: InputMaybe<Scalars['Long']['input']>;
eq?: InputMaybe<Scalars['Long']['input']>;
eqi?: InputMaybe<Scalars['Long']['input']>;
gt?: InputMaybe<Scalars['Long']['input']>;
gte?: InputMaybe<Scalars['Long']['input']>;
in?: InputMaybe<Array<InputMaybe<Scalars['Long']['input']>>>;
lt?: InputMaybe<Scalars['Long']['input']>;
lte?: InputMaybe<Scalars['Long']['input']>;
ne?: InputMaybe<Scalars['Long']['input']>;
nei?: InputMaybe<Scalars['Long']['input']>;
not?: InputMaybe<LongFilterInput>;
notContains?: InputMaybe<Scalars['Long']['input']>;
notContainsi?: InputMaybe<Scalars['Long']['input']>;
notIn?: InputMaybe<Array<InputMaybe<Scalars['Long']['input']>>>;
notNull?: InputMaybe<Scalars['Boolean']['input']>;
null?: InputMaybe<Scalars['Boolean']['input']>;
or?: InputMaybe<Array<InputMaybe<Scalars['Long']['input']>>>;
startsWith?: InputMaybe<Scalars['Long']['input']>;
};
export type OrderFiltersInput = {
and: InputMaybe<Array<InputMaybe<OrderFiltersInput>>>;
block: InputMaybe<BlockFiltersInput>;
client: InputMaybe<CustomerFiltersInput>;
createdAt: InputMaybe<DateTimeFilterInput>;
documentId: InputMaybe<IdFilterInput>;
not: InputMaybe<OrderFiltersInput>;
or: InputMaybe<Array<InputMaybe<OrderFiltersInput>>>;
price: InputMaybe<IntFilterInput>;
publishedAt: InputMaybe<DateTimeFilterInput>;
service: InputMaybe<StringFilterInput>;
slot: InputMaybe<SlotFiltersInput>;
state: InputMaybe<StringFilterInput>;
updatedAt: InputMaybe<DateTimeFilterInput>;
and?: InputMaybe<Array<InputMaybe<OrderFiltersInput>>>;
block?: InputMaybe<BlockFiltersInput>;
client?: InputMaybe<CustomerFiltersInput>;
createdAt?: InputMaybe<DateTimeFilterInput>;
documentId?: InputMaybe<IdFilterInput>;
not?: InputMaybe<OrderFiltersInput>;
or?: InputMaybe<Array<InputMaybe<OrderFiltersInput>>>;
price?: InputMaybe<IntFilterInput>;
publishedAt?: InputMaybe<DateTimeFilterInput>;
service?: InputMaybe<StringFilterInput>;
slot?: InputMaybe<SlotFiltersInput>;
state?: InputMaybe<StringFilterInput>;
updatedAt?: InputMaybe<DateTimeFilterInput>;
};
export type OrderInput = {
block: InputMaybe<Scalars['ID']['input']>;
client: InputMaybe<Scalars['ID']['input']>;
price: InputMaybe<Scalars['Int']['input']>;
publishedAt: InputMaybe<Scalars['DateTime']['input']>;
service: InputMaybe<Scalars['String']['input']>;
slot: InputMaybe<Scalars['ID']['input']>;
state: InputMaybe<Enum_Order_State>;
block?: InputMaybe<Scalars['ID']['input']>;
client?: InputMaybe<Scalars['ID']['input']>;
price?: InputMaybe<Scalars['Int']['input']>;
publishedAt?: InputMaybe<Scalars['DateTime']['input']>;
service?: InputMaybe<Scalars['String']['input']>;
slot?: InputMaybe<Scalars['ID']['input']>;
state?: InputMaybe<Enum_Order_State>;
};
export type PaginationArg = {
limit: InputMaybe<Scalars['Int']['input']>;
page: InputMaybe<Scalars['Int']['input']>;
pageSize: InputMaybe<Scalars['Int']['input']>;
start: InputMaybe<Scalars['Int']['input']>;
limit?: InputMaybe<Scalars['Int']['input']>;
page?: InputMaybe<Scalars['Int']['input']>;
pageSize?: InputMaybe<Scalars['Int']['input']>;
start?: InputMaybe<Scalars['Int']['input']>;
};
export enum PublicationStatus {
@ -343,154 +343,154 @@ export enum PublicationStatus {
}
export type ReviewWorkflowsWorkflowFiltersInput = {
and: InputMaybe<Array<InputMaybe<ReviewWorkflowsWorkflowFiltersInput>>>;
contentTypes: InputMaybe<JsonFilterInput>;
createdAt: InputMaybe<DateTimeFilterInput>;
documentId: InputMaybe<IdFilterInput>;
name: InputMaybe<StringFilterInput>;
not: InputMaybe<ReviewWorkflowsWorkflowFiltersInput>;
or: InputMaybe<Array<InputMaybe<ReviewWorkflowsWorkflowFiltersInput>>>;
publishedAt: InputMaybe<DateTimeFilterInput>;
stageRequiredToPublish: InputMaybe<ReviewWorkflowsWorkflowStageFiltersInput>;
stages: InputMaybe<ReviewWorkflowsWorkflowStageFiltersInput>;
updatedAt: InputMaybe<DateTimeFilterInput>;
and?: InputMaybe<Array<InputMaybe<ReviewWorkflowsWorkflowFiltersInput>>>;
contentTypes?: InputMaybe<JsonFilterInput>;
createdAt?: InputMaybe<DateTimeFilterInput>;
documentId?: InputMaybe<IdFilterInput>;
name?: InputMaybe<StringFilterInput>;
not?: InputMaybe<ReviewWorkflowsWorkflowFiltersInput>;
or?: InputMaybe<Array<InputMaybe<ReviewWorkflowsWorkflowFiltersInput>>>;
publishedAt?: InputMaybe<DateTimeFilterInput>;
stageRequiredToPublish?: InputMaybe<ReviewWorkflowsWorkflowStageFiltersInput>;
stages?: InputMaybe<ReviewWorkflowsWorkflowStageFiltersInput>;
updatedAt?: InputMaybe<DateTimeFilterInput>;
};
export type ReviewWorkflowsWorkflowInput = {
contentTypes: InputMaybe<Scalars['JSON']['input']>;
name: InputMaybe<Scalars['String']['input']>;
publishedAt: InputMaybe<Scalars['DateTime']['input']>;
stageRequiredToPublish: InputMaybe<Scalars['ID']['input']>;
stages: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
contentTypes?: InputMaybe<Scalars['JSON']['input']>;
name?: InputMaybe<Scalars['String']['input']>;
publishedAt?: InputMaybe<Scalars['DateTime']['input']>;
stageRequiredToPublish?: InputMaybe<Scalars['ID']['input']>;
stages?: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
};
export type ReviewWorkflowsWorkflowStageFiltersInput = {
and: InputMaybe<Array<InputMaybe<ReviewWorkflowsWorkflowStageFiltersInput>>>;
color: InputMaybe<StringFilterInput>;
createdAt: InputMaybe<DateTimeFilterInput>;
documentId: InputMaybe<IdFilterInput>;
name: InputMaybe<StringFilterInput>;
not: InputMaybe<ReviewWorkflowsWorkflowStageFiltersInput>;
or: InputMaybe<Array<InputMaybe<ReviewWorkflowsWorkflowStageFiltersInput>>>;
publishedAt: InputMaybe<DateTimeFilterInput>;
updatedAt: InputMaybe<DateTimeFilterInput>;
workflow: InputMaybe<ReviewWorkflowsWorkflowFiltersInput>;
and?: InputMaybe<Array<InputMaybe<ReviewWorkflowsWorkflowStageFiltersInput>>>;
color?: InputMaybe<StringFilterInput>;
createdAt?: InputMaybe<DateTimeFilterInput>;
documentId?: InputMaybe<IdFilterInput>;
name?: InputMaybe<StringFilterInput>;
not?: InputMaybe<ReviewWorkflowsWorkflowStageFiltersInput>;
or?: InputMaybe<Array<InputMaybe<ReviewWorkflowsWorkflowStageFiltersInput>>>;
publishedAt?: InputMaybe<DateTimeFilterInput>;
updatedAt?: InputMaybe<DateTimeFilterInput>;
workflow?: InputMaybe<ReviewWorkflowsWorkflowFiltersInput>;
};
export type ReviewWorkflowsWorkflowStageInput = {
color: InputMaybe<Scalars['String']['input']>;
name: InputMaybe<Scalars['String']['input']>;
publishedAt: InputMaybe<Scalars['DateTime']['input']>;
workflow: InputMaybe<Scalars['ID']['input']>;
color?: InputMaybe<Scalars['String']['input']>;
name?: InputMaybe<Scalars['String']['input']>;
publishedAt?: InputMaybe<Scalars['DateTime']['input']>;
workflow?: InputMaybe<Scalars['ID']['input']>;
};
export type SettingFiltersInput = {
and: InputMaybe<Array<InputMaybe<SettingFiltersInput>>>;
createdAt: InputMaybe<DateTimeFilterInput>;
customer: InputMaybe<CustomerFiltersInput>;
documentId: InputMaybe<IdFilterInput>;
not: InputMaybe<SettingFiltersInput>;
or: InputMaybe<Array<InputMaybe<SettingFiltersInput>>>;
publishedAt: InputMaybe<DateTimeFilterInput>;
recordingByBlocks: InputMaybe<BooleanFilterInput>;
updatedAt: InputMaybe<DateTimeFilterInput>;
and?: InputMaybe<Array<InputMaybe<SettingFiltersInput>>>;
createdAt?: InputMaybe<DateTimeFilterInput>;
customer?: InputMaybe<CustomerFiltersInput>;
documentId?: InputMaybe<IdFilterInput>;
not?: InputMaybe<SettingFiltersInput>;
or?: InputMaybe<Array<InputMaybe<SettingFiltersInput>>>;
publishedAt?: InputMaybe<DateTimeFilterInput>;
recordingByBlocks?: InputMaybe<BooleanFilterInput>;
updatedAt?: InputMaybe<DateTimeFilterInput>;
};
export type SettingInput = {
customer: InputMaybe<Scalars['ID']['input']>;
publishedAt: InputMaybe<Scalars['DateTime']['input']>;
recordingByBlocks: InputMaybe<Scalars['Boolean']['input']>;
customer?: InputMaybe<Scalars['ID']['input']>;
publishedAt?: InputMaybe<Scalars['DateTime']['input']>;
recordingByBlocks?: InputMaybe<Scalars['Boolean']['input']>;
};
export type SlotFiltersInput = {
and: InputMaybe<Array<InputMaybe<SlotFiltersInput>>>;
createdAt: InputMaybe<DateTimeFilterInput>;
dateend: InputMaybe<DateTimeFilterInput>;
datestart: InputMaybe<DateTimeFilterInput>;
documentId: InputMaybe<IdFilterInput>;
master: InputMaybe<CustomerFiltersInput>;
not: InputMaybe<SlotFiltersInput>;
or: InputMaybe<Array<InputMaybe<SlotFiltersInput>>>;
orders: InputMaybe<OrderFiltersInput>;
publishedAt: InputMaybe<DateTimeFilterInput>;
state: InputMaybe<StringFilterInput>;
updatedAt: InputMaybe<DateTimeFilterInput>;
and?: InputMaybe<Array<InputMaybe<SlotFiltersInput>>>;
createdAt?: InputMaybe<DateTimeFilterInput>;
dateend?: InputMaybe<DateTimeFilterInput>;
datestart?: InputMaybe<DateTimeFilterInput>;
documentId?: InputMaybe<IdFilterInput>;
master?: InputMaybe<CustomerFiltersInput>;
not?: InputMaybe<SlotFiltersInput>;
or?: InputMaybe<Array<InputMaybe<SlotFiltersInput>>>;
orders?: InputMaybe<OrderFiltersInput>;
publishedAt?: InputMaybe<DateTimeFilterInput>;
state?: InputMaybe<StringFilterInput>;
updatedAt?: InputMaybe<DateTimeFilterInput>;
};
export type SlotInput = {
dateend: InputMaybe<Scalars['DateTime']['input']>;
datestart: InputMaybe<Scalars['DateTime']['input']>;
master: InputMaybe<Scalars['ID']['input']>;
orders: InputMaybe<Scalars['ID']['input']>;
publishedAt: InputMaybe<Scalars['DateTime']['input']>;
state: InputMaybe<Enum_Slot_State>;
dateend?: InputMaybe<Scalars['DateTime']['input']>;
datestart?: InputMaybe<Scalars['DateTime']['input']>;
master?: InputMaybe<Scalars['ID']['input']>;
orders?: InputMaybe<Scalars['ID']['input']>;
publishedAt?: InputMaybe<Scalars['DateTime']['input']>;
state?: InputMaybe<Enum_Slot_State>;
};
export type StringFilterInput = {
and: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
between: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
contains: InputMaybe<Scalars['String']['input']>;
containsi: InputMaybe<Scalars['String']['input']>;
endsWith: InputMaybe<Scalars['String']['input']>;
eq: InputMaybe<Scalars['String']['input']>;
eqi: InputMaybe<Scalars['String']['input']>;
gt: InputMaybe<Scalars['String']['input']>;
gte: InputMaybe<Scalars['String']['input']>;
in: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
lt: InputMaybe<Scalars['String']['input']>;
lte: InputMaybe<Scalars['String']['input']>;
ne: InputMaybe<Scalars['String']['input']>;
nei: InputMaybe<Scalars['String']['input']>;
not: InputMaybe<StringFilterInput>;
notContains: InputMaybe<Scalars['String']['input']>;
notContainsi: InputMaybe<Scalars['String']['input']>;
notIn: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
notNull: InputMaybe<Scalars['Boolean']['input']>;
null: InputMaybe<Scalars['Boolean']['input']>;
or: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
startsWith: InputMaybe<Scalars['String']['input']>;
and?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
between?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
contains?: InputMaybe<Scalars['String']['input']>;
containsi?: InputMaybe<Scalars['String']['input']>;
endsWith?: InputMaybe<Scalars['String']['input']>;
eq?: InputMaybe<Scalars['String']['input']>;
eqi?: InputMaybe<Scalars['String']['input']>;
gt?: InputMaybe<Scalars['String']['input']>;
gte?: InputMaybe<Scalars['String']['input']>;
in?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
lt?: InputMaybe<Scalars['String']['input']>;
lte?: InputMaybe<Scalars['String']['input']>;
ne?: InputMaybe<Scalars['String']['input']>;
nei?: InputMaybe<Scalars['String']['input']>;
not?: InputMaybe<StringFilterInput>;
notContains?: InputMaybe<Scalars['String']['input']>;
notContainsi?: InputMaybe<Scalars['String']['input']>;
notIn?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
notNull?: InputMaybe<Scalars['Boolean']['input']>;
null?: InputMaybe<Scalars['Boolean']['input']>;
or?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
startsWith?: InputMaybe<Scalars['String']['input']>;
};
export type UploadFileFiltersInput = {
alternativeText: InputMaybe<StringFilterInput>;
and: InputMaybe<Array<InputMaybe<UploadFileFiltersInput>>>;
caption: InputMaybe<StringFilterInput>;
createdAt: InputMaybe<DateTimeFilterInput>;
documentId: InputMaybe<IdFilterInput>;
ext: InputMaybe<StringFilterInput>;
formats: InputMaybe<JsonFilterInput>;
hash: InputMaybe<StringFilterInput>;
height: InputMaybe<IntFilterInput>;
mime: InputMaybe<StringFilterInput>;
name: InputMaybe<StringFilterInput>;
not: InputMaybe<UploadFileFiltersInput>;
or: InputMaybe<Array<InputMaybe<UploadFileFiltersInput>>>;
previewUrl: InputMaybe<StringFilterInput>;
provider: InputMaybe<StringFilterInput>;
provider_metadata: InputMaybe<JsonFilterInput>;
publishedAt: InputMaybe<DateTimeFilterInput>;
size: InputMaybe<FloatFilterInput>;
updatedAt: InputMaybe<DateTimeFilterInput>;
url: InputMaybe<StringFilterInput>;
width: InputMaybe<IntFilterInput>;
alternativeText?: InputMaybe<StringFilterInput>;
and?: InputMaybe<Array<InputMaybe<UploadFileFiltersInput>>>;
caption?: InputMaybe<StringFilterInput>;
createdAt?: InputMaybe<DateTimeFilterInput>;
documentId?: InputMaybe<IdFilterInput>;
ext?: InputMaybe<StringFilterInput>;
formats?: InputMaybe<JsonFilterInput>;
hash?: InputMaybe<StringFilterInput>;
height?: InputMaybe<IntFilterInput>;
mime?: InputMaybe<StringFilterInput>;
name?: InputMaybe<StringFilterInput>;
not?: InputMaybe<UploadFileFiltersInput>;
or?: InputMaybe<Array<InputMaybe<UploadFileFiltersInput>>>;
previewUrl?: InputMaybe<StringFilterInput>;
provider?: InputMaybe<StringFilterInput>;
provider_metadata?: InputMaybe<JsonFilterInput>;
publishedAt?: InputMaybe<DateTimeFilterInput>;
size?: InputMaybe<FloatFilterInput>;
updatedAt?: InputMaybe<DateTimeFilterInput>;
url?: InputMaybe<StringFilterInput>;
width?: InputMaybe<IntFilterInput>;
};
export type UsersPermissionsLoginInput = {
identifier: Scalars['String']['input'];
password: Scalars['String']['input'];
provider: Scalars['String']['input'];
provider?: Scalars['String']['input'];
};
export type UsersPermissionsPermissionFiltersInput = {
action: InputMaybe<StringFilterInput>;
and: InputMaybe<Array<InputMaybe<UsersPermissionsPermissionFiltersInput>>>;
createdAt: InputMaybe<DateTimeFilterInput>;
documentId: InputMaybe<IdFilterInput>;
not: InputMaybe<UsersPermissionsPermissionFiltersInput>;
or: InputMaybe<Array<InputMaybe<UsersPermissionsPermissionFiltersInput>>>;
publishedAt: InputMaybe<DateTimeFilterInput>;
role: InputMaybe<UsersPermissionsRoleFiltersInput>;
updatedAt: InputMaybe<DateTimeFilterInput>;
action?: InputMaybe<StringFilterInput>;
and?: InputMaybe<Array<InputMaybe<UsersPermissionsPermissionFiltersInput>>>;
createdAt?: InputMaybe<DateTimeFilterInput>;
documentId?: InputMaybe<IdFilterInput>;
not?: InputMaybe<UsersPermissionsPermissionFiltersInput>;
or?: InputMaybe<Array<InputMaybe<UsersPermissionsPermissionFiltersInput>>>;
publishedAt?: InputMaybe<DateTimeFilterInput>;
role?: InputMaybe<UsersPermissionsRoleFiltersInput>;
updatedAt?: InputMaybe<DateTimeFilterInput>;
};
export type UsersPermissionsRegisterInput = {
@ -500,54 +500,54 @@ export type UsersPermissionsRegisterInput = {
};
export type UsersPermissionsRoleFiltersInput = {
and: InputMaybe<Array<InputMaybe<UsersPermissionsRoleFiltersInput>>>;
createdAt: InputMaybe<DateTimeFilterInput>;
description: InputMaybe<StringFilterInput>;
documentId: InputMaybe<IdFilterInput>;
name: InputMaybe<StringFilterInput>;
not: InputMaybe<UsersPermissionsRoleFiltersInput>;
or: InputMaybe<Array<InputMaybe<UsersPermissionsRoleFiltersInput>>>;
permissions: InputMaybe<UsersPermissionsPermissionFiltersInput>;
publishedAt: InputMaybe<DateTimeFilterInput>;
type: InputMaybe<StringFilterInput>;
updatedAt: InputMaybe<DateTimeFilterInput>;
users: InputMaybe<UsersPermissionsUserFiltersInput>;
and?: InputMaybe<Array<InputMaybe<UsersPermissionsRoleFiltersInput>>>;
createdAt?: InputMaybe<DateTimeFilterInput>;
description?: InputMaybe<StringFilterInput>;
documentId?: InputMaybe<IdFilterInput>;
name?: InputMaybe<StringFilterInput>;
not?: InputMaybe<UsersPermissionsRoleFiltersInput>;
or?: InputMaybe<Array<InputMaybe<UsersPermissionsRoleFiltersInput>>>;
permissions?: InputMaybe<UsersPermissionsPermissionFiltersInput>;
publishedAt?: InputMaybe<DateTimeFilterInput>;
type?: InputMaybe<StringFilterInput>;
updatedAt?: InputMaybe<DateTimeFilterInput>;
users?: InputMaybe<UsersPermissionsUserFiltersInput>;
};
export type UsersPermissionsRoleInput = {
description: InputMaybe<Scalars['String']['input']>;
name: InputMaybe<Scalars['String']['input']>;
permissions: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
publishedAt: InputMaybe<Scalars['DateTime']['input']>;
type: InputMaybe<Scalars['String']['input']>;
users: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
description?: InputMaybe<Scalars['String']['input']>;
name?: InputMaybe<Scalars['String']['input']>;
permissions?: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
publishedAt?: InputMaybe<Scalars['DateTime']['input']>;
type?: InputMaybe<Scalars['String']['input']>;
users?: InputMaybe<Array<InputMaybe<Scalars['ID']['input']>>>;
};
export type UsersPermissionsUserFiltersInput = {
and: InputMaybe<Array<InputMaybe<UsersPermissionsUserFiltersInput>>>;
blocked: InputMaybe<BooleanFilterInput>;
confirmed: InputMaybe<BooleanFilterInput>;
createdAt: InputMaybe<DateTimeFilterInput>;
documentId: InputMaybe<IdFilterInput>;
email: InputMaybe<StringFilterInput>;
not: InputMaybe<UsersPermissionsUserFiltersInput>;
or: InputMaybe<Array<InputMaybe<UsersPermissionsUserFiltersInput>>>;
provider: InputMaybe<StringFilterInput>;
publishedAt: InputMaybe<DateTimeFilterInput>;
role: InputMaybe<UsersPermissionsRoleFiltersInput>;
updatedAt: InputMaybe<DateTimeFilterInput>;
username: InputMaybe<StringFilterInput>;
and?: InputMaybe<Array<InputMaybe<UsersPermissionsUserFiltersInput>>>;
blocked?: InputMaybe<BooleanFilterInput>;
confirmed?: InputMaybe<BooleanFilterInput>;
createdAt?: InputMaybe<DateTimeFilterInput>;
documentId?: InputMaybe<IdFilterInput>;
email?: InputMaybe<StringFilterInput>;
not?: InputMaybe<UsersPermissionsUserFiltersInput>;
or?: InputMaybe<Array<InputMaybe<UsersPermissionsUserFiltersInput>>>;
provider?: InputMaybe<StringFilterInput>;
publishedAt?: InputMaybe<DateTimeFilterInput>;
role?: InputMaybe<UsersPermissionsRoleFiltersInput>;
updatedAt?: InputMaybe<DateTimeFilterInput>;
username?: InputMaybe<StringFilterInput>;
};
export type UsersPermissionsUserInput = {
blocked: InputMaybe<Scalars['Boolean']['input']>;
confirmed: InputMaybe<Scalars['Boolean']['input']>;
email: InputMaybe<Scalars['String']['input']>;
password: InputMaybe<Scalars['String']['input']>;
provider: InputMaybe<Scalars['String']['input']>;
publishedAt: InputMaybe<Scalars['DateTime']['input']>;
role: InputMaybe<Scalars['ID']['input']>;
username: InputMaybe<Scalars['String']['input']>;
blocked?: InputMaybe<Scalars['Boolean']['input']>;
confirmed?: InputMaybe<Scalars['Boolean']['input']>;
email?: InputMaybe<Scalars['String']['input']>;
password?: InputMaybe<Scalars['String']['input']>;
provider?: InputMaybe<Scalars['String']['input']>;
publishedAt?: InputMaybe<Scalars['DateTime']['input']>;
role?: InputMaybe<Scalars['ID']['input']>;
username?: InputMaybe<Scalars['String']['input']>;
};
export type RegisterMutationVariables = Exact<{
@ -557,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<{
identifier: Scalars['String']['input'];
@ -565,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<{
name: Scalars['String']['input'];
@ -574,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<{
telegramId: Scalars['Long']['input'];
}>;
export type GetCustomerQuery = { __typename?: 'Query', customers: Array<{ __typename?: 'Customer', name: string, phone: string, role: Enum_Customer_Role, photoUrl: string | null } | 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 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 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"}},{"kind":"Field","name":{"kind":"Name","value":"phone"}},{"kind":"Field","name":{"kind":"Name","value":"role"}},{"kind":"Field","name":{"kind":"Name","value":"photoUrl"}}]}}]}}]} as unknown as DocumentNode<GetCustomerQuery, GetCustomerQueryVariables>;
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":"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>;

13
pnpm-lock.yaml generated
View File

@ -243,6 +243,9 @@ importers:
react-dom:
specifier: 'catalog:'
version: 19.0.0(react@19.0.0)
use-debounce:
specifier: ^10.0.4
version: 10.0.4(react@19.0.0)
zod:
specifier: 'catalog:'
version: 3.24.1
@ -5741,6 +5744,12 @@ packages:
urlpattern-polyfill@8.0.2:
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:
resolution: {integrity: sha512-HGXmpjGlbEv1uFZPfm557LK8p/hv0pKF9UwnrJeHUTxQx6bUGzMgpmPRLCVY3zkr7hfjy4LPwQJfk4Fhnn+dIg==}
peerDependencies:
@ -12141,6 +12150,10 @@ snapshots:
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):
dependencies:
'@formatjs/fast-memoize': 2.2.5