From 320fe092494698212dd9e1c6aea3af62ceccb053 Mon Sep 17 00:00:00 2001 From: Sergey Yarkov Date: Mon, 15 Nov 2021 23:08:40 +0300 Subject: [PATCH] feat: pages for creating lesson --- package-lock.json | 5 + package.json | 1 + .../Forms/CourseForm/CourseForm.tsx | 14 ++- .../Forms/CourseForm/CourseForm.validator.ts | 5 +- src/hooks/useFetchCourseQuery.ts | 3 + src/hooks/useFetchLessonQuery.ts | 56 +++++++++ src/interfaces/index.ts | 6 +- .../components/CourseList/CourseItem.tsx | 2 +- .../courses/create-lesson/create-lesson.tsx | 17 +++ .../edit/components/LessonList/LessonItem.tsx | 84 ++++++++++++++ .../edit/components/LessonList/LessonList.tsx | 49 ++++++++ .../edit/components/LessonList/index.ts | 4 + .../components/StudentList/StudentItem.tsx | 16 +++ .../components/StudentList/StudentList.tsx | 36 ++++++ .../edit/components/StudentList/index.ts | 4 + src/pages/courses/edit/edit.tsx | 52 ++++----- src/pages/lesson/lesson.tsx | 27 +++++ .../components/CourseList/CourseItem.tsx | 106 +++++++----------- .../users/components/UserList/UserItem.tsx | 2 + src/routes.config.ts | 17 +++ 20 files changed, 407 insertions(+), 99 deletions(-) create mode 100644 src/hooks/useFetchLessonQuery.ts create mode 100644 src/pages/courses/create-lesson/create-lesson.tsx create mode 100644 src/pages/courses/edit/components/LessonList/LessonItem.tsx create mode 100644 src/pages/courses/edit/components/LessonList/LessonList.tsx create mode 100644 src/pages/courses/edit/components/LessonList/index.ts create mode 100644 src/pages/courses/edit/components/StudentList/StudentItem.tsx create mode 100644 src/pages/courses/edit/components/StudentList/StudentList.tsx create mode 100644 src/pages/courses/edit/components/StudentList/index.ts create mode 100644 src/pages/lesson/lesson.tsx diff --git a/package-lock.json b/package-lock.json index d7e2a0a..79df364 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1869,6 +1869,11 @@ "resolved": "https://registry.npmjs.org/mobx-react-lite/-/mobx-react-lite-3.2.1.tgz", "integrity": "sha512-hwURgfmP2apX3HQrB55V9DN47kuN3C6KlQvI5UIfJRibXma72C/JudcNt2r9dWjAdFMrcZoz1ivvtXMCkJ2aQA==" }, + "moment": { + "version": "2.29.1", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.1.tgz", + "integrity": "sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ==" + }, "ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", diff --git a/package.json b/package.json index 1bc4604..88a5b2e 100644 --- a/package.json +++ b/package.json @@ -19,6 +19,7 @@ "js-cookie": "^3.0.0", "mobx": "^6.3.2", "mobx-react": "^7.2.0", + "moment": "^2.29.1", "qs": "^6.10.1", "react": "^17.0.0", "react-dom": "^17.0.0", diff --git a/src/components/Forms/CourseForm/CourseForm.tsx b/src/components/Forms/CourseForm/CourseForm.tsx index 18bdc68..55e077b 100644 --- a/src/components/Forms/CourseForm/CourseForm.tsx +++ b/src/components/Forms/CourseForm/CourseForm.tsx @@ -7,7 +7,7 @@ import { Controller, UseFormReturn } from 'react-hook-form'; /** * Types */ -import { OptionType } from '@educt/types'; +import type { OptionType } from '@educt/types'; import { UserRoleEnum } from '@educt/enums'; /** @@ -93,6 +93,7 @@ const CourseForm: React.FC = ({ onSubmit, buttonLabel, isLo }; const watchTitle = watch('title'); + const watchDescription = watch('description'); return (
@@ -119,9 +120,14 @@ const CourseForm: React.FC = ({ onSubmit, buttonLabel, isLo Description