From 3f1ff12e744be88e094527983ef496cd7871483d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luk=C3=A1=C5=A1=20Rod?= Date: Tue, 3 Mar 2020 13:04:40 +0100 Subject: [PATCH 1/5] kompletni migrace na typescript - odstraneni explicitnich -> <> - camelcase napric aplikaci krom prace s API - pouzivani event.currentTarget napric aplikaci misto event.target - refaktoring nazvu css trid u komponent - setInterval a setTimeout explicitne vazany k window - smazani vsech pozustatku po Flow (flow typy, zmeny v souborech) - prepsani Bank.js, nadefinovani presne podoby API pro banku - zjednoduseni GoogleAnalytics.js - upravy a refaktoring komponent tak, aby bylo jejich pouziti jednoznacne a v souladu s typy - u FontAwesome ikon bylo potreba obalit je span s ID, protoze ID nemaji povoleno - osetreni mnoha hranicnich pripadu navic - odstraneni zbytecneho ID ve stavech formularu - odstraneni zbytecnych props, ktere se vyuzivaly, ale diky zjednoduseni uz nebyly potreba - zavedeni dummy objektu s vychozimi hodnotami pro formulare pri pridavani - osetreni prace s tokenem v ErrorBoundary.js - pridani dalsich pravidel ESlint - uprava README.md: zmena a doplneni technologii --- .idea/codeStyles/Project.xml | 3 + .idea/compiler.xml | 8 + .idea/misc.xml | 2 +- .idea/scopes/prettier.xml | 2 +- .idea/scopes/typescript.xml | 3 + .travis.yml | 3 + README.md | 10 +- frontend/.babelrc.json | 2 +- frontend/.eslintrc.js | 52 +- frontend/.flowconfig | 12 - frontend/flow-typed/npm/@babel/core_vx.x.x.js | 355 - ...plugin-proposal-class-properties_vx.x.x.js | 35 - .../npm/@babel/preset-env_vx.x.x.js | 238 - .../npm/@babel/preset-flow_vx.x.x.js | 35 - .../npm/@babel/preset-react_vx.x.x.js | 35 - .../fontawesome-svg-core_vx.x.x.js | 38 - .../free-brands-svg-icons_vx.x.x.js | 3139 ---- .../pro-solid-svg-icons_vx.x.x.js | 12785 ---------------- .../@fortawesome/react-fontawesome_vx.x.x.js | 38 - .../npm/@hot-loader/react-dom_vx.x.x.js | 276 - .../flow-typed/npm/@sentry/browser_v5.x.x.js | 365 - frontend/flow-typed/npm/axios_v0.19.x.js | 225 - .../flow-typed/npm/babel-eslint_vx.x.x.js | 122 - .../flow-typed/npm/babel-loader_vx.x.x.js | 63 - frontend/flow-typed/npm/bootstrap_vx.x.x.js | 248 - frontend/flow-typed/npm/chroma-js_vx.x.x.js | 1073 -- .../npm/clean-webpack-plugin_vx.x.x.js | 32 - .../npm/confusing-browser-globals_vx.x.x.js | 33 - frontend/flow-typed/npm/cross-env_vx.x.x.js | 70 - frontend/flow-typed/npm/css-loader_vx.x.x.js | 108 - frontend/flow-typed/npm/cssnano_vx.x.x.js | 42 - .../npm/eslint-config-prettier_vx.x.x.js | 94 - .../flow-typed/npm/eslint-loader_vx.x.x.js | 77 - .../npm/eslint-plugin-flowtype_vx.x.x.js | 506 - .../npm/eslint-plugin-import_vx.x.x.js | 423 - .../npm/eslint-plugin-jsx-a11y_vx.x.x.js | 1214 -- .../npm/eslint-plugin-prettier_vx.x.x.js | 32 - .../npm/eslint-plugin-react-hooks_vx.x.x.js | 45 - .../npm/eslint-plugin-react_vx.x.x.js | 773 - frontend/flow-typed/npm/eslint_vx.x.x.js | 2674 ---- frontend/flow-typed/npm/flow-bin_v0.x.x.js | 6 - frontend/flow-typed/npm/fuse.js_v3.x.x.js | 32 - frontend/flow-typed/npm/history_v4.9.x.js | 141 - .../html-webpack-harddisk-plugin_vx.x.x.js | 33 - .../npm/html-webpack-plugin_vx.x.x.js | 73 - frontend/flow-typed/npm/jwt-decode_vx.x.x.js | 84 - .../npm/mini-css-extract-plugin_vx.x.x.js | 63 - ...timize-css-assets-webpack-plugin_vx.x.x.js | 134 - .../flow-typed/npm/postcss-loader_vx.x.x.js | 56 - .../npm/postcss-preset-env_vx.x.x.js | 33 - frontend/flow-typed/npm/prettier_v1.x.x.js | 222 - frontend/flow-typed/npm/react-color_v2.x.x.js | 236 - frontend/flow-typed/npm/react-ga_vx.x.x.js | 282 - .../flow-typed/npm/react-hot-loader_v4.6.x.js | 58 - .../flow-typed/npm/react-router-dom_v5.x.x.js | 181 - .../flow-typed/npm/react-toastify_vx.x.x.js | 52 - frontend/flow-typed/npm/reactstrap_vx.x.x.js | 2652 ---- .../flow-typed/npm/style-loader_vx.x.x.js | 56 - .../npm/terser-webpack-plugin_vx.x.x.js | 77 - frontend/flow-typed/npm/webpack-cli_vx.x.x.js | 81 - .../npm/webpack-dev-server_vx.x.x.js | 329 - frontend/flow-typed/npm/webpack_v4.x.x.js | 692 - frontend/package.json | 25 +- frontend/src/{Main.js => Main.tsx} | 70 +- frontend/src/api/{_axios.js => _axios.ts} | 8 +- ...arseDjangoError.js => parseDjangoError.ts} | 11 +- frontend/src/api/{request.js => request.tsx} | 83 +- .../{application.js => application.ts} | 22 +- .../services/{attendance.js => attendance.ts} | 9 +- frontend/src/api/services/attendancestate.js | 52 - frontend/src/api/services/attendancestate.ts | 61 + .../src/api/services/{bank.js => bank.ts} | 13 +- .../src/api/services/{client.js => client.ts} | 35 +- .../src/api/services/{course.js => course.ts} | 26 +- .../src/api/services/{group.js => group.ts} | 40 +- .../api/services/{lecture.js => lecture.ts} | 48 +- .../src/api/services/{login.js => login.ts} | 11 +- .../services/{membership.js => membership.ts} | 9 +- frontend/src/api/{urls.js => urls.ts} | 4 +- .../{AuthChecking.js => AuthChecking.tsx} | 20 +- .../auth/{AuthContext.js => AuthContext.tsx} | 73 +- .../{PrivateRoute.js => PrivateRoute.tsx} | 18 +- frontend/src/auth/{Token.js => Token.ts} | 25 +- .../{AppCommit.js => AppCommit.tsx} | 8 +- frontend/src/components/AppDate.js | 5 - frontend/src/components/AppDate.tsx | 5 + .../{AppRelease.js => AppRelease.tsx} | 20 +- .../{Attendances.js => Attendances.tsx} | 28 +- frontend/src/components/Bank.js | 253 - frontend/src/components/Bank.tsx | 286 + .../{Celebration.js => Celebration.tsx} | 16 +- .../src/components/{Circle.js => Circle.tsx} | 14 +- frontend/src/components/ClientName.js | 30 - frontend/src/components/ClientName.tsx | 55 + frontend/src/components/ClientsList.js | 13 - frontend/src/components/ClientsList.tsx | 18 + frontend/src/components/ComponentsList.js | 3 - frontend/src/components/ComponentsList.tsx | 11 + frontend/src/components/ConditionalWrapper.js | 13 - .../src/components/ConditionalWrapper.tsx | 12 + .../{CourseName.js => CourseName.tsx} | 9 +- .../{DashboardDay.js => DashboardDay.tsx} | 60 +- .../src/components/{Email.js => Email.tsx} | 9 +- frontend/src/components/GoogleAnalytics.js | 60 - frontend/src/components/GoogleAnalytics.tsx | 61 + frontend/src/components/GroupName.js | 43 - frontend/src/components/GroupName.tsx | 66 + .../{GroupsList.js => GroupsList.tsx} | 9 +- frontend/src/components/Heading.js | 6 - frontend/src/components/Heading.tsx | 12 + .../{LectureNote.js => LectureNote.tsx} | 9 +- .../{LectureNumber.js => LectureNumber.tsx} | 14 +- frontend/src/components/Loading.js | 26 - frontend/src/components/Loading.tsx | 33 + frontend/src/components/{Menu.js => Menu.tsx} | 29 +- frontend/src/components/NoInfo.js | 9 - frontend/src/components/NoInfo.tsx | 12 + frontend/src/components/Note.js | 9 - frontend/src/components/Note.tsx | 14 + .../{Notification.js => Notification.tsx} | 14 +- frontend/src/components/{Page.js => Page.tsx} | 9 +- .../{PaidButton.js => PaidButton.tsx} | 32 +- .../src/components/{Phone.js => Phone.tsx} | 10 +- ...PrepaidCounters.js => PrepaidCounters.tsx} | 58 +- frontend/src/components/RemindPay.js | 22 - frontend/src/components/RemindPay.tsx | 30 + .../src/components/{Search.js => Search.tsx} | 22 +- .../{SearchResults.js => SearchResults.tsx} | 34 +- ...anceState.js => SelectAttendanceState.tsx} | 18 +- .../components/{Tooltip.js => Tooltip.tsx} | 22 +- .../components/UncontrolledTooltipWrapper.js | 10 - .../components/UncontrolledTooltipWrapper.tsx | 14 + .../{ActiveSwitcher.js => ActiveSwitcher.tsx} | 16 +- frontend/src/components/buttons/AddButton.js | 14 - frontend/src/components/buttons/AddButton.tsx | 24 + frontend/src/components/buttons/BackButton.js | 12 - .../src/components/buttons/BackButton.tsx | 16 + .../src/components/buttons/CancelButton.js | 10 - .../src/components/buttons/CancelButton.tsx | 10 + .../src/components/buttons/CustomButton.js | 10 - .../src/components/buttons/CustomButton.tsx | 20 + .../src/components/buttons/DeleteButton.js | 10 - .../src/components/buttons/DeleteButton.tsx | 14 + .../buttons/{EditButton.js => EditButton.tsx} | 24 +- .../{SubmitButton.js => SubmitButton.tsx} | 17 +- .../src/contexts/AttendanceStatesContext.js | 54 - .../src/contexts/AttendanceStatesContext.tsx | 74 + ...iveContext.js => ClientsActiveContext.tsx} | 62 +- ...leContext.js => CoursesVisibleContext.tsx} | 55 +- ...tiveContext.js => GroupsActiveContext.tsx} | 55 +- ...rmApplications.js => FormApplications.tsx} | 130 +- .../forms/{FormClients.js => FormClients.tsx} | 110 +- .../forms/{FormGroups.js => FormGroups.tsx} | 179 +- .../{FormLectures.js => FormLectures.tsx} | 493 +- .../{FormSettings.js => FormSettings.tsx} | 147 +- ...lApplications.js => ModalApplications.tsx} | 29 +- .../{ModalClients.js => ModalClients.tsx} | 43 +- .../forms/{ModalGroups.js => ModalGroups.tsx} | 35 +- .../{ModalLectures.js => ModalLectures.tsx} | 39 +- ...lLecturesCore.js => ModalLecturesCore.tsx} | 40 +- ...turesWizard.js => ModalLecturesWizard.tsx} | 158 +- .../{ModalSettings.js => ModalSettings.tsx} | 54 +- .../{ColorPicker.js => ColorPicker.tsx} | 31 +- ...omCustomInput.js => CustomCustomInput.tsx} | 12 +- .../src/forms/helpers/CustomReactSelect.js | 43 - .../src/forms/helpers/CustomReactSelect.tsx | 50 + frontend/src/forms/helpers/Or.css | 4 +- frontend/src/forms/helpers/Or.js | 10 - frontend/src/forms/helpers/Or.tsx | 14 + frontend/src/forms/helpers/SelectClient.js | 20 - frontend/src/forms/helpers/SelectClient.tsx | 32 + frontend/src/forms/helpers/SelectCourse.js | 21 - frontend/src/forms/helpers/SelectCourse.tsx | 34 + frontend/src/forms/helpers/dummies.ts | 57 + .../src/forms/helpers/{func.js => func.ts} | 4 +- ...tCourseColors.js => selectCourseColors.ts} | 17 +- .../src/global/{constants.js => constants.ts} | 3 + .../{funcDateTime.js => funcDateTime.ts} | 137 +- ...uncEnvironments.js => funcEnvironments.ts} | 32 +- .../src/global/{history.js => history.ts} | 2 +- .../src/global/{lazySafe.js => lazySafe.ts} | 6 +- frontend/src/global/{utils.js => utils.ts} | 88 +- frontend/src/hooks/useForm.js | 26 - frontend/src/hooks/useForm.ts | 34 + .../hooks/{useKeyPress.js => useKeyPress.ts} | 16 +- .../src/hooks/{useModal.js => useModal.ts} | 63 +- frontend/src/{index.js => index.tsx} | 4 +- .../{Applications.js => Applications.tsx} | 59 +- frontend/src/pages/{Card.js => Card.tsx} | 187 +- .../src/pages/{Clients.js => Clients.tsx} | 57 +- .../src/pages/{Dashboard.js => Dashboard.tsx} | 21 +- frontend/src/pages/{Diary.js => Diary.tsx} | 63 +- .../{ErrorBoundary.js => ErrorBoundary.tsx} | 51 +- frontend/src/pages/{Groups.js => Groups.tsx} | 78 +- frontend/src/pages/{Login.js => Login.tsx} | 47 +- .../src/pages/{NotFound.js => NotFound.tsx} | 4 +- .../src/pages/{Settings.js => Settings.tsx} | 123 +- frontend/src/types/components.ts | 18 + frontend/src/types/models.ts | 229 + frontend/src/types/types.ts | 47 + frontend/src/{urls.js => urls.ts} | 11 +- frontend/tsconfig.json | 35 + frontend/webpack.config.js | 7 +- frontend/yarn.lock | 911 +- package.json | 3 +- 205 files changed, 4429 insertions(+), 33337 deletions(-) create mode 100644 .idea/compiler.xml create mode 100644 .idea/scopes/typescript.xml delete mode 100644 frontend/.flowconfig delete mode 100644 frontend/flow-typed/npm/@babel/core_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/@babel/plugin-proposal-class-properties_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/@babel/preset-env_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/@babel/preset-flow_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/@babel/preset-react_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/@fortawesome/fontawesome-svg-core_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/@fortawesome/free-brands-svg-icons_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/@fortawesome/pro-solid-svg-icons_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/@fortawesome/react-fontawesome_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/@hot-loader/react-dom_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/@sentry/browser_v5.x.x.js delete mode 100644 frontend/flow-typed/npm/axios_v0.19.x.js delete mode 100644 frontend/flow-typed/npm/babel-eslint_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/babel-loader_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/bootstrap_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/chroma-js_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/clean-webpack-plugin_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/confusing-browser-globals_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/cross-env_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/css-loader_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/cssnano_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/eslint-config-prettier_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/eslint-loader_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/eslint-plugin-flowtype_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/eslint-plugin-import_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/eslint-plugin-jsx-a11y_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/eslint-plugin-prettier_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/eslint-plugin-react-hooks_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/eslint-plugin-react_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/eslint_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/flow-bin_v0.x.x.js delete mode 100644 frontend/flow-typed/npm/fuse.js_v3.x.x.js delete mode 100644 frontend/flow-typed/npm/history_v4.9.x.js delete mode 100644 frontend/flow-typed/npm/html-webpack-harddisk-plugin_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/html-webpack-plugin_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/jwt-decode_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/mini-css-extract-plugin_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/optimize-css-assets-webpack-plugin_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/postcss-loader_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/postcss-preset-env_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/prettier_v1.x.x.js delete mode 100644 frontend/flow-typed/npm/react-color_v2.x.x.js delete mode 100644 frontend/flow-typed/npm/react-ga_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/react-hot-loader_v4.6.x.js delete mode 100644 frontend/flow-typed/npm/react-router-dom_v5.x.x.js delete mode 100644 frontend/flow-typed/npm/react-toastify_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/reactstrap_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/style-loader_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/terser-webpack-plugin_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/webpack-cli_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/webpack-dev-server_vx.x.x.js delete mode 100644 frontend/flow-typed/npm/webpack_v4.x.x.js rename frontend/src/{Main.js => Main.tsx} (75%) rename frontend/src/api/{_axios.js => _axios.ts} (72%) rename frontend/src/api/{parseDjangoError.js => parseDjangoError.ts} (80%) rename frontend/src/api/{request.js => request.tsx} (67%) rename frontend/src/api/services/{application.js => application.ts} (52%) rename frontend/src/api/services/{attendance.js => attendance.ts} (55%) delete mode 100644 frontend/src/api/services/attendancestate.js create mode 100644 frontend/src/api/services/attendancestate.ts rename frontend/src/api/services/{bank.js => bank.ts} (51%) rename frontend/src/api/services/{client.js => client.ts} (52%) rename frontend/src/api/services/{course.js => course.ts} (54%) rename frontend/src/api/services/{group.js => group.ts} (55%) rename frontend/src/api/services/{lecture.js => lecture.ts} (53%) rename frontend/src/api/services/{login.js => login.ts} (57%) rename frontend/src/api/services/{membership.js => membership.ts} (55%) rename frontend/src/api/{urls.js => urls.ts} (93%) rename frontend/src/auth/{AuthChecking.js => AuthChecking.tsx} (53%) rename frontend/src/auth/{AuthContext.js => AuthContext.tsx} (58%) rename frontend/src/auth/{PrivateRoute.js => PrivateRoute.tsx} (74%) rename frontend/src/auth/{Token.js => Token.ts} (60%) rename frontend/src/components/{AppCommit.js => AppCommit.tsx} (84%) delete mode 100644 frontend/src/components/AppDate.js create mode 100644 frontend/src/components/AppDate.tsx rename frontend/src/components/{AppRelease.js => AppRelease.tsx} (68%) rename frontend/src/components/{Attendances.js => Attendances.tsx} (65%) delete mode 100644 frontend/src/components/Bank.js create mode 100644 frontend/src/components/Bank.tsx rename frontend/src/components/{Celebration.js => Celebration.tsx} (66%) rename frontend/src/components/{Circle.js => Circle.tsx} (77%) delete mode 100644 frontend/src/components/ClientName.js create mode 100644 frontend/src/components/ClientName.tsx delete mode 100644 frontend/src/components/ClientsList.js create mode 100644 frontend/src/components/ClientsList.tsx delete mode 100644 frontend/src/components/ComponentsList.js create mode 100644 frontend/src/components/ComponentsList.tsx delete mode 100644 frontend/src/components/ConditionalWrapper.js create mode 100644 frontend/src/components/ConditionalWrapper.tsx rename frontend/src/components/{CourseName.js => CourseName.tsx} (58%) rename frontend/src/components/{DashboardDay.js => DashboardDay.tsx} (81%) rename frontend/src/components/{Email.js => Email.tsx} (58%) delete mode 100644 frontend/src/components/GoogleAnalytics.js create mode 100644 frontend/src/components/GoogleAnalytics.tsx delete mode 100644 frontend/src/components/GroupName.js create mode 100644 frontend/src/components/GroupName.tsx rename frontend/src/components/{GroupsList.js => GroupsList.tsx} (67%) delete mode 100644 frontend/src/components/Heading.js create mode 100644 frontend/src/components/Heading.tsx rename frontend/src/components/{LectureNote.js => LectureNote.tsx} (52%) rename frontend/src/components/{LectureNumber.js => LectureNumber.tsx} (51%) delete mode 100644 frontend/src/components/Loading.js create mode 100644 frontend/src/components/Loading.tsx rename frontend/src/components/{Menu.js => Menu.tsx} (77%) delete mode 100644 frontend/src/components/NoInfo.js create mode 100644 frontend/src/components/NoInfo.tsx delete mode 100644 frontend/src/components/Note.js create mode 100644 frontend/src/components/Note.tsx rename frontend/src/components/{Notification.js => Notification.tsx} (68%) rename frontend/src/components/{Page.js => Page.tsx} (65%) rename frontend/src/components/{PaidButton.js => PaidButton.tsx} (64%) rename frontend/src/components/{Phone.js => Phone.tsx} (77%) rename frontend/src/components/{PrepaidCounters.js => PrepaidCounters.tsx} (72%) delete mode 100644 frontend/src/components/RemindPay.js create mode 100644 frontend/src/components/RemindPay.tsx rename frontend/src/components/{Search.js => Search.tsx} (69%) rename frontend/src/components/{SearchResults.js => SearchResults.tsx} (85%) rename frontend/src/components/{SelectAttendanceState.js => SelectAttendanceState.tsx} (68%) rename frontend/src/components/{Tooltip.js => Tooltip.tsx} (53%) delete mode 100644 frontend/src/components/UncontrolledTooltipWrapper.js create mode 100644 frontend/src/components/UncontrolledTooltipWrapper.tsx rename frontend/src/components/buttons/{ActiveSwitcher.js => ActiveSwitcher.tsx} (72%) delete mode 100644 frontend/src/components/buttons/AddButton.js create mode 100644 frontend/src/components/buttons/AddButton.tsx delete mode 100644 frontend/src/components/buttons/BackButton.js create mode 100644 frontend/src/components/buttons/BackButton.tsx delete mode 100644 frontend/src/components/buttons/CancelButton.js create mode 100644 frontend/src/components/buttons/CancelButton.tsx delete mode 100644 frontend/src/components/buttons/CustomButton.js create mode 100644 frontend/src/components/buttons/CustomButton.tsx delete mode 100644 frontend/src/components/buttons/DeleteButton.js create mode 100644 frontend/src/components/buttons/DeleteButton.tsx rename frontend/src/components/buttons/{EditButton.js => EditButton.tsx} (59%) rename frontend/src/components/buttons/{SubmitButton.js => SubmitButton.tsx} (57%) delete mode 100644 frontend/src/contexts/AttendanceStatesContext.js create mode 100644 frontend/src/contexts/AttendanceStatesContext.tsx rename frontend/src/contexts/{ClientsActiveContext.js => ClientsActiveContext.tsx} (56%) rename frontend/src/contexts/{CoursesVisibleContext.js => CoursesVisibleContext.tsx} (54%) rename frontend/src/contexts/{GroupsActiveContext.js => GroupsActiveContext.tsx} (54%) rename frontend/src/forms/{FormApplications.js => FormApplications.tsx} (58%) rename frontend/src/forms/{FormClients.js => FormClients.tsx} (71%) rename frontend/src/forms/{FormGroups.js => FormGroups.tsx} (63%) rename frontend/src/forms/{FormLectures.js => FormLectures.tsx} (61%) rename frontend/src/forms/{FormSettings.js => FormSettings.tsx} (56%) rename frontend/src/forms/{ModalApplications.js => ModalApplications.tsx} (67%) rename frontend/src/forms/{ModalClients.js => ModalClients.tsx} (70%) rename frontend/src/forms/{ModalGroups.js => ModalGroups.tsx} (70%) rename frontend/src/forms/{ModalLectures.js => ModalLectures.tsx} (53%) rename frontend/src/forms/{ModalLecturesCore.js => ModalLecturesCore.tsx} (55%) rename frontend/src/forms/{ModalLecturesWizard.js => ModalLecturesWizard.tsx} (61%) rename frontend/src/forms/{ModalSettings.js => ModalSettings.tsx} (53%) rename frontend/src/forms/helpers/{ColorPicker.js => ColorPicker.tsx} (87%) rename frontend/src/forms/helpers/{CustomCustomInput.js => CustomCustomInput.tsx} (73%) delete mode 100644 frontend/src/forms/helpers/CustomReactSelect.js create mode 100644 frontend/src/forms/helpers/CustomReactSelect.tsx delete mode 100644 frontend/src/forms/helpers/Or.js create mode 100644 frontend/src/forms/helpers/Or.tsx delete mode 100644 frontend/src/forms/helpers/SelectClient.js create mode 100644 frontend/src/forms/helpers/SelectClient.tsx delete mode 100644 frontend/src/forms/helpers/SelectCourse.js create mode 100644 frontend/src/forms/helpers/SelectCourse.tsx create mode 100644 frontend/src/forms/helpers/dummies.ts rename frontend/src/forms/helpers/{func.js => func.ts} (55%) rename frontend/src/forms/helpers/{selectCourseColors.js => selectCourseColors.ts} (67%) rename frontend/src/global/{constants.js => constants.ts} (95%) rename frontend/src/global/{funcDateTime.js => funcDateTime.ts} (79%) rename frontend/src/global/{funcEnvironments.js => funcEnvironments.ts} (78%) rename frontend/src/global/{history.js => history.ts} (70%) rename frontend/src/global/{lazySafe.js => lazySafe.ts} (91%) rename frontend/src/global/{utils.js => utils.ts} (63%) delete mode 100644 frontend/src/hooks/useForm.js create mode 100644 frontend/src/hooks/useForm.ts rename frontend/src/hooks/{useKeyPress.js => useKeyPress.ts} (70%) rename frontend/src/hooks/{useModal.js => useModal.ts} (67%) rename frontend/src/{index.js => index.tsx} (93%) rename frontend/src/pages/{Applications.js => Applications.tsx} (86%) rename frontend/src/pages/{Card.js => Card.tsx} (70%) rename frontend/src/pages/{Clients.js => Clients.tsx} (77%) rename frontend/src/pages/{Dashboard.js => Dashboard.tsx} (77%) rename frontend/src/pages/{Diary.js => Diary.tsx} (78%) rename frontend/src/pages/{ErrorBoundary.js => ErrorBoundary.tsx} (81%) rename frontend/src/pages/{Groups.js => Groups.tsx} (71%) rename frontend/src/pages/{Login.js => Login.tsx} (73%) rename frontend/src/pages/{NotFound.js => NotFound.tsx} (82%) rename frontend/src/pages/{Settings.js => Settings.tsx} (80%) create mode 100644 frontend/src/types/components.ts create mode 100644 frontend/src/types/models.ts create mode 100644 frontend/src/types/types.ts rename frontend/src/{urls.js => urls.ts} (81%) create mode 100644 frontend/tsconfig.json diff --git a/.idea/codeStyles/Project.xml b/.idea/codeStyles/Project.xml index 8fdf71a6..7464be0c 100644 --- a/.idea/codeStyles/Project.xml +++ b/.idea/codeStyles/Project.xml @@ -23,11 +23,14 @@