[WIP]
This commit is contained in:
parent
7b7aef9a1f
commit
5721ebc869
|
@ -9,3 +9,4 @@ generates:
|
||||||
skipTypename: true
|
skipTypename: true
|
||||||
scalars:
|
scalars:
|
||||||
ID: number
|
ID: number
|
||||||
|
Time: Date | string
|
||||||
|
|
|
@ -16,6 +16,7 @@ import {
|
||||||
Group as GroupIcon,
|
Group as GroupIcon,
|
||||||
Work as WorkIcon,
|
Work as WorkIcon,
|
||||||
Description as DescriptionIcon,
|
Description as DescriptionIcon,
|
||||||
|
QuestionAnswer as QuestionAnswerIcon,
|
||||||
} from '@material-ui/icons';
|
} from '@material-ui/icons';
|
||||||
import Nav from './components/Nav/Nav';
|
import Nav from './components/Nav/Nav';
|
||||||
import CurrentUser from './components/CurrentUser/CurrentUser';
|
import CurrentUser from './components/CurrentUser/CurrentUser';
|
||||||
|
@ -51,6 +52,12 @@ const Sidebar = ({ className, open, variant, onClose, onOpen }: Props) => {
|
||||||
exact: true,
|
exact: true,
|
||||||
Icon: <DescriptionIcon color="inherit" />,
|
Icon: <DescriptionIcon color="inherit" />,
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
name: 'Pytania',
|
||||||
|
to: Route.QuestionsPage,
|
||||||
|
exact: true,
|
||||||
|
Icon: <QuestionAnswerIcon color="inherit" />,
|
||||||
|
},
|
||||||
];
|
];
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
import { useForm } from 'react-hook-form';
|
import { useForm, Controller } from 'react-hook-form';
|
||||||
import { pick } from 'lodash';
|
import { pick } from 'lodash';
|
||||||
import { MAX_NAME_LENGTH } from './constants';
|
import { QuestionInput, Question, Maybe, Answer } from 'libs/graphql/types';
|
||||||
import { QuestionInput, Question } from 'libs/graphql/types';
|
|
||||||
|
|
||||||
import { makeStyles } from '@material-ui/core/styles';
|
import { makeStyles } from '@material-ui/core/styles';
|
||||||
import {
|
import {
|
||||||
|
@ -11,9 +10,11 @@ import {
|
||||||
DialogContent,
|
DialogContent,
|
||||||
DialogProps,
|
DialogProps,
|
||||||
DialogTitle,
|
DialogTitle,
|
||||||
|
MenuItem,
|
||||||
TextField,
|
TextField,
|
||||||
} from '@material-ui/core';
|
} from '@material-ui/core';
|
||||||
import { Maybe } from 'graphql/jsutils/Maybe';
|
|
||||||
|
const ANSWERS = Object.keys(Answer);
|
||||||
|
|
||||||
export interface FormDialogProps extends Pick<DialogProps, 'open'> {
|
export interface FormDialogProps extends Pick<DialogProps, 'open'> {
|
||||||
question?: Maybe<Question>;
|
question?: Maybe<Question>;
|
||||||
|
@ -27,6 +28,7 @@ const FormDialog = ({ open, onClose, question, onSubmit }: FormDialogProps) => {
|
||||||
register,
|
register,
|
||||||
handleSubmit,
|
handleSubmit,
|
||||||
errors,
|
errors,
|
||||||
|
control,
|
||||||
formState: { isSubmitting },
|
formState: { isSubmitting },
|
||||||
} = useForm<QuestionInput>({});
|
} = useForm<QuestionInput>({});
|
||||||
const classes = useStyles();
|
const classes = useStyles();
|
||||||
|
@ -59,18 +61,73 @@ const FormDialog = ({ open, onClose, question, onSubmit }: FormDialogProps) => {
|
||||||
<TextField
|
<TextField
|
||||||
fullWidth
|
fullWidth
|
||||||
label="Treść pytania"
|
label="Treść pytania"
|
||||||
name="name"
|
name="content"
|
||||||
|
multiline
|
||||||
defaultValue={question?.content}
|
defaultValue={question?.content}
|
||||||
inputRef={register({
|
inputRef={register({
|
||||||
required: 'Te pole jest wymagane.',
|
required: 'Te pole jest wymagane.',
|
||||||
maxLength: {
|
|
||||||
value: MAX_NAME_LENGTH,
|
|
||||||
message: `Maksymalna długość nazwy zawodu to ${MAX_NAME_LENGTH} znaki.`,
|
|
||||||
},
|
|
||||||
})}
|
})}
|
||||||
error={!!errors.content}
|
error={!!errors.content}
|
||||||
helperText={errors.content?.message ?? ''}
|
helperText={errors.content?.message ?? ''}
|
||||||
/>
|
/>
|
||||||
|
<TextField
|
||||||
|
fullWidth
|
||||||
|
label="Z"
|
||||||
|
name="from"
|
||||||
|
defaultValue={question?.from}
|
||||||
|
inputRef={register({
|
||||||
|
required: 'Te pole jest wymagane.',
|
||||||
|
})}
|
||||||
|
error={!!errors.from}
|
||||||
|
helperText={errors.from?.message ?? ''}
|
||||||
|
/>
|
||||||
|
<TextField
|
||||||
|
fullWidth
|
||||||
|
label="Wyjaśnienie"
|
||||||
|
name="explanation"
|
||||||
|
multiline
|
||||||
|
defaultValue={question?.explanation}
|
||||||
|
inputRef={register}
|
||||||
|
error={!!errors.explanation}
|
||||||
|
helperText={errors.explanation?.message ?? ''}
|
||||||
|
/>
|
||||||
|
<Controller
|
||||||
|
name="correctAnswer"
|
||||||
|
defaultValue={question?.correctAnswer ?? ANSWERS[0]}
|
||||||
|
control={control}
|
||||||
|
as={
|
||||||
|
<TextField select fullWidth label="Poprawna odpowiedź">
|
||||||
|
{ANSWERS.map(answer => (
|
||||||
|
<MenuItem key={answer} value={answer}>
|
||||||
|
{answer}
|
||||||
|
</MenuItem>
|
||||||
|
))}
|
||||||
|
</TextField>
|
||||||
|
}
|
||||||
|
/>
|
||||||
|
{ANSWERS.map(answer => {
|
||||||
|
const upper = answer.toUpperCase();
|
||||||
|
return (
|
||||||
|
//(question as any)[`answer${upper}`]
|
||||||
|
<TextField
|
||||||
|
fullWidth
|
||||||
|
key={upper}
|
||||||
|
label={`Odpowiedź ${upper}`}
|
||||||
|
name={`answer${upper}`}
|
||||||
|
multiline
|
||||||
|
defaultValue={
|
||||||
|
question ? question[`answer${upper}` as keyof Question] : ''
|
||||||
|
}
|
||||||
|
inputRef={register({
|
||||||
|
required: 'Te pole jest wymagane.',
|
||||||
|
})}
|
||||||
|
error={!!errors[`answer${upper}` as keyof QuestionInput]}
|
||||||
|
helperText={
|
||||||
|
errors[`answer${upper}` as keyof QuestionInput]?.message ?? ''
|
||||||
|
}
|
||||||
|
/>
|
||||||
|
);
|
||||||
|
})}
|
||||||
</DialogContent>
|
</DialogContent>
|
||||||
<DialogActions>
|
<DialogActions>
|
||||||
<Button
|
<Button
|
||||||
|
|
|
@ -1 +0,0 @@
|
||||||
export const MAX_NAME_LENGTH = 100;
|
|
|
@ -9,6 +9,11 @@ export const COLUMNS: Column<Question>[] = [
|
||||||
sortable: true,
|
sortable: true,
|
||||||
label: 'ID',
|
label: 'ID',
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
field: 'from',
|
||||||
|
sortable: true,
|
||||||
|
label: 'Z',
|
||||||
|
},
|
||||||
{
|
{
|
||||||
field: 'content',
|
field: 'content',
|
||||||
sortable: true,
|
sortable: true,
|
||||||
|
@ -16,7 +21,7 @@ export const COLUMNS: Column<Question>[] = [
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
field: 'qualification',
|
field: 'qualification',
|
||||||
sortable: true,
|
sortable: false,
|
||||||
label: 'Kwalifikacja',
|
label: 'Kwalifikacja',
|
||||||
valueFormatter: v => {
|
valueFormatter: v => {
|
||||||
return `${v.qualification?.code ?? '-'} (ID: ${
|
return `${v.qualification?.code ?? '-'} (ID: ${
|
||||||
|
|
|
@ -9,33 +9,48 @@ export type Scalars = {
|
||||||
Boolean: boolean;
|
Boolean: boolean;
|
||||||
Int: number;
|
Int: number;
|
||||||
Float: number;
|
Float: number;
|
||||||
Time: any;
|
|
||||||
Upload: any;
|
Upload: any;
|
||||||
|
Time: Date | string;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
export type UserWithToken = {
|
|
||||||
token: Scalars['String'];
|
|
||||||
user: User;
|
|
||||||
};
|
|
||||||
|
|
||||||
export type ProfessionInput = {
|
export type ProfessionInput = {
|
||||||
name?: Maybe<Scalars['String']>;
|
name?: Maybe<Scalars['String']>;
|
||||||
description?: Maybe<Scalars['String']>;
|
description?: Maybe<Scalars['String']>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type QualificationList = {
|
|
||||||
|
export type UserList = {
|
||||||
total: Scalars['Int'];
|
total: Scalars['Int'];
|
||||||
items?: Maybe<Array<Qualification>>;
|
items?: Maybe<Array<User>>;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
export type UserInput = {
|
||||||
|
displayName?: Maybe<Scalars['String']>;
|
||||||
|
password?: Maybe<Scalars['String']>;
|
||||||
|
email?: Maybe<Scalars['String']>;
|
||||||
|
role?: Maybe<Role>;
|
||||||
|
activated?: Maybe<Scalars['Boolean']>;
|
||||||
|
};
|
||||||
|
|
||||||
|
export type QuestionFilter = {
|
||||||
|
id?: Maybe<Array<Scalars['ID']>>;
|
||||||
|
idNEQ?: Maybe<Array<Scalars['ID']>>;
|
||||||
|
from?: Maybe<Array<Scalars['String']>>;
|
||||||
|
contentIEQ?: Maybe<Scalars['String']>;
|
||||||
|
contentMATCH?: Maybe<Scalars['String']>;
|
||||||
|
qualificationID?: Maybe<Array<Scalars['Int']>>;
|
||||||
|
qualificationIDNEQ?: Maybe<Array<Scalars['Int']>>;
|
||||||
|
qualificationFilter?: Maybe<QualificationFilter>;
|
||||||
|
createdAt?: Maybe<Scalars['Time']>;
|
||||||
|
createdAtGT?: Maybe<Scalars['Time']>;
|
||||||
|
createdAtGTE?: Maybe<Scalars['Time']>;
|
||||||
|
createdAtLT?: Maybe<Scalars['Time']>;
|
||||||
|
createdAtLTE?: Maybe<Scalars['Time']>;
|
||||||
|
};
|
||||||
|
|
||||||
export enum Role {
|
|
||||||
Admin = 'admin',
|
|
||||||
User = 'user'
|
|
||||||
}
|
|
||||||
|
|
||||||
export type User = {
|
export type User = {
|
||||||
id: Scalars['ID'];
|
id: Scalars['ID'];
|
||||||
|
@ -53,6 +68,25 @@ export type UserFilterOr = {
|
||||||
emailMATCH?: Maybe<Scalars['String']>;
|
emailMATCH?: Maybe<Scalars['String']>;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
export type ProfessionFilter = {
|
||||||
|
id?: Maybe<Array<Scalars['ID']>>;
|
||||||
|
idNEQ?: Maybe<Array<Scalars['ID']>>;
|
||||||
|
slug?: Maybe<Array<Scalars['String']>>;
|
||||||
|
slugNEQ?: Maybe<Array<Scalars['String']>>;
|
||||||
|
name?: Maybe<Array<Scalars['String']>>;
|
||||||
|
nameNEQ?: Maybe<Array<Scalars['String']>>;
|
||||||
|
nameIEQ?: Maybe<Scalars['String']>;
|
||||||
|
nameMATCH?: Maybe<Scalars['String']>;
|
||||||
|
descriptionIEQ?: Maybe<Scalars['String']>;
|
||||||
|
descriptionMATCH?: Maybe<Scalars['String']>;
|
||||||
|
qualificationID?: Maybe<Array<Scalars['ID']>>;
|
||||||
|
createdAt?: Maybe<Scalars['Time']>;
|
||||||
|
createdAtGT?: Maybe<Scalars['Time']>;
|
||||||
|
createdAtGTE?: Maybe<Scalars['Time']>;
|
||||||
|
createdAtLT?: Maybe<Scalars['Time']>;
|
||||||
|
createdAtLTE?: Maybe<Scalars['Time']>;
|
||||||
|
};
|
||||||
|
|
||||||
export type Qualification = {
|
export type Qualification = {
|
||||||
id: Scalars['ID'];
|
id: Scalars['ID'];
|
||||||
slug: Scalars['String'];
|
slug: Scalars['String'];
|
||||||
|
@ -63,12 +97,17 @@ export type Qualification = {
|
||||||
createdAt: Scalars['Time'];
|
createdAt: Scalars['Time'];
|
||||||
};
|
};
|
||||||
|
|
||||||
export enum Answer {
|
export type QualificationFilterOr = {
|
||||||
A = 'a',
|
nameMatch?: Maybe<Scalars['String']>;
|
||||||
B = 'b',
|
nameIEQ?: Maybe<Scalars['String']>;
|
||||||
C = 'c',
|
codeMatch?: Maybe<Scalars['String']>;
|
||||||
D = 'd'
|
codeIEQ?: Maybe<Scalars['String']>;
|
||||||
}
|
};
|
||||||
|
|
||||||
|
export type QuestionList = {
|
||||||
|
total: Scalars['Int'];
|
||||||
|
items?: Maybe<Array<Question>>;
|
||||||
|
};
|
||||||
|
|
||||||
export type QuestionInput = {
|
export type QuestionInput = {
|
||||||
content?: Maybe<Scalars['String']>;
|
content?: Maybe<Scalars['String']>;
|
||||||
|
@ -78,78 +117,45 @@ export type QuestionInput = {
|
||||||
qualificationID?: Maybe<Scalars['Int']>;
|
qualificationID?: Maybe<Scalars['Int']>;
|
||||||
image?: Maybe<Scalars['Upload']>;
|
image?: Maybe<Scalars['Upload']>;
|
||||||
deleteImage?: Maybe<Scalars['Boolean']>;
|
deleteImage?: Maybe<Scalars['Boolean']>;
|
||||||
answerA?: Maybe<Answer>;
|
answerA?: Maybe<Scalars['String']>;
|
||||||
answerAImage?: Maybe<Scalars['Upload']>;
|
answerAImage?: Maybe<Scalars['Upload']>;
|
||||||
deleteAnswerAImage?: Maybe<Scalars['Boolean']>;
|
deleteAnswerAImage?: Maybe<Scalars['Boolean']>;
|
||||||
answerB?: Maybe<Answer>;
|
answerB?: Maybe<Scalars['String']>;
|
||||||
answerBImage?: Maybe<Scalars['Upload']>;
|
answerBImage?: Maybe<Scalars['Upload']>;
|
||||||
deleteAnswerBImage?: Maybe<Scalars['Boolean']>;
|
deleteAnswerBImage?: Maybe<Scalars['Boolean']>;
|
||||||
answerC?: Maybe<Answer>;
|
answerC?: Maybe<Scalars['String']>;
|
||||||
answerCImage?: Maybe<Scalars['Upload']>;
|
answerCImage?: Maybe<Scalars['Upload']>;
|
||||||
deleteAnswerCImage?: Maybe<Scalars['Boolean']>;
|
deleteAnswerCImage?: Maybe<Scalars['Boolean']>;
|
||||||
answerD?: Maybe<Answer>;
|
answerD?: Maybe<Scalars['String']>;
|
||||||
answerDImage?: Maybe<Scalars['Upload']>;
|
answerDImage?: Maybe<Scalars['Upload']>;
|
||||||
deleteAnswerDImage?: Maybe<Scalars['Boolean']>;
|
deleteAnswerDImage?: Maybe<Scalars['Boolean']>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type Question = {
|
export type UpdateManyUsersInput = {
|
||||||
id: Scalars['ID'];
|
role?: Maybe<Role>;
|
||||||
from?: Maybe<Scalars['String']>;
|
activated?: Maybe<Scalars['Boolean']>;
|
||||||
content: Scalars['String'];
|
|
||||||
explanation?: Maybe<Scalars['String']>;
|
|
||||||
correctAnswer: Answer;
|
|
||||||
image?: Maybe<Scalars['String']>;
|
|
||||||
answerA?: Maybe<Answer>;
|
|
||||||
answerAImage?: Maybe<Scalars['String']>;
|
|
||||||
answerB?: Maybe<Answer>;
|
|
||||||
answerBImage?: Maybe<Scalars['String']>;
|
|
||||||
answerC?: Maybe<Answer>;
|
|
||||||
answerCImage?: Maybe<Scalars['String']>;
|
|
||||||
answerD?: Maybe<Answer>;
|
|
||||||
answerDImage?: Maybe<Scalars['String']>;
|
|
||||||
qualification?: Maybe<Qualification>;
|
|
||||||
createdAt: Scalars['Time'];
|
|
||||||
updatedAt: Scalars['Time'];
|
|
||||||
};
|
};
|
||||||
|
|
||||||
export type ProfessionList = {
|
export type UserFilter = {
|
||||||
total: Scalars['Int'];
|
|
||||||
items?: Maybe<Array<Profession>>;
|
|
||||||
};
|
|
||||||
|
|
||||||
export type QualificationInput = {
|
|
||||||
name?: Maybe<Scalars['String']>;
|
|
||||||
description?: Maybe<Scalars['String']>;
|
|
||||||
code?: Maybe<Scalars['String']>;
|
|
||||||
formula?: Maybe<Scalars['String']>;
|
|
||||||
associateProfession?: Maybe<Array<Scalars['Int']>>;
|
|
||||||
dissociateProfession?: Maybe<Array<Scalars['Int']>>;
|
|
||||||
};
|
|
||||||
|
|
||||||
export type QualificationFilter = {
|
|
||||||
id?: Maybe<Array<Scalars['ID']>>;
|
id?: Maybe<Array<Scalars['ID']>>;
|
||||||
idNEQ?: Maybe<Array<Scalars['ID']>>;
|
idNEQ?: Maybe<Array<Scalars['ID']>>;
|
||||||
slug?: Maybe<Array<Scalars['String']>>;
|
activated?: Maybe<Scalars['Boolean']>;
|
||||||
slugNEQ?: Maybe<Array<Scalars['String']>>;
|
displayName?: Maybe<Array<Scalars['String']>>;
|
||||||
formula?: Maybe<Array<Scalars['String']>>;
|
displayNameNEQ?: Maybe<Array<Scalars['String']>>;
|
||||||
formulaNEQ?: Maybe<Array<Scalars['String']>>;
|
displayNameIEQ?: Maybe<Scalars['String']>;
|
||||||
name?: Maybe<Array<Scalars['String']>>;
|
displayNameMATCH?: Maybe<Scalars['String']>;
|
||||||
nameNEQ?: Maybe<Array<Scalars['String']>>;
|
email?: Maybe<Array<Scalars['String']>>;
|
||||||
nameIEQ?: Maybe<Scalars['String']>;
|
emailNEQ?: Maybe<Array<Scalars['String']>>;
|
||||||
nameMATCH?: Maybe<Scalars['String']>;
|
emailIEQ?: Maybe<Scalars['String']>;
|
||||||
code?: Maybe<Array<Scalars['String']>>;
|
emailMATCH?: Maybe<Scalars['String']>;
|
||||||
codeNEQ?: Maybe<Array<Scalars['String']>>;
|
role?: Maybe<Array<Role>>;
|
||||||
codeIEQ?: Maybe<Scalars['String']>;
|
roleNEQ?: Maybe<Array<Role>>;
|
||||||
codeMATCH?: Maybe<Scalars['String']>;
|
|
||||||
descriptionIEQ?: Maybe<Scalars['String']>;
|
|
||||||
descriptionMATCH?: Maybe<Scalars['String']>;
|
|
||||||
professionID?: Maybe<Array<Scalars['Int']>>;
|
|
||||||
createdAt?: Maybe<Scalars['Time']>;
|
createdAt?: Maybe<Scalars['Time']>;
|
||||||
createdAtGT?: Maybe<Scalars['Time']>;
|
createdAtGT?: Maybe<Scalars['Time']>;
|
||||||
createdAtGTE?: Maybe<Scalars['Time']>;
|
createdAtGTE?: Maybe<Scalars['Time']>;
|
||||||
createdAtLT?: Maybe<Scalars['Time']>;
|
createdAtLT?: Maybe<Scalars['Time']>;
|
||||||
createdAtLTE?: Maybe<Scalars['Time']>;
|
createdAtLTE?: Maybe<Scalars['Time']>;
|
||||||
or?: Maybe<QualificationFilterOr>;
|
or?: Maybe<UserFilterOr>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type Mutation = {
|
export type Mutation = {
|
||||||
|
@ -246,52 +252,17 @@ export type MutationSignInArgs = {
|
||||||
staySignedIn?: Maybe<Scalars['Boolean']>;
|
staySignedIn?: Maybe<Scalars['Boolean']>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type UserFilter = {
|
export enum Role {
|
||||||
id?: Maybe<Array<Scalars['ID']>>;
|
Admin = 'admin',
|
||||||
idNEQ?: Maybe<Array<Scalars['ID']>>;
|
User = 'user'
|
||||||
activated?: Maybe<Scalars['Boolean']>;
|
}
|
||||||
displayName?: Maybe<Array<Scalars['String']>>;
|
|
||||||
displayNameNEQ?: Maybe<Array<Scalars['String']>>;
|
|
||||||
displayNameIEQ?: Maybe<Scalars['String']>;
|
|
||||||
displayNameMATCH?: Maybe<Scalars['String']>;
|
|
||||||
email?: Maybe<Array<Scalars['String']>>;
|
|
||||||
emailNEQ?: Maybe<Array<Scalars['String']>>;
|
|
||||||
emailIEQ?: Maybe<Scalars['String']>;
|
|
||||||
emailMATCH?: Maybe<Scalars['String']>;
|
|
||||||
role?: Maybe<Array<Role>>;
|
|
||||||
roleNEQ?: Maybe<Array<Role>>;
|
|
||||||
createdAt?: Maybe<Scalars['Time']>;
|
|
||||||
createdAtGT?: Maybe<Scalars['Time']>;
|
|
||||||
createdAtGTE?: Maybe<Scalars['Time']>;
|
|
||||||
createdAtLT?: Maybe<Scalars['Time']>;
|
|
||||||
createdAtLTE?: Maybe<Scalars['Time']>;
|
|
||||||
or?: Maybe<UserFilterOr>;
|
|
||||||
};
|
|
||||||
|
|
||||||
export type Profession = {
|
export enum Answer {
|
||||||
id: Scalars['ID'];
|
A = 'a',
|
||||||
slug: Scalars['String'];
|
B = 'b',
|
||||||
name: Scalars['String'];
|
C = 'c',
|
||||||
description?: Maybe<Scalars['String']>;
|
D = 'd'
|
||||||
createdAt: Scalars['Time'];
|
}
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
export type QuestionFilter = {
|
|
||||||
id?: Maybe<Array<Scalars['ID']>>;
|
|
||||||
idNEQ?: Maybe<Array<Scalars['ID']>>;
|
|
||||||
from?: Maybe<Array<Scalars['String']>>;
|
|
||||||
contentIEQ?: Maybe<Scalars['String']>;
|
|
||||||
contentMATCH?: Maybe<Scalars['String']>;
|
|
||||||
qualificationID?: Maybe<Array<Scalars['Int']>>;
|
|
||||||
qualificationIDNEQ?: Maybe<Array<Scalars['Int']>>;
|
|
||||||
qualificationFilter?: Maybe<QualificationFilter>;
|
|
||||||
createdAt?: Maybe<Scalars['Time']>;
|
|
||||||
createdAtGT?: Maybe<Scalars['Time']>;
|
|
||||||
createdAtGTE?: Maybe<Scalars['Time']>;
|
|
||||||
createdAtLT?: Maybe<Scalars['Time']>;
|
|
||||||
createdAtLTE?: Maybe<Scalars['Time']>;
|
|
||||||
};
|
|
||||||
|
|
||||||
export type Query = {
|
export type Query = {
|
||||||
professions: ProfessionList;
|
professions: ProfessionList;
|
||||||
|
@ -360,51 +331,80 @@ export type QueryUserArgs = {
|
||||||
id: Scalars['Int'];
|
id: Scalars['Int'];
|
||||||
};
|
};
|
||||||
|
|
||||||
export type ProfessionFilter = {
|
export type Profession = {
|
||||||
|
id: Scalars['ID'];
|
||||||
|
slug: Scalars['String'];
|
||||||
|
name: Scalars['String'];
|
||||||
|
description?: Maybe<Scalars['String']>;
|
||||||
|
createdAt: Scalars['Time'];
|
||||||
|
};
|
||||||
|
|
||||||
|
export type QualificationInput = {
|
||||||
|
name?: Maybe<Scalars['String']>;
|
||||||
|
description?: Maybe<Scalars['String']>;
|
||||||
|
code?: Maybe<Scalars['String']>;
|
||||||
|
formula?: Maybe<Scalars['String']>;
|
||||||
|
associateProfession?: Maybe<Array<Scalars['Int']>>;
|
||||||
|
dissociateProfession?: Maybe<Array<Scalars['Int']>>;
|
||||||
|
};
|
||||||
|
|
||||||
|
export type QualificationFilter = {
|
||||||
id?: Maybe<Array<Scalars['ID']>>;
|
id?: Maybe<Array<Scalars['ID']>>;
|
||||||
idNEQ?: Maybe<Array<Scalars['ID']>>;
|
idNEQ?: Maybe<Array<Scalars['ID']>>;
|
||||||
slug?: Maybe<Array<Scalars['String']>>;
|
slug?: Maybe<Array<Scalars['String']>>;
|
||||||
slugNEQ?: Maybe<Array<Scalars['String']>>;
|
slugNEQ?: Maybe<Array<Scalars['String']>>;
|
||||||
|
formula?: Maybe<Array<Scalars['String']>>;
|
||||||
|
formulaNEQ?: Maybe<Array<Scalars['String']>>;
|
||||||
name?: Maybe<Array<Scalars['String']>>;
|
name?: Maybe<Array<Scalars['String']>>;
|
||||||
nameNEQ?: Maybe<Array<Scalars['String']>>;
|
nameNEQ?: Maybe<Array<Scalars['String']>>;
|
||||||
nameIEQ?: Maybe<Scalars['String']>;
|
nameIEQ?: Maybe<Scalars['String']>;
|
||||||
nameMATCH?: Maybe<Scalars['String']>;
|
nameMATCH?: Maybe<Scalars['String']>;
|
||||||
|
code?: Maybe<Array<Scalars['String']>>;
|
||||||
|
codeNEQ?: Maybe<Array<Scalars['String']>>;
|
||||||
|
codeIEQ?: Maybe<Scalars['String']>;
|
||||||
|
codeMATCH?: Maybe<Scalars['String']>;
|
||||||
descriptionIEQ?: Maybe<Scalars['String']>;
|
descriptionIEQ?: Maybe<Scalars['String']>;
|
||||||
descriptionMATCH?: Maybe<Scalars['String']>;
|
descriptionMATCH?: Maybe<Scalars['String']>;
|
||||||
qualificationID?: Maybe<Array<Scalars['ID']>>;
|
professionID?: Maybe<Array<Scalars['Int']>>;
|
||||||
createdAt?: Maybe<Scalars['Time']>;
|
createdAt?: Maybe<Scalars['Time']>;
|
||||||
createdAtGT?: Maybe<Scalars['Time']>;
|
createdAtGT?: Maybe<Scalars['Time']>;
|
||||||
createdAtGTE?: Maybe<Scalars['Time']>;
|
createdAtGTE?: Maybe<Scalars['Time']>;
|
||||||
createdAtLT?: Maybe<Scalars['Time']>;
|
createdAtLT?: Maybe<Scalars['Time']>;
|
||||||
createdAtLTE?: Maybe<Scalars['Time']>;
|
createdAtLTE?: Maybe<Scalars['Time']>;
|
||||||
|
or?: Maybe<QualificationFilterOr>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type QualificationFilterOr = {
|
export type UserWithToken = {
|
||||||
nameMatch?: Maybe<Scalars['String']>;
|
token: Scalars['String'];
|
||||||
nameIEQ?: Maybe<Scalars['String']>;
|
user: User;
|
||||||
codeMatch?: Maybe<Scalars['String']>;
|
|
||||||
codeIEQ?: Maybe<Scalars['String']>;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
export type UserInput = {
|
export type ProfessionList = {
|
||||||
displayName?: Maybe<Scalars['String']>;
|
|
||||||
password?: Maybe<Scalars['String']>;
|
|
||||||
email?: Maybe<Scalars['String']>;
|
|
||||||
role?: Maybe<Role>;
|
|
||||||
activated?: Maybe<Scalars['Boolean']>;
|
|
||||||
};
|
|
||||||
|
|
||||||
export type QuestionList = {
|
|
||||||
total: Scalars['Int'];
|
total: Scalars['Int'];
|
||||||
items?: Maybe<Array<Question>>;
|
items?: Maybe<Array<Profession>>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type UserList = {
|
export type QualificationList = {
|
||||||
total: Scalars['Int'];
|
total: Scalars['Int'];
|
||||||
items?: Maybe<Array<User>>;
|
items?: Maybe<Array<Qualification>>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type UpdateManyUsersInput = {
|
export type Question = {
|
||||||
role?: Maybe<Role>;
|
id: Scalars['ID'];
|
||||||
activated?: Maybe<Scalars['Boolean']>;
|
from?: Maybe<Scalars['String']>;
|
||||||
|
content: Scalars['String'];
|
||||||
|
explanation?: Maybe<Scalars['String']>;
|
||||||
|
correctAnswer: Answer;
|
||||||
|
image?: Maybe<Scalars['String']>;
|
||||||
|
answerA?: Maybe<Scalars['String']>;
|
||||||
|
answerAImage?: Maybe<Scalars['String']>;
|
||||||
|
answerB?: Maybe<Scalars['String']>;
|
||||||
|
answerBImage?: Maybe<Scalars['String']>;
|
||||||
|
answerC?: Maybe<Scalars['String']>;
|
||||||
|
answerCImage?: Maybe<Scalars['String']>;
|
||||||
|
answerD?: Maybe<Scalars['String']>;
|
||||||
|
answerDImage?: Maybe<Scalars['String']>;
|
||||||
|
qualification?: Maybe<Qualification>;
|
||||||
|
createdAt: Scalars['Time'];
|
||||||
|
updatedAt: Scalars['Time'];
|
||||||
};
|
};
|
||||||
|
|
Reference in New Issue