This commit is contained in:
2024-03-01 11:43:31 +03:00
parent ff1f8e0452
commit 9e1c2c9504
12 changed files with 400 additions and 226 deletions

View File

@@ -2,7 +2,7 @@ import { createApi, fetchBaseQuery } from "@reduxjs/toolkit/query/react";
import { getConfigValue } from "@ijl/cli";
import { keycloak } from "../kc";
import { BaseResponse, Lesson } from "../model";
import { AccessCode, BaseResponse, Lesson, UserData } from "../model";
export const api = createApi({
reducerPath: "auth",
@@ -15,37 +15,35 @@ export const api = createApi({
headers.set('Authorization', `Bearer ${keycloak.token}`)
}
}),
tagTypes: ['Lesson'],
endpoints: (builder) => ({
lessonList: builder.query<BaseResponse<Lesson[]>, void>({
query: () => '/lesson/list'
query: () => '/lesson/list',
providesTags: ['Lesson']
}),
createLesson: builder.mutation<BaseResponse<Lesson>, Pick<Lesson, 'name'>>({
query: ({ name }) => ({
url: '/lesson',
method: 'POST',
body: {name },
}),
invalidatesTags: ['Lesson']
}),
lessonById: builder.query<BaseResponse<Lesson>, string>({
query: (lessonId: string) => `/api/lesson/${lessonId}`
}),
createAccessCode: builder.query<BaseResponse<AccessCode>, { lessonId: string }>({
query: ({ lessonId }) => ({
url: '/lesson/access-code',
method: 'POST',
body: { lessonId },
})
}),
getAccess: builder.query<BaseResponse<{ user: UserData, accessCode: AccessCode }>, { accessCode: string }>({
query: ({ accessCode }) => ({
url: `/lesson/access-code/${accessCode}`,
method: 'GET',
})
})
// signIn: builder.mutation<SignInResponce, SignInRequestBody>({
// query: ({ login, password }) => ({
// url: URLs.queryApi.login,
// method: 'POST',
// body: { login, password },
// }),
// }),
// recoverPassword: builder.mutation<{ error?: string }, { email: string }>({
// query: ({ email }) => ({
// url: URLs.queryApi.revoverPassword,
// method: 'POST',
// body: { email }
// })
// }),
// recoverPasswordConfirm: builder.mutation<{ error?: string }, { code: string }>({
// query: ({ code }) => ({
// url: URLs.queryApi.revoverPasswordConfirm,
// method: 'POST',
// body: { code }
// })
// }),
// recoverPasswordNewPassword: builder.mutation<{ error?: string }, { newPassword: string }>({
// query: ({ newPassword }) => ({
// url: URLs.queryApi.revoverPasswordNew,
// method: 'POST',
// body: { newPassword }
// })
// })
}),
});