From 306e64aa8b056f797c9eb203b8c31d66dd7382b4 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Mon, 18 May 2026 18:35:40 +0000 Subject: [PATCH 1/2] [pre-commit.ci] pre-commit autoupdate MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit updates: - [github.com/psf/black-pre-commit-mirror: 26.3.1 → 26.5.0](https://github.com/psf/black-pre-commit-mirror/compare/26.3.1...26.5.0) - [github.com/pre-commit/mirrors-eslint: v10.3.0 → v10.4.0](https://github.com/pre-commit/mirrors-eslint/compare/v10.3.0...v10.4.0) --- .pre-commit-config.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index d8ca6364c..2a01458bc 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -56,7 +56,7 @@ repos: name: 'Sort Python imports' args: [--settings, ./backend/pyproject.toml] - repo: https://github.com/psf/black-pre-commit-mirror - rev: 26.3.1 + rev: 26.5.0 hooks: - id: black name: 'Format Python code' @@ -90,7 +90,7 @@ repos: - python args: [--config, ./frontend/.prettierrc] - repo: https://github.com/pre-commit/mirrors-eslint - rev: v10.3.0 + rev: v10.4.0 hooks: - id: eslint name: 'Lint JavaScript code (Frontend)' From e657da4b793ec46f390a8a59cdc5934bc3134995 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Mon, 18 May 2026 18:38:21 +0000 Subject: [PATCH 2/2] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- frontend-admin/src/Layout.tsx | 5 ++-- frontend-admin/src/api/http.ts | 3 +-- .../AdditionalDataDialog.tsx | 1 - .../AutoCompleteStaff/AutoCompleteStaff.tsx | 5 ++-- .../AutoCompleteStaffMultiple.tsx | 3 +-- .../src/components/Avatar/AvatarGroupCrew.tsx | 3 +-- .../Details/Request/AcceptRejectDialog.tsx | 3 +-- .../Details/Request/CommentCards.tsx | 26 +++++++++---------- .../Details/Request/Crew/AddCrewDialog.tsx | 11 ++++---- .../Details/Request/Crew/CrewDataTable.tsx | 15 +++++------ .../Details/Request/RecordingContent.tsx | 3 +-- .../Details/Request/RequesterContent.tsx | 7 +++-- .../src/components/Details/Video/Ratings.tsx | 11 ++++---- .../src/components/FormField/FormField.tsx | 3 +-- .../Header/Menubar/Button/AvatarButton.tsx | 3 +-- .../src/components/History/History.tsx | 7 +++-- .../src/components/History/RequestHistory.tsx | 3 +-- .../src/components/History/VideoHistory.tsx | 3 +-- .../LastUpdatedAt/LastUpdatedAt.tsx | 1 - .../components/RatingDialog/RatingDialog.tsx | 23 ++++++++-------- .../RequestCreator/NewRequesterForm.tsx | 5 ++-- .../RequestsDataTable/RequestsDataTable.tsx | 13 +++++----- .../components/Search/RequestSearchForm.tsx | 13 +++++----- .../src/components/Search/VideoSearchForm.tsx | 13 +++++----- .../RequestStatusHelperSlideover.tsx | 5 ++-- .../VideoStatusHelperSlideover.tsx | 5 ++-- .../components/Tasks.tsx | 5 ++-- .../src/components/Todos/TodoDialog.tsx | 21 +++++++-------- frontend-admin/src/components/Todos/Todos.tsx | 23 ++++++++-------- frontend-admin/src/components/User/User.tsx | 3 +-- .../components/UserProfile/AvatarDialog.tsx | 3 +-- .../src/components/UserProfile/BanSection.tsx | 7 +++-- .../components/UserProfile/ProfileSection.tsx | 13 +++++----- .../UserProfile/WorkedOnSection.tsx | 9 +++---- .../UsersDataTable/UsersDataTable.tsx | 9 +++---- .../VideosDataTable/VideoSearchDataTable.tsx | 11 ++++---- .../VideosDataTable/VideosDataTable.tsx | 11 ++++---- frontend-admin/src/index.tsx | 9 +++---- frontend-admin/src/pages/LandingPage.tsx | 13 +++++----- .../src/pages/RequestCreatorEditorPage.tsx | 20 +++++++------- .../src/pages/RequestDetailsPage.tsx | 20 +++++++------- frontend-admin/src/pages/RequestsListPage.tsx | 5 ++-- frontend-admin/src/pages/SearchPage.tsx | 3 +-- frontend-admin/src/pages/TodosPage.tsx | 11 ++++---- frontend-admin/src/pages/UserProfilePage.tsx | 7 +++-- frontend-admin/src/pages/UsersListPage.tsx | 5 ++-- .../src/pages/VideoCreatorEditorPage.tsx | 23 ++++++++-------- frontend-admin/src/pages/VideoDetailsPage.tsx | 20 +++++++------- frontend-admin/src/pages/VideosListPage.tsx | 5 ++-- frontend-admin/src/router.tsx | 17 ++++++------ 50 files changed, 210 insertions(+), 256 deletions(-) diff --git a/frontend-admin/src/Layout.tsx b/frontend-admin/src/Layout.tsx index e3ec347bd..b148ea8fa 100644 --- a/frontend-admin/src/Layout.tsx +++ b/frontend-admin/src/Layout.tsx @@ -1,11 +1,10 @@ import React from 'react'; -import { ScrollTop } from 'primereact/scrolltop'; -import { Outlet, ScrollRestoration, useNavigation } from 'react-router'; - import Header from 'components/Header/Header'; import LoadingPage from 'pages/LoadingPage'; +import { ScrollTop } from 'primereact/scrolltop'; import { AuthenticationProvider } from 'providers/AuthenticationProvider'; +import { Outlet, ScrollRestoration, useNavigation } from 'react-router'; type LayoutProps = { children?: React.JSX.Element; diff --git a/frontend-admin/src/api/http.ts b/frontend-admin/src/api/http.ts index 9f9dbcbf7..af8be62c1 100644 --- a/frontend-admin/src/api/http.ts +++ b/frontend-admin/src/api/http.ts @@ -1,7 +1,5 @@ import axios, { isAxiosError } from 'axios'; import type { AxiosResponse } from 'axios'; -import { jwtDecode } from 'jwt-decode'; - import { getAccessToken, getRefreshToken, @@ -11,6 +9,7 @@ import { setRefreshToken, setRefreshTokenExpirationTime, } from 'helpers/LocalStorageHelper'; +import { jwtDecode } from 'jwt-decode'; import { AdminApiFactory, diff --git a/frontend-admin/src/components/AdditionalDataDialog/AdditionalDataDialog.tsx b/frontend-admin/src/components/AdditionalDataDialog/AdditionalDataDialog.tsx index 06916865c..23731daee 100644 --- a/frontend-admin/src/components/AdditionalDataDialog/AdditionalDataDialog.tsx +++ b/frontend-admin/src/components/AdditionalDataDialog/AdditionalDataDialog.tsx @@ -5,7 +5,6 @@ import { Dialog } from 'primereact/dialog'; import type { DialogProps } from 'primereact/dialog'; import { InputTextarea } from 'primereact/inputtextarea'; import { Controller, useForm } from 'react-hook-form'; - import { RequestAdditionalDataType } from 'types/additionalDataTypes'; interface AdditionalDataDialogProps extends DialogProps { diff --git a/frontend-admin/src/components/AutoCompleteStaff/AutoCompleteStaff.tsx b/frontend-admin/src/components/AutoCompleteStaff/AutoCompleteStaff.tsx index 765f46449..ed401ad92 100644 --- a/frontend-admin/src/components/AutoCompleteStaff/AutoCompleteStaff.tsx +++ b/frontend-admin/src/components/AutoCompleteStaff/AutoCompleteStaff.tsx @@ -1,13 +1,12 @@ import { forwardRef, useState } from 'react'; import { useQuery } from '@tanstack/react-query'; -import { AutoComplete } from 'primereact/autocomplete'; -import type { AutoCompleteProps } from 'primereact/autocomplete'; - import { UserAdminList } from 'api/models'; import { usersStaffListQuery } from 'api/queries'; import Avatar from 'components/Avatar/Avatar'; import { getUserId } from 'helpers/LocalStorageHelper'; +import type { AutoCompleteProps } from 'primereact/autocomplete'; +import { AutoComplete } from 'primereact/autocomplete'; const AutoCompleteStaff = forwardRef< React.Ref, diff --git a/frontend-admin/src/components/AutoCompleteStaff/AutoCompleteStaffMultiple.tsx b/frontend-admin/src/components/AutoCompleteStaff/AutoCompleteStaffMultiple.tsx index 39c8f47ef..15883ef99 100644 --- a/frontend-admin/src/components/AutoCompleteStaff/AutoCompleteStaffMultiple.tsx +++ b/frontend-admin/src/components/AutoCompleteStaff/AutoCompleteStaffMultiple.tsx @@ -1,9 +1,8 @@ import { forwardRef } from 'react'; -import type { AutoCompleteProps } from 'primereact/autocomplete'; - import { UserAdminList } from 'api/models'; import Avatar from 'components/Avatar/Avatar'; +import type { AutoCompleteProps } from 'primereact/autocomplete'; import AutoCompleteStaff from './AutoCompleteStaff'; diff --git a/frontend-admin/src/components/Avatar/AvatarGroupCrew.tsx b/frontend-admin/src/components/Avatar/AvatarGroupCrew.tsx index 11531b710..a895e2c4b 100644 --- a/frontend-admin/src/components/Avatar/AvatarGroupCrew.tsx +++ b/frontend-admin/src/components/Avatar/AvatarGroupCrew.tsx @@ -1,13 +1,12 @@ import { forwardRef, Fragment } from 'react'; +import { UI_AVATAR_URL } from 'localConstants'; import { Avatar } from 'primereact/avatar'; import { AvatarGroup } from 'primereact/avatargroup'; import type { AvatarGroupProps } from 'primereact/avatargroup'; import { Tooltip } from 'primereact/tooltip'; import { classNames } from 'primereact/utils'; -import { UI_AVATAR_URL } from 'localConstants'; - interface AvatarGroupCrewProps extends AvatarGroupProps { crew?: { avatar_url: string | null; diff --git a/frontend-admin/src/components/Details/Request/AcceptRejectDialog.tsx b/frontend-admin/src/components/Details/Request/AcceptRejectDialog.tsx index caa766d3f..6f89bab79 100644 --- a/frontend-admin/src/components/Details/Request/AcceptRejectDialog.tsx +++ b/frontend-admin/src/components/Details/Request/AcceptRejectDialog.tsx @@ -1,5 +1,6 @@ import { forwardRef, useEffect } from 'react'; +import { isAdmin } from 'helpers/LocalStorageHelper'; import { Button } from 'primereact/button'; import { Dialog } from 'primereact/dialog'; import type { DialogProps } from 'primereact/dialog'; @@ -9,8 +10,6 @@ import { classNames } from 'primereact/utils'; import type { IconType } from 'primereact/utils'; import { Controller, useForm } from 'react-hook-form'; -import { isAdmin } from 'helpers/LocalStorageHelper'; - interface AcceptRejectDialogProps extends DialogProps { accepted: boolean | null | undefined; canceled: boolean | null | undefined; diff --git a/frontend-admin/src/components/Details/Request/CommentCards.tsx b/frontend-admin/src/components/Details/Request/CommentCards.tsx index d43e7ad28..5c585b638 100644 --- a/frontend-admin/src/components/Details/Request/CommentCards.tsx +++ b/frontend-admin/src/components/Details/Request/CommentCards.tsx @@ -6,19 +6,6 @@ import { useQuery, useQueryClient, } from '@tanstack/react-query'; -import { isAxiosError } from 'axios'; -import { Avatar } from 'primereact/avatar'; -import { Button } from 'primereact/button'; -import { confirmDialog } from 'primereact/confirmdialog'; -import { InputTextarea } from 'primereact/inputtextarea'; -import { SelectButton } from 'primereact/selectbutton'; -import { Tag } from 'primereact/tag'; -import { Tooltip } from 'primereact/tooltip'; -import { classNames } from 'primereact/utils'; -import type { IconType } from 'primereact/utils'; -import { Controller, useForm } from 'react-hook-form'; -import type { Control } from 'react-hook-form'; - import { adminApi } from 'api/http'; import { CommentAdminListRetrieve } from 'api/models'; import { @@ -26,6 +13,7 @@ import { requestCommentUpdateMutation, } from 'api/mutations'; import { requestCommentsListQuery } from 'api/queries'; +import { isAxiosError } from 'axios'; import { dateTimeToLocaleString } from 'helpers/DateToLocaleStringCoverters'; import { getErrorMessage } from 'helpers/ErrorMessageProvider'; import { @@ -37,6 +25,18 @@ import { import TimeAgo from 'helpers/TimeAgo'; import { useTheme } from 'hooks/useTheme'; import { UI_AVATAR_URL } from 'localConstants'; +import { Avatar } from 'primereact/avatar'; +import { Button } from 'primereact/button'; +import { confirmDialog } from 'primereact/confirmdialog'; +import { InputTextarea } from 'primereact/inputtextarea'; +import { SelectButton } from 'primereact/selectbutton'; +import { Tag } from 'primereact/tag'; +import { Tooltip } from 'primereact/tooltip'; +import { classNames } from 'primereact/utils'; +import type { IconType } from 'primereact/utils'; +import { Controller, useForm } from 'react-hook-form'; +import type { Control } from 'react-hook-form'; + import { useToast } from 'providers/ToastProvider'; // TODO: Review props diff --git a/frontend-admin/src/components/Details/Request/Crew/AddCrewDialog.tsx b/frontend-admin/src/components/Details/Request/Crew/AddCrewDialog.tsx index 00e74227b..2262a409d 100644 --- a/frontend-admin/src/components/Details/Request/Crew/AddCrewDialog.tsx +++ b/frontend-admin/src/components/Details/Request/Crew/AddCrewDialog.tsx @@ -1,17 +1,16 @@ import { forwardRef, useState } from 'react'; import { useMutation, useQueryClient } from '@tanstack/react-query'; -import { isAxiosError } from 'axios'; -import { Button } from 'primereact/button'; -import { Dialog } from 'primereact/dialog'; -import type { DialogProps } from 'primereact/dialog'; -import { Controller, useForm } from 'react-hook-form'; - import { UserNestedDetail } from 'api/models/user-nested-detail'; import { requestCrewCreateMutation } from 'api/mutations'; +import { isAxiosError } from 'axios'; import AutoCompleteStaff from 'components/AutoCompleteStaff/AutoCompleteStaff'; import { getErrorMessage } from 'helpers/ErrorMessageProvider'; +import { Button } from 'primereact/button'; +import { Dialog } from 'primereact/dialog'; +import type { DialogProps } from 'primereact/dialog'; import { useToast } from 'providers/ToastProvider'; +import { Controller, useForm } from 'react-hook-form'; import AutoCompleteCrewPosition from './AutoCompleteCrewPosition'; diff --git a/frontend-admin/src/components/Details/Request/Crew/CrewDataTable.tsx b/frontend-admin/src/components/Details/Request/Crew/CrewDataTable.tsx index 7ff37243c..71010fec7 100644 --- a/frontend-admin/src/components/Details/Request/Crew/CrewDataTable.tsx +++ b/frontend-admin/src/components/Details/Request/Crew/CrewDataTable.tsx @@ -1,7 +1,14 @@ import { useState } from 'react'; import { useQuery, useQueryClient } from '@tanstack/react-query'; +import { adminApi } from 'api/http'; +import { CrewMemberAdminListRetrieve } from 'api/models'; +import { requestCrewListQuery } from 'api/queries'; import { isAxiosError } from 'axios'; +import AutoCompleteStaff from 'components/AutoCompleteStaff/AutoCompleteStaff'; +import User from 'components/User/User'; +import { getErrorMessage } from 'helpers/ErrorMessageProvider'; +import useMobile from 'hooks/useMobile'; import type { AutoCompleteChangeEvent } from 'primereact/autocomplete'; import { Button } from 'primereact/button'; import { Column } from 'primereact/column'; @@ -11,14 +18,6 @@ import { DataTable } from 'primereact/datatable'; import type { DataTableRowEditCompleteEvent } from 'primereact/datatable'; import { Ripple } from 'primereact/ripple'; import { classNames } from 'primereact/utils'; - -import { adminApi } from 'api/http'; -import { CrewMemberAdminListRetrieve } from 'api/models'; -import { requestCrewListQuery } from 'api/queries'; -import AutoCompleteStaff from 'components/AutoCompleteStaff/AutoCompleteStaff'; -import User from 'components/User/User'; -import { getErrorMessage } from 'helpers/ErrorMessageProvider'; -import useMobile from 'hooks/useMobile'; import { useToast } from 'providers/ToastProvider'; import AddCrewDialog from './AddCrewDialog'; diff --git a/frontend-admin/src/components/Details/Request/RecordingContent.tsx b/frontend-admin/src/components/Details/Request/RecordingContent.tsx index 2428a2438..b7d033685 100644 --- a/frontend-admin/src/components/Details/Request/RecordingContent.tsx +++ b/frontend-admin/src/components/Details/Request/RecordingContent.tsx @@ -2,10 +2,9 @@ import { Button } from 'primereact/button'; import { ButtonGroup } from 'primereact/buttongroup'; import { Dropdown } from 'primereact/dropdown'; import { Tag } from 'primereact/tag'; +import { useToast } from 'providers/ToastProvider'; import { Controller } from 'react-hook-form'; import type { Control } from 'react-hook-form'; - -import { useToast } from 'providers/ToastProvider'; import { RequestAdditionalDataRecordingType } from 'types/additionalDataTypes'; type RequestAdditionalDataRecordingFormType = { diff --git a/frontend-admin/src/components/Details/Request/RequesterContent.tsx b/frontend-admin/src/components/Details/Request/RequesterContent.tsx index 8cc555292..f8b9539cb 100644 --- a/frontend-admin/src/components/Details/Request/RequesterContent.tsx +++ b/frontend-admin/src/components/Details/Request/RequesterContent.tsx @@ -1,14 +1,13 @@ import { Fragment } from 'react'; +import { UserNestedDetail } from 'api/models'; +import LinkButton from 'components/LinkButton/LinkButton'; +import User from 'components/User/User'; import { ButtonGroup } from 'primereact/buttongroup'; import { Chip } from 'primereact/chip'; import { Tag } from 'primereact/tag'; import { Tooltip } from 'primereact/tooltip'; import { href } from 'react-router'; - -import { UserNestedDetail } from 'api/models'; -import LinkButton from 'components/LinkButton/LinkButton'; -import User from 'components/User/User'; import { RequestAdditionalDataType } from 'types/additionalDataTypes'; type RequesterContentProps = { diff --git a/frontend-admin/src/components/Details/Video/Ratings.tsx b/frontend-admin/src/components/Details/Video/Ratings.tsx index d79016c7e..5b5c70a6d 100644 --- a/frontend-admin/src/components/Details/Video/Ratings.tsx +++ b/frontend-admin/src/components/Details/Video/Ratings.tsx @@ -1,12 +1,6 @@ import { MouseEventHandler, useState } from 'react'; import { UseQueryResult, useQuery } from '@tanstack/react-query'; -import { Avatar } from 'primereact/avatar'; -import { Button } from 'primereact/button'; -import { Dropdown } from 'primereact/dropdown'; -import { Tooltip } from 'primereact/tooltip'; -import { classNames } from 'primereact/utils'; - import { RatingAdminListRetrieve } from 'api/models'; import { requestVideoRatingsListQuery } from 'api/queries'; import RatingDialog from 'components/RatingDialog/RatingDialog'; @@ -14,6 +8,11 @@ import { dateTimeToLocaleString } from 'helpers/DateToLocaleStringCoverters'; import { getUserId, isAdmin } from 'helpers/LocalStorageHelper'; import TimeAgo from 'helpers/TimeAgo'; import { UI_AVATAR_URL } from 'localConstants'; +import { Avatar } from 'primereact/avatar'; +import { Button } from 'primereact/button'; +import { Dropdown } from 'primereact/dropdown'; +import { Tooltip } from 'primereact/tooltip'; +import { classNames } from 'primereact/utils'; interface RatingAdminListDates // TODO: Rename? extends Omit { diff --git a/frontend-admin/src/components/FormField/FormField.tsx b/frontend-admin/src/components/FormField/FormField.tsx index 4f525d4e2..c578c33f3 100644 --- a/frontend-admin/src/components/FormField/FormField.tsx +++ b/frontend-admin/src/components/FormField/FormField.tsx @@ -1,5 +1,6 @@ import React, { cloneElement } from 'react'; +import ConditionalWrapper from 'helpers/ConditionalWrapper'; import { classNames } from 'primereact/utils'; import type { IconType } from 'primereact/utils'; import { Controller } from 'react-hook-form'; @@ -9,8 +10,6 @@ import type { UseControllerProps, } from 'react-hook-form'; -import ConditionalWrapper from 'helpers/ConditionalWrapper'; - interface FormFieldProps< T extends FieldValues = FieldValues, TName extends FieldPath = FieldPath, diff --git a/frontend-admin/src/components/Header/Menubar/Button/AvatarButton.tsx b/frontend-admin/src/components/Header/Menubar/Button/AvatarButton.tsx index 731cafd1a..3b5b9f400 100644 --- a/frontend-admin/src/components/Header/Menubar/Button/AvatarButton.tsx +++ b/frontend-admin/src/components/Header/Menubar/Button/AvatarButton.tsx @@ -1,7 +1,6 @@ -import { Ripple } from 'primereact/ripple'; - import Avatar from 'components/Avatar/Avatar'; import { getAvatar, getGroups, getName } from 'helpers/LocalStorageHelper'; +import { Ripple } from 'primereact/ripple'; const AvatarButton = () => { return ( diff --git a/frontend-admin/src/components/History/History.tsx b/frontend-admin/src/components/History/History.tsx index 71e685dc0..d853651f9 100644 --- a/frontend-admin/src/components/History/History.tsx +++ b/frontend-admin/src/components/History/History.tsx @@ -1,13 +1,12 @@ import React from 'react'; -import { Avatar } from 'primereact/avatar'; -import { Divider } from 'primereact/divider'; -import { Tooltip } from 'primereact/tooltip'; - import { History } from 'api/models/history'; import { dateTimeToLocaleString } from 'helpers/DateToLocaleStringCoverters'; import TimeAgo from 'helpers/TimeAgo'; import { UI_AVATAR_URL } from 'localConstants'; +import { Avatar } from 'primereact/avatar'; +import { Divider } from 'primereact/divider'; +import { Tooltip } from 'primereact/tooltip'; export interface HistoryDates // TODO: Rename? extends Omit { diff --git a/frontend-admin/src/components/History/RequestHistory.tsx b/frontend-admin/src/components/History/RequestHistory.tsx index e50051faf..4c7c37f3d 100644 --- a/frontend-admin/src/components/History/RequestHistory.tsx +++ b/frontend-admin/src/components/History/RequestHistory.tsx @@ -1,6 +1,4 @@ import { useQuery } from '@tanstack/react-query'; -import { Skeleton } from 'primereact/skeleton'; - import { requestHistoryListQuery, usersListQuery } from 'api/queries'; import { RequestStatusTag } from 'components/StatusTag/StatusTag'; import User from 'components/User/User'; @@ -8,6 +6,7 @@ import { dateTimeToLocaleString, dateToLocaleString, } from 'helpers/DateToLocaleStringCoverters'; +import { Skeleton } from 'primereact/skeleton'; import HistoryComponent, { getHistory } from './History'; diff --git a/frontend-admin/src/components/History/VideoHistory.tsx b/frontend-admin/src/components/History/VideoHistory.tsx index eada595f7..5ad08c087 100644 --- a/frontend-admin/src/components/History/VideoHistory.tsx +++ b/frontend-admin/src/components/History/VideoHistory.tsx @@ -1,9 +1,8 @@ import { useQuery } from '@tanstack/react-query'; -import { Skeleton } from 'primereact/skeleton'; - import { requestVideoHistoryListQuery, usersListQuery } from 'api/queries'; import { VideoStatusTag } from 'components/StatusTag/StatusTag'; import User from 'components/User/User'; +import { Skeleton } from 'primereact/skeleton'; import HistoryComponent, { getHistory } from './History'; diff --git a/frontend-admin/src/components/LastUpdatedAt/LastUpdatedAt.tsx b/frontend-admin/src/components/LastUpdatedAt/LastUpdatedAt.tsx index fd947c054..8b35d620c 100644 --- a/frontend-admin/src/components/LastUpdatedAt/LastUpdatedAt.tsx +++ b/frontend-admin/src/components/LastUpdatedAt/LastUpdatedAt.tsx @@ -1,5 +1,4 @@ import { QueryObserverResult } from '@tanstack/react-query'; - import TimeAgo from 'helpers/TimeAgo'; type LastUpdatedAtProps = { diff --git a/frontend-admin/src/components/RatingDialog/RatingDialog.tsx b/frontend-admin/src/components/RatingDialog/RatingDialog.tsx index 711e618d1..94657cecc 100644 --- a/frontend-admin/src/components/RatingDialog/RatingDialog.tsx +++ b/frontend-admin/src/components/RatingDialog/RatingDialog.tsx @@ -5,18 +5,6 @@ import { useMutation, useQueryClient, } from '@tanstack/react-query'; -import { isAxiosError } from 'axios'; -import { Button } from 'primereact/button'; -import { ConfirmPopup, confirmPopup } from 'primereact/confirmpopup'; -import { Dialog } from 'primereact/dialog'; -import type { DialogProps } from 'primereact/dialog'; -import { InputTextarea } from 'primereact/inputtextarea'; -import { Message } from 'primereact/message'; -import { ProgressSpinner } from 'primereact/progressspinner'; -import { Rating } from 'primereact/rating'; -import { Tag } from 'primereact/tag'; -import { Controller, useForm } from 'react-hook-form'; - import { adminApi } from 'api/http'; import { RatingAdminListRetrieve } from 'api/models'; import { @@ -27,7 +15,18 @@ import { requestVideoRatingRetrieveOwnQuery, requestVideoRatingRetrieveQuery, } from 'api/queries'; +import { isAxiosError } from 'axios'; import { getErrorMessage } from 'helpers/ErrorMessageProvider'; +import { Button } from 'primereact/button'; +import { ConfirmPopup, confirmPopup } from 'primereact/confirmpopup'; +import { Dialog } from 'primereact/dialog'; +import type { DialogProps } from 'primereact/dialog'; +import { InputTextarea } from 'primereact/inputtextarea'; +import { Message } from 'primereact/message'; +import { ProgressSpinner } from 'primereact/progressspinner'; +import { Rating } from 'primereact/rating'; +import { Tag } from 'primereact/tag'; +import { Controller, useForm } from 'react-hook-form'; interface RatingDialogProps extends DialogProps { isRated?: boolean; diff --git a/frontend-admin/src/components/RequestCreator/NewRequesterForm.tsx b/frontend-admin/src/components/RequestCreator/NewRequesterForm.tsx index d12a4c435..1cfe5c111 100644 --- a/frontend-admin/src/components/RequestCreator/NewRequesterForm.tsx +++ b/frontend-admin/src/components/RequestCreator/NewRequesterForm.tsx @@ -1,8 +1,7 @@ -import { InputText } from 'primereact/inputtext'; -import type { Control } from 'react-hook-form'; - import FormField from 'components/FormField/FormField'; import { IRequestCreator } from 'pages/RequestCreatorEditorPage'; +import { InputText } from 'primereact/inputtext'; +import type { Control } from 'react-hook-form'; type NewRequesterFormProps = { control: Control; diff --git a/frontend-admin/src/components/RequestsDataTable/RequestsDataTable.tsx b/frontend-admin/src/components/RequestsDataTable/RequestsDataTable.tsx index d5ae3d7ff..d35b0a278 100644 --- a/frontend-admin/src/components/RequestsDataTable/RequestsDataTable.tsx +++ b/frontend-admin/src/components/RequestsDataTable/RequestsDataTable.tsx @@ -1,5 +1,11 @@ import { forwardRef, lazy, Suspense, useState } from 'react'; +import { RequestAdminList } from 'api/models'; +import LinkButton from 'components/LinkButton/LinkButton'; +import { RequestStatusTag } from 'components/StatusTag/StatusTag'; +import User from 'components/User/User'; +import { dateTimeToLocaleString } from 'helpers/DateToLocaleStringCoverters'; +import useMobile from 'hooks/useMobile'; import { Badge } from 'primereact/badge'; import { Column } from 'primereact/column'; import { DataTable } from 'primereact/datatable'; @@ -12,13 +18,6 @@ import { ProgressBar } from 'primereact/progressbar'; import { Skeleton } from 'primereact/skeleton'; import { href } from 'react-router'; -import { RequestAdminList } from 'api/models'; -import LinkButton from 'components/LinkButton/LinkButton'; -import { RequestStatusTag } from 'components/StatusTag/StatusTag'; -import User from 'components/User/User'; -import { dateTimeToLocaleString } from 'helpers/DateToLocaleStringCoverters'; -import useMobile from 'hooks/useMobile'; - const AvatarGroupCrew = lazy(() => import('components/Avatar/AvatarGroupCrew')); const VideosDataTable = lazy( () => import('components/VideosDataTable/VideosDataTable'), diff --git a/frontend-admin/src/components/Search/RequestSearchForm.tsx b/frontend-admin/src/components/Search/RequestSearchForm.tsx index 501880752..aac0f76cf 100644 --- a/frontend-admin/src/components/Search/RequestSearchForm.tsx +++ b/frontend-admin/src/components/Search/RequestSearchForm.tsx @@ -1,18 +1,17 @@ import { Dispatch, SetStateAction, useState } from 'react'; -import { Calendar } from 'primereact/calendar'; -import { Divider } from 'primereact/divider'; -import { InputText } from 'primereact/inputtext'; -import { MultiSelect } from 'primereact/multiselect'; -import { SplitButton } from 'primereact/splitbutton'; -import { Controller, useForm } from 'react-hook-form'; - import { AdminRequestsListStatusEnum } from 'api/endpoints/admin-api'; import { adminApi } from 'api/http'; import { RequestAdminList } from 'api/models'; import { RequestStatusTag } from 'components/StatusTag/StatusTag'; import { REQUEST_STATUSES } from 'components/StatusTag/statusTagConsts'; import { SearchStatusDropdownType } from 'pages/SearchPage'; +import { Calendar } from 'primereact/calendar'; +import { Divider } from 'primereact/divider'; +import { InputText } from 'primereact/inputtext'; +import { MultiSelect } from 'primereact/multiselect'; +import { SplitButton } from 'primereact/splitbutton'; +import { Controller, useForm } from 'react-hook-form'; interface IRequesterSearchForm { start_datetime_after: Date | null; diff --git a/frontend-admin/src/components/Search/VideoSearchForm.tsx b/frontend-admin/src/components/Search/VideoSearchForm.tsx index 34172424f..4c4d194e4 100644 --- a/frontend-admin/src/components/Search/VideoSearchForm.tsx +++ b/frontend-admin/src/components/Search/VideoSearchForm.tsx @@ -1,5 +1,11 @@ import { Dispatch, SetStateAction, useState } from 'react'; +import { AdminVideosListStatusEnum } from 'api/endpoints/admin-api'; +import { adminApi } from 'api/http'; +import { VideoAdminSearch } from 'api/models/video-admin-search'; +import { VideoStatusTag } from 'components/StatusTag/StatusTag'; +import { VIDEO_STATUSES } from 'components/StatusTag/statusTagConsts'; +import { SearchStatusDropdownType } from 'pages/SearchPage'; import { Calendar } from 'primereact/calendar'; import { Divider } from 'primereact/divider'; import { InputMask } from 'primereact/inputmask'; @@ -8,13 +14,6 @@ import { MultiSelect } from 'primereact/multiselect'; import { SplitButton } from 'primereact/splitbutton'; import { Controller, useForm } from 'react-hook-form'; -import { AdminVideosListStatusEnum } from 'api/endpoints/admin-api'; -import { adminApi } from 'api/http'; -import { VideoAdminSearch } from 'api/models/video-admin-search'; -import { VideoStatusTag } from 'components/StatusTag/StatusTag'; -import { VIDEO_STATUSES } from 'components/StatusTag/statusTagConsts'; -import { SearchStatusDropdownType } from 'pages/SearchPage'; - interface IVideoSearchForm { last_aired: Date | null; length_max?: string; diff --git a/frontend-admin/src/components/StatusHelperSlideover/RequestStatusHelperSlideover.tsx b/frontend-admin/src/components/StatusHelperSlideover/RequestStatusHelperSlideover.tsx index fb4fe8595..a6164159c 100644 --- a/frontend-admin/src/components/StatusHelperSlideover/RequestStatusHelperSlideover.tsx +++ b/frontend-admin/src/components/StatusHelperSlideover/RequestStatusHelperSlideover.tsx @@ -1,13 +1,12 @@ import { useRef } from 'react'; +import { REQUEST_STATUSES } from 'components/StatusTag/statusTagConsts'; +import useMobile from 'hooks/useMobile'; import { Button } from 'primereact/button'; import { Message } from 'primereact/message'; import { StyleClass } from 'primereact/styleclass'; import { classNames } from 'primereact/utils'; -import { REQUEST_STATUSES } from 'components/StatusTag/statusTagConsts'; -import useMobile from 'hooks/useMobile'; - import { ActiveCompleteTaskItem, ActivePendingTaskItem, diff --git a/frontend-admin/src/components/StatusHelperSlideover/VideoStatusHelperSlideover.tsx b/frontend-admin/src/components/StatusHelperSlideover/VideoStatusHelperSlideover.tsx index 9b5ddc0bf..4d67ecd60 100644 --- a/frontend-admin/src/components/StatusHelperSlideover/VideoStatusHelperSlideover.tsx +++ b/frontend-admin/src/components/StatusHelperSlideover/VideoStatusHelperSlideover.tsx @@ -1,13 +1,12 @@ import { useRef } from 'react'; +import { VIDEO_STATUSES } from 'components/StatusTag/statusTagConsts'; +import useMobile from 'hooks/useMobile'; import { Button } from 'primereact/button'; import { Message } from 'primereact/message'; import { StyleClass } from 'primereact/styleclass'; import { classNames } from 'primereact/utils'; -import { VIDEO_STATUSES } from 'components/StatusTag/statusTagConsts'; -import useMobile from 'hooks/useMobile'; - import { ActiveCompleteTaskItem, ActivePendingTaskItem, diff --git a/frontend-admin/src/components/StatusHelperSlideover/components/Tasks.tsx b/frontend-admin/src/components/StatusHelperSlideover/components/Tasks.tsx index 889b52fce..73311af2f 100644 --- a/frontend-admin/src/components/StatusHelperSlideover/components/Tasks.tsx +++ b/frontend-admin/src/components/StatusHelperSlideover/components/Tasks.tsx @@ -1,10 +1,9 @@ import React from 'react'; -import { classNames } from 'primereact/utils'; -import type { IconType } from 'primereact/utils'; - import { StatusStyle } from 'components/StatusTag/StatusTagTypes'; import { useTheme } from 'hooks/useTheme'; +import { classNames } from 'primereact/utils'; +import type { IconType } from 'primereact/utils'; type ActiveTaskItemProps = { label: string; diff --git a/frontend-admin/src/components/Todos/TodoDialog.tsx b/frontend-admin/src/components/Todos/TodoDialog.tsx index 2d3d16d33..a84b691e0 100644 --- a/frontend-admin/src/components/Todos/TodoDialog.tsx +++ b/frontend-admin/src/components/Todos/TodoDialog.tsx @@ -5,17 +5,6 @@ import { useMutation, useQueryClient, } from '@tanstack/react-query'; -import { isAxiosError } from 'axios'; -import { Button } from 'primereact/button'; -import { ConfirmPopup } from 'primereact/confirmpopup'; -import { Dialog } from 'primereact/dialog'; -import type { DialogProps } from 'primereact/dialog'; -import { Dropdown } from 'primereact/dropdown'; -import { InputTextarea } from 'primereact/inputtextarea'; -import { Message } from 'primereact/message'; -import { ProgressSpinner } from 'primereact/progressspinner'; -import { Controller, useForm } from 'react-hook-form'; - import { StatusEnum, TodoAdminListRetrieve } from 'api/models'; import { requestTodoCreateMutation, @@ -23,9 +12,19 @@ import { todoUpdateMutation, } from 'api/mutations'; import { todoRetrieveQuery } from 'api/queries'; +import { isAxiosError } from 'axios'; import AutoCompleteStaffMultiple from 'components/AutoCompleteStaff/AutoCompleteStaffMultiple'; import { TodoStatusTag } from 'components/StatusTag/StatusTag'; import { getErrorMessage } from 'helpers/ErrorMessageProvider'; +import { Button } from 'primereact/button'; +import { ConfirmPopup } from 'primereact/confirmpopup'; +import { Dialog } from 'primereact/dialog'; +import type { DialogProps } from 'primereact/dialog'; +import { Dropdown } from 'primereact/dropdown'; +import { InputTextarea } from 'primereact/inputtextarea'; +import { Message } from 'primereact/message'; +import { ProgressSpinner } from 'primereact/progressspinner'; +import { Controller, useForm } from 'react-hook-form'; interface TodoDialogCreateProps extends DialogProps { todoId: number; diff --git a/frontend-admin/src/components/Todos/Todos.tsx b/frontend-admin/src/components/Todos/Todos.tsx index f9d834e3b..54f923b78 100644 --- a/frontend-admin/src/components/Todos/Todos.tsx +++ b/frontend-admin/src/components/Todos/Todos.tsx @@ -1,29 +1,28 @@ import { lazy, MouseEventHandler, useState } from 'react'; import { useQuery, useQueryClient } from '@tanstack/react-query'; +import { adminApi } from 'api/http'; +import { TodoAdminListRetrieve } from 'api/models/todo-admin-list-retrieve'; +import { requestTodosListQuery, requestVideoTodosListQuery } from 'api/queries'; import { isAxiosError } from 'axios'; +import { TodoStatusTag } from 'components/StatusTag/StatusTag'; +import { dateTimeToLocaleString } from 'helpers/DateToLocaleStringCoverters'; +import { getErrorMessage } from 'helpers/ErrorMessageProvider'; +import { getUserId, isAdmin } from 'helpers/LocalStorageHelper'; +import TimeAgo from 'helpers/TimeAgo'; +import useMobile from 'hooks/useMobile'; import { Button } from 'primereact/button'; import { confirmDialog } from 'primereact/confirmdialog'; -import { Panel } from 'primereact/panel'; import type { PanelFooterTemplateOptions, PanelHeaderTemplateOptions, } from 'primereact/panel'; +import { Panel } from 'primereact/panel'; import { ProgressBar } from 'primereact/progressbar'; import { Tooltip } from 'primereact/tooltip'; import { classNames } from 'primereact/utils'; -import { href, Link } from 'react-router'; - -import { adminApi } from 'api/http'; -import { TodoAdminListRetrieve } from 'api/models/todo-admin-list-retrieve'; -import { requestTodosListQuery, requestVideoTodosListQuery } from 'api/queries'; -import { TodoStatusTag } from 'components/StatusTag/StatusTag'; -import { dateTimeToLocaleString } from 'helpers/DateToLocaleStringCoverters'; -import { getErrorMessage } from 'helpers/ErrorMessageProvider'; -import { getUserId, isAdmin } from 'helpers/LocalStorageHelper'; -import TimeAgo from 'helpers/TimeAgo'; -import useMobile from 'hooks/useMobile'; import { useToast } from 'providers/ToastProvider'; +import { href, Link } from 'react-router'; import TodoDialog from './TodoDialog'; diff --git a/frontend-admin/src/components/User/User.tsx b/frontend-admin/src/components/User/User.tsx index d8f271467..b300f845a 100644 --- a/frontend-admin/src/components/User/User.tsx +++ b/frontend-admin/src/components/User/User.tsx @@ -1,6 +1,5 @@ -import { classNames } from 'primereact/utils'; - import Avatar from 'components/Avatar/Avatar'; +import { classNames } from 'primereact/utils'; interface UserProps { className?: string; diff --git a/frontend-admin/src/components/UserProfile/AvatarDialog.tsx b/frontend-admin/src/components/UserProfile/AvatarDialog.tsx index 2b3f2d6ff..693ec746f 100644 --- a/frontend-admin/src/components/UserProfile/AvatarDialog.tsx +++ b/frontend-admin/src/components/UserProfile/AvatarDialog.tsx @@ -1,13 +1,12 @@ import { forwardRef, useEffect, useState } from 'react'; +import { UserAdminRetrieveUpdate } from 'api/models/user-admin-retrieve-update'; import { Button } from 'primereact/button'; import { Dialog } from 'primereact/dialog'; import type { DialogProps } from 'primereact/dialog'; import { RadioButton } from 'primereact/radiobutton'; import { classNames } from 'primereact/utils'; -import { UserAdminRetrieveUpdate } from 'api/models/user-admin-retrieve-update'; - interface AvatarDialogProps extends DialogProps { loading: boolean; onSave(provider: string): void; diff --git a/frontend-admin/src/components/UserProfile/BanSection.tsx b/frontend-admin/src/components/UserProfile/BanSection.tsx index fb8fc438d..2ce1fb793 100644 --- a/frontend-admin/src/components/UserProfile/BanSection.tsx +++ b/frontend-admin/src/components/UserProfile/BanSection.tsx @@ -1,16 +1,15 @@ import { useState } from 'react'; import { useQueryClient } from '@tanstack/react-query'; -import { Button } from 'primereact/button'; -import { Divider } from 'primereact/divider'; -import { InputTextarea } from 'primereact/inputtextarea'; - import { adminApi } from 'api/http'; import { BanUser } from 'api/models/ban-user'; import User from 'components/User/User'; import { dateTimeToLocaleString } from 'helpers/DateToLocaleStringCoverters'; import { getErrorMessage } from 'helpers/ErrorMessageProvider'; import { getUserId, isAdmin } from 'helpers/LocalStorageHelper'; +import { Button } from 'primereact/button'; +import { Divider } from 'primereact/divider'; +import { InputTextarea } from 'primereact/inputtextarea'; import { useToast } from 'providers/ToastProvider'; type BanSectionProps = { diff --git a/frontend-admin/src/components/UserProfile/ProfileSection.tsx b/frontend-admin/src/components/UserProfile/ProfileSection.tsx index f15d2183a..c31808749 100644 --- a/frontend-admin/src/components/UserProfile/ProfileSection.tsx +++ b/frontend-admin/src/components/UserProfile/ProfileSection.tsx @@ -1,7 +1,12 @@ import { lazy, useEffect, useState } from 'react'; import { useMutation, useQueryClient } from '@tanstack/react-query'; +import { AvatarProviderEnum, UserAdminRetrieveUpdate } from 'api'; +import { userUpdateMutation } from 'api/mutations'; import { isAxiosError } from 'axios'; +import FormField from 'components/FormField/FormField'; +import { getErrorMessage } from 'helpers/ErrorMessageProvider'; +import { getUserId, isAdmin } from 'helpers/LocalStorageHelper'; import { Avatar } from 'primereact/avatar'; import { Button } from 'primereact/button'; import { Chip } from 'primereact/chip'; @@ -11,16 +16,10 @@ import { Message } from 'primereact/message'; import { SplitButton } from 'primereact/splitbutton'; import { Tag } from 'primereact/tag'; import { classNames } from 'primereact/utils'; +import { useToast } from 'providers/ToastProvider'; import { useForm } from 'react-hook-form'; import type { SubmitHandler } from 'react-hook-form'; -import { AvatarProviderEnum, UserAdminRetrieveUpdate } from 'api'; -import { userUpdateMutation } from 'api/mutations'; -import FormField from 'components/FormField/FormField'; -import { getErrorMessage } from 'helpers/ErrorMessageProvider'; -import { getUserId, isAdmin } from 'helpers/LocalStorageHelper'; -import { useToast } from 'providers/ToastProvider'; - const AvatarDialog = lazy(() => import('components/UserProfile/AvatarDialog')); interface ProfileSectionProps { diff --git a/frontend-admin/src/components/UserProfile/WorkedOnSection.tsx b/frontend-admin/src/components/UserProfile/WorkedOnSection.tsx index 58d78d8f8..aab018e14 100644 --- a/frontend-admin/src/components/UserProfile/WorkedOnSection.tsx +++ b/frontend-admin/src/components/UserProfile/WorkedOnSection.tsx @@ -1,5 +1,9 @@ import { useRef, useState } from 'react'; +import { adminApi } from 'api/http'; +import { UserAdminWorkedOn } from 'api/models/user-admin-worked-on'; +import LinkButton from 'components/LinkButton/LinkButton'; +import { dateTimeToLocaleString } from 'helpers/DateToLocaleStringCoverters'; import { Button } from 'primereact/button'; import { Calendar } from 'primereact/calendar'; import { Column } from 'primereact/column'; @@ -11,11 +15,6 @@ import { SplitButton } from 'primereact/splitbutton'; import { Controller, useForm } from 'react-hook-form'; import { href } from 'react-router'; -import { adminApi } from 'api/http'; -import { UserAdminWorkedOn } from 'api/models/user-admin-worked-on'; -import LinkButton from 'components/LinkButton/LinkButton'; -import { dateTimeToLocaleString } from 'helpers/DateToLocaleStringCoverters'; - interface IWorkedOnForm { is_responsible: boolean; start_datetime_after: Date | null; diff --git a/frontend-admin/src/components/UsersDataTable/UsersDataTable.tsx b/frontend-admin/src/components/UsersDataTable/UsersDataTable.tsx index dfcd7c269..006b2d2e3 100644 --- a/frontend-admin/src/components/UsersDataTable/UsersDataTable.tsx +++ b/frontend-admin/src/components/UsersDataTable/UsersDataTable.tsx @@ -1,6 +1,10 @@ import { forwardRef } from 'react'; import { useQuery } from '@tanstack/react-query'; +import { UserAdminList } from 'api/models'; +import { usersListQuery } from 'api/queries'; +import LinkButton from 'components/LinkButton/LinkButton'; +import User from 'components/User/User'; import { FilterMatchMode } from 'primereact/api'; import { Column } from 'primereact/column'; import type { ColumnFilterElementTemplateOptions } from 'primereact/column'; @@ -9,11 +13,6 @@ import type { DataTableProps, DataTableValueArray } from 'primereact/datatable'; import { TriStateCheckbox } from 'primereact/tristatecheckbox'; import { href } from 'react-router'; -import { UserAdminList } from 'api/models'; -import { usersListQuery } from 'api/queries'; -import LinkButton from 'components/LinkButton/LinkButton'; -import User from 'components/User/User'; - import stylesModule from './UsersDataTable.module.css'; const UsersDataTable = forwardRef< diff --git a/frontend-admin/src/components/VideosDataTable/VideoSearchDataTable.tsx b/frontend-admin/src/components/VideosDataTable/VideoSearchDataTable.tsx index c6cd7f84f..9cac0243a 100644 --- a/frontend-admin/src/components/VideosDataTable/VideoSearchDataTable.tsx +++ b/frontend-admin/src/components/VideosDataTable/VideoSearchDataTable.tsx @@ -1,17 +1,16 @@ import { forwardRef } from 'react'; -import { Column } from 'primereact/column'; -import { DataTable } from 'primereact/datatable'; -import type { DataTableProps, DataTableValueArray } from 'primereact/datatable'; -import { Rating } from 'primereact/rating'; -import { href } from 'react-router'; - import { VideoAdminSearch } from 'api/models'; import LinkButton from 'components/LinkButton/LinkButton'; import { VideoStatusTag } from 'components/StatusTag/StatusTag'; import User from 'components/User/User'; import { dateToLocaleString } from 'helpers/DateToLocaleStringCoverters'; import useMobile from 'hooks/useMobile'; +import { Column } from 'primereact/column'; +import type { DataTableProps, DataTableValueArray } from 'primereact/datatable'; +import { DataTable } from 'primereact/datatable'; +import { Rating } from 'primereact/rating'; +import { href } from 'react-router'; interface VideoAdminSearchDates // TODO: Rename? extends Omit { diff --git a/frontend-admin/src/components/VideosDataTable/VideosDataTable.tsx b/frontend-admin/src/components/VideosDataTable/VideosDataTable.tsx index 690fe8ab3..d8162d225 100644 --- a/frontend-admin/src/components/VideosDataTable/VideosDataTable.tsx +++ b/frontend-admin/src/components/VideosDataTable/VideosDataTable.tsx @@ -1,6 +1,11 @@ import { forwardRef, lazy, Suspense, useState } from 'react'; import { useQuery } from '@tanstack/react-query'; +import { VideoAdminRetrieve } from 'api/models'; +import { requestVideosListQuery } from 'api/queries'; +import LinkButton from 'components/LinkButton/LinkButton'; +import { VideoStatusTag } from 'components/StatusTag/StatusTag'; +import User from 'components/User/User'; import { Button } from 'primereact/button'; import { Column } from 'primereact/column'; import { DataTable } from 'primereact/datatable'; @@ -8,12 +13,6 @@ import type { DataTableProps, DataTableValueArray } from 'primereact/datatable'; import { Rating } from 'primereact/rating'; import { href } from 'react-router'; -import { VideoAdminRetrieve } from 'api/models'; -import { requestVideosListQuery } from 'api/queries'; -import LinkButton from 'components/LinkButton/LinkButton'; -import { VideoStatusTag } from 'components/StatusTag/StatusTag'; -import User from 'components/User/User'; - const RatingDialog = lazy(() => import('components/RatingDialog/RatingDialog')); type VideosDataTableProps = DataTableProps & { diff --git a/frontend-admin/src/index.tsx b/frontend-admin/src/index.tsx index 99360a8dc..c68a0200c 100644 --- a/frontend-admin/src/index.tsx +++ b/frontend-admin/src/index.tsx @@ -3,8 +3,11 @@ import { StrictMode, useEffect } from 'react'; import * as Sentry from '@sentry/react'; import { QueryClientProvider } from '@tanstack/react-query'; import { ReactQueryDevtools } from '@tanstack/react-query-devtools'; +import { getName } from 'helpers/LocalStorageHelper'; import * as locales from 'primelocale/hu.json'; import { PrimeReactProvider, addLocale } from 'primereact/api'; +import { ThemeProvider } from 'providers/ThemeProvider'; +import { ToastProvider } from 'providers/ToastProvider'; import { createRoot } from 'react-dom/client'; import { createRoutesFromChildren, @@ -13,14 +16,10 @@ import { useNavigationType, } from 'react-router'; import { RouterProvider } from 'react-router/dom'; +import router, { queryClient } from 'router'; import { register } from 'timeago.js'; import huLocal from 'timeago.js/lib/lang/hu'; -import { getName } from 'helpers/LocalStorageHelper'; -import { ThemeProvider } from 'providers/ThemeProvider'; -import { ToastProvider } from 'providers/ToastProvider'; -import router, { queryClient } from 'router'; - import 'bootstrap-icons/font/bootstrap-icons.css'; import 'primeicons/primeicons.css'; import 'primeflex/primeflex.css'; diff --git a/frontend-admin/src/pages/LandingPage.tsx b/frontend-admin/src/pages/LandingPage.tsx index 5dd2a0b00..0e8ac4771 100644 --- a/frontend-admin/src/pages/LandingPage.tsx +++ b/frontend-admin/src/pages/LandingPage.tsx @@ -1,13 +1,6 @@ import { lazy, Suspense, useState } from 'react'; import { useQuery } from '@tanstack/react-query'; -import { Column } from 'primereact/column'; -import { ConfirmDialog } from 'primereact/confirmdialog'; -import { DataTable } from 'primereact/datatable'; -import { Divider } from 'primereact/divider'; -import { Skeleton } from 'primereact/skeleton'; -import { href } from 'react-router'; - import { adminApi } from 'api/http'; import { RequestAdminList } from 'api/models/request-admin-list'; import { VideoAdminSearch } from 'api/models/video-admin-search'; @@ -21,6 +14,12 @@ import Todos from 'components/Todos/Todos'; import User from 'components/User/User'; import { dateTimeToLocaleString } from 'helpers/DateToLocaleStringCoverters'; import { getUserId } from 'helpers/LocalStorageHelper'; +import { Column } from 'primereact/column'; +import { ConfirmDialog } from 'primereact/confirmdialog'; +import { DataTable } from 'primereact/datatable'; +import { Divider } from 'primereact/divider'; +import { Skeleton } from 'primereact/skeleton'; +import { href } from 'react-router'; const AvatarGroupCrew = lazy(() => import('components/Avatar/AvatarGroupCrew')); diff --git a/frontend-admin/src/pages/RequestCreatorEditorPage.tsx b/frontend-admin/src/pages/RequestCreatorEditorPage.tsx index e30f18182..390f6e6db 100644 --- a/frontend-admin/src/pages/RequestCreatorEditorPage.tsx +++ b/frontend-admin/src/pages/RequestCreatorEditorPage.tsx @@ -1,7 +1,16 @@ import { Suspense, lazy, useEffect, useMemo, useState } from 'react'; import { useMutation, useQuery } from '@tanstack/react-query'; +import { RequestAdminRetrieve, UserNestedDetail } from 'api/models'; +import { requestCreateMutation, requestUpdateMutation } from 'api/mutations'; +import { requestRetrieveQuery } from 'api/queries'; import { isAxiosError } from 'axios'; +import AutoCompleteStaff from 'components/AutoCompleteStaff/AutoCompleteStaff'; +import FormField from 'components/FormField/FormField'; +import LastUpdatedAt from 'components/LastUpdatedAt/LastUpdatedAt'; +import { getErrorMessage } from 'helpers/ErrorMessageProvider'; +import { getName } from 'helpers/LocalStorageHelper'; +import useMobile from 'hooks/useMobile'; import { Calendar } from 'primereact/calendar'; import { Checkbox } from 'primereact/checkbox'; import { Divider } from 'primereact/divider'; @@ -13,6 +22,7 @@ import { ProgressBar } from 'primereact/progressbar'; import { SelectButton } from 'primereact/selectbutton'; import { SplitButton } from 'primereact/splitbutton'; import type { IconType } from 'primereact/utils'; +import { useToast } from 'providers/ToastProvider'; import { Controller, useForm } from 'react-hook-form'; import type { SubmitHandler } from 'react-hook-form'; import { @@ -22,16 +32,6 @@ import { useRevalidator, } from 'react-router'; -import { RequestAdminRetrieve, UserNestedDetail } from 'api/models'; -import { requestCreateMutation, requestUpdateMutation } from 'api/mutations'; -import { requestRetrieveQuery } from 'api/queries'; -import AutoCompleteStaff from 'components/AutoCompleteStaff/AutoCompleteStaff'; -import FormField from 'components/FormField/FormField'; -import LastUpdatedAt from 'components/LastUpdatedAt/LastUpdatedAt'; -import { getErrorMessage } from 'helpers/ErrorMessageProvider'; -import { getName } from 'helpers/LocalStorageHelper'; -import useMobile from 'hooks/useMobile'; -import { useToast } from 'providers/ToastProvider'; import { queryClient } from 'router'; const NewRequesterForm = lazy( diff --git a/frontend-admin/src/pages/RequestDetailsPage.tsx b/frontend-admin/src/pages/RequestDetailsPage.tsx index 6c0c5cac2..60159fd06 100644 --- a/frontend-admin/src/pages/RequestDetailsPage.tsx +++ b/frontend-admin/src/pages/RequestDetailsPage.tsx @@ -1,16 +1,6 @@ import { lazy, Suspense, useEffect, useRef, useState } from 'react'; import { useMutation, useQuery } from '@tanstack/react-query'; -import { isAxiosError } from 'axios'; -import { Badge } from 'primereact/badge'; -import { Button } from 'primereact/button'; -import { ConfirmDialog, confirmDialog } from 'primereact/confirmdialog'; -import { ProgressBar } from 'primereact/progressbar'; -import { StyleClass } from 'primereact/styleclass'; -import { TabView, TabPanel } from 'primereact/tabview'; -import { Tag } from 'primereact/tag'; -import { classNames } from 'primereact/utils'; -import { useForm } from 'react-hook-form'; import type { SubmitHandler } from 'react-hook-form'; import { href, useNavigate, useParams } from 'react-router'; @@ -18,6 +8,7 @@ import { adminApi } from 'api/http'; import { RequestAdminRetrieve } from 'api/models'; import { requestUpdateMutation } from 'api/mutations'; import { requestRetrieveQuery } from 'api/queries'; +import { isAxiosError } from 'axios'; import AvatarGroupCrew from 'components/Avatar/AvatarGroupCrew'; import DetailsRow from 'components/Details/DetailsRow'; import JumpButton from 'components/Details/Request/JumpButton'; @@ -40,7 +31,16 @@ import { import { getErrorMessage } from 'helpers/ErrorMessageProvider'; import { getUserId, isAdmin } from 'helpers/LocalStorageHelper'; import useMobile from 'hooks/useMobile'; +import { Badge } from 'primereact/badge'; +import { Button } from 'primereact/button'; +import { ConfirmDialog, confirmDialog } from 'primereact/confirmdialog'; +import { ProgressBar } from 'primereact/progressbar'; +import { StyleClass } from 'primereact/styleclass'; +import { TabView, TabPanel } from 'primereact/tabview'; +import { Tag } from 'primereact/tag'; +import { classNames } from 'primereact/utils'; import { useToast } from 'providers/ToastProvider'; +import { useForm } from 'react-hook-form'; import { queryClient } from 'router'; import { RequestAdditionalDataRecordingType } from 'types/additionalDataTypes'; diff --git a/frontend-admin/src/pages/RequestsListPage.tsx b/frontend-admin/src/pages/RequestsListPage.tsx index 01161d176..f8430e245 100644 --- a/frontend-admin/src/pages/RequestsListPage.tsx +++ b/frontend-admin/src/pages/RequestsListPage.tsx @@ -1,9 +1,6 @@ import { useState } from 'react'; import { useQuery } from '@tanstack/react-query'; -import { Dropdown } from 'primereact/dropdown'; -import type { DropdownChangeEvent } from 'primereact/dropdown'; - import { requestsListQuery } from 'api/queries'; import LastUpdatedAt from 'components/LastUpdatedAt/LastUpdatedAt'; import RequestsDataTable from 'components/RequestsDataTable/RequestsDataTable'; @@ -12,6 +9,8 @@ import { getLatestSemester, getSemesters, } from 'helpers/SemesterHelper'; +import type { DropdownChangeEvent } from 'primereact/dropdown'; +import { Dropdown } from 'primereact/dropdown'; import { queryClient } from 'router'; export async function loader() { diff --git a/frontend-admin/src/pages/SearchPage.tsx b/frontend-admin/src/pages/SearchPage.tsx index e65902a85..b4334e6ca 100644 --- a/frontend-admin/src/pages/SearchPage.tsx +++ b/frontend-admin/src/pages/SearchPage.tsx @@ -1,13 +1,12 @@ import { useState } from 'react'; -import { ToggleButton } from 'primereact/togglebutton'; - import { RequestAdminList, VideoAdminSearch } from 'api/models'; import RequestsDataTable from 'components/RequestsDataTable/RequestsDataTable'; import RequestSearchForm from 'components/Search/RequestSearchForm'; import VideoSearchForm from 'components/Search/VideoSearchForm'; import { Status } from 'components/StatusTag/StatusTagTypes'; import VideoSearchDataTable from 'components/VideosDataTable/VideoSearchDataTable'; +import { ToggleButton } from 'primereact/togglebutton'; export type SearchStatusDropdownType = Status & { status: number }; diff --git a/frontend-admin/src/pages/TodosPage.tsx b/frontend-admin/src/pages/TodosPage.tsx index e585cb1fb..839ee00b8 100644 --- a/frontend-admin/src/pages/TodosPage.tsx +++ b/frontend-admin/src/pages/TodosPage.tsx @@ -1,12 +1,6 @@ import { useState } from 'react'; import { useQuery } from '@tanstack/react-query'; -import type { AutoCompleteChangeEvent } from 'primereact/autocomplete'; -import { ConfirmDialog } from 'primereact/confirmdialog'; -import { Dropdown } from 'primereact/dropdown'; -import { MultiSelect } from 'primereact/multiselect'; -import type { MultiSelectChangeEvent } from 'primereact/multiselect'; - import { StatusEnum } from 'api/models/status-enum'; import { UserAdminList } from 'api/models/user-admin-list'; import { todosListQuery } from 'api/queries'; @@ -16,6 +10,11 @@ import { TodoStatusTag } from 'components/StatusTag/StatusTag'; import { TODO_STATUSES } from 'components/StatusTag/statusTagConsts'; import { StatusStyle } from 'components/StatusTag/StatusTagTypes'; import Todos from 'components/Todos/Todos'; +import type { AutoCompleteChangeEvent } from 'primereact/autocomplete'; +import { ConfirmDialog } from 'primereact/confirmdialog'; +import { Dropdown } from 'primereact/dropdown'; +import type { MultiSelectChangeEvent } from 'primereact/multiselect'; +import { MultiSelect } from 'primereact/multiselect'; import { queryClient } from 'router'; export async function loader() { diff --git a/frontend-admin/src/pages/UserProfilePage.tsx b/frontend-admin/src/pages/UserProfilePage.tsx index 661f330c4..7c4350c56 100644 --- a/frontend-admin/src/pages/UserProfilePage.tsx +++ b/frontend-admin/src/pages/UserProfilePage.tsx @@ -1,15 +1,14 @@ import { Suspense, lazy, useState } from 'react'; import { useQuery } from '@tanstack/react-query'; -import { isAxiosError } from 'axios'; -import { ProgressBar } from 'primereact/progressbar'; -import { useNavigate, useParams } from 'react-router'; - import { usersRetrieveQuery } from 'api/queries'; +import { isAxiosError } from 'axios'; import LastUpdatedAt from 'components/LastUpdatedAt/LastUpdatedAt'; import NavigationButton from 'components/UserProfile/NavigationButton'; import { getErrorMessage } from 'helpers/ErrorMessageProvider'; +import { ProgressBar } from 'primereact/progressbar'; import { useToast } from 'providers/ToastProvider'; +import { useNavigate, useParams } from 'react-router'; import { queryClient } from 'router'; const BanSection = lazy(() => import('components/UserProfile/BanSection')); diff --git a/frontend-admin/src/pages/UsersListPage.tsx b/frontend-admin/src/pages/UsersListPage.tsx index 083d1ef0b..bc61abffd 100644 --- a/frontend-admin/src/pages/UsersListPage.tsx +++ b/frontend-admin/src/pages/UsersListPage.tsx @@ -1,5 +1,7 @@ import { ChangeEvent, useEffect, useState } from 'react'; +import { usersListQuery } from 'api/queries'; +import UsersDataTable from 'components/UsersDataTable/UsersDataTable'; import { FilterMatchMode, FilterOperator } from 'primereact/api'; import { Button } from 'primereact/button'; import type { @@ -9,9 +11,6 @@ import type { import { IconField } from 'primereact/iconfield'; import { InputIcon } from 'primereact/inputicon'; import { InputText } from 'primereact/inputtext'; - -import { usersListQuery } from 'api/queries'; -import UsersDataTable from 'components/UsersDataTable/UsersDataTable'; import { queryClient } from 'router'; export async function loader() { diff --git a/frontend-admin/src/pages/VideoCreatorEditorPage.tsx b/frontend-admin/src/pages/VideoCreatorEditorPage.tsx index 183839aba..1e9d2afc6 100644 --- a/frontend-admin/src/pages/VideoCreatorEditorPage.tsx +++ b/frontend-admin/src/pages/VideoCreatorEditorPage.tsx @@ -1,13 +1,24 @@ import { useEffect, useMemo, useState } from 'react'; import { useMutation, useQuery } from '@tanstack/react-query'; +import { UserNestedList, VideoAdminRetrieve } from 'api/models'; +import { + requestVideoUpdateMutation, + requestVideoCreateMutation, +} from 'api/mutations'; +import { requestVideoRetrieveQuery } from 'api/queries'; import { isAxiosError } from 'axios'; +import AutoCompleteStaff from 'components/AutoCompleteStaff/AutoCompleteStaff'; +import FormField from 'components/FormField/FormField'; +import LastUpdatedAt from 'components/LastUpdatedAt/LastUpdatedAt'; +import { getErrorMessage } from 'helpers/ErrorMessageProvider'; import { Divider } from 'primereact/divider'; import { InputMask } from 'primereact/inputmask'; import { InputText } from 'primereact/inputtext'; import { Message } from 'primereact/message'; import { SplitButton } from 'primereact/splitbutton'; import { ToggleButton } from 'primereact/togglebutton'; +import { useToast } from 'providers/ToastProvider'; import { Controller, useForm } from 'react-hook-form'; import type { SubmitHandler } from 'react-hook-form'; import { @@ -16,18 +27,6 @@ import { useParams, useRevalidator, } from 'react-router'; - -import { UserNestedList, VideoAdminRetrieve } from 'api/models'; -import { - requestVideoUpdateMutation, - requestVideoCreateMutation, -} from 'api/mutations'; -import { requestVideoRetrieveQuery } from 'api/queries'; -import AutoCompleteStaff from 'components/AutoCompleteStaff/AutoCompleteStaff'; -import FormField from 'components/FormField/FormField'; -import LastUpdatedAt from 'components/LastUpdatedAt/LastUpdatedAt'; -import { getErrorMessage } from 'helpers/ErrorMessageProvider'; -import { useToast } from 'providers/ToastProvider'; import { queryClient } from 'router'; export interface IVideoCreator { diff --git a/frontend-admin/src/pages/VideoDetailsPage.tsx b/frontend-admin/src/pages/VideoDetailsPage.tsx index 8b6530cbb..dd4f8e0b7 100644 --- a/frontend-admin/src/pages/VideoDetailsPage.tsx +++ b/frontend-admin/src/pages/VideoDetailsPage.tsx @@ -1,20 +1,11 @@ import { Suspense, lazy, useRef, useState } from 'react'; import { useMutation, useQuery } from '@tanstack/react-query'; -import { isAxiosError } from 'axios'; -import { Button } from 'primereact/button'; -import { Chip } from 'primereact/chip'; -import { ConfirmDialog, confirmDialog } from 'primereact/confirmdialog'; -import { ProgressBar } from 'primereact/progressbar'; -import { StyleClass } from 'primereact/styleclass'; -import { TabView, TabPanel } from 'primereact/tabview'; -import { Tag } from 'primereact/tag'; -import { classNames } from 'primereact/utils'; -import { href, useNavigate, useParams } from 'react-router'; import { adminApi } from 'api/http'; import { requestVideoUpdateMutation } from 'api/mutations'; import { requestVideoRetrieveQuery } from 'api/queries'; +import { isAxiosError } from 'axios'; import DetailsRow from 'components/Details/DetailsRow'; import LastUpdatedAt from 'components/LastUpdatedAt/LastUpdatedAt'; import LinkButton from 'components/LinkButton/LinkButton'; @@ -22,7 +13,16 @@ import { VideoStatusTag } from 'components/StatusTag/StatusTag'; import User from 'components/User/User'; import { getErrorMessage } from 'helpers/ErrorMessageProvider'; import useMobile from 'hooks/useMobile'; +import { Button } from 'primereact/button'; +import { Chip } from 'primereact/chip'; +import { ConfirmDialog, confirmDialog } from 'primereact/confirmdialog'; +import { ProgressBar } from 'primereact/progressbar'; +import { StyleClass } from 'primereact/styleclass'; +import { TabView, TabPanel } from 'primereact/tabview'; +import { Tag } from 'primereact/tag'; +import { classNames } from 'primereact/utils'; import { useToast } from 'providers/ToastProvider'; +import { href, useNavigate, useParams } from 'react-router'; import { queryClient } from 'router'; const AdditionalDataDialog = lazy( diff --git a/frontend-admin/src/pages/VideosListPage.tsx b/frontend-admin/src/pages/VideosListPage.tsx index f87ee66d8..f2fb6c478 100644 --- a/frontend-admin/src/pages/VideosListPage.tsx +++ b/frontend-admin/src/pages/VideosListPage.tsx @@ -1,11 +1,10 @@ import { useQuery } from '@tanstack/react-query'; -import { classNames } from 'primereact/utils'; -import { href, useParams } from 'react-router'; - import { requestRetrieveQuery, requestVideosListQuery } from 'api/queries'; import LinkButton from 'components/LinkButton/LinkButton'; import VideosDataTable from 'components/VideosDataTable/VideosDataTable'; import useMobile from 'hooks/useMobile'; +import { classNames } from 'primereact/utils'; +import { href, useParams } from 'react-router'; import { queryClient } from 'router'; // eslint-disable-next-line @typescript-eslint/no-explicit-any diff --git a/frontend-admin/src/router.tsx b/frontend-admin/src/router.tsx index 8017a4593..bd96f8f31 100644 --- a/frontend-admin/src/router.tsx +++ b/frontend-admin/src/router.tsx @@ -1,14 +1,5 @@ import { wrapCreateBrowserRouterV7 } from '@sentry/react'; import { QueryClient } from '@tanstack/react-query'; -import { BlockUI } from 'primereact/blockui'; -import { ProgressSpinner } from 'primereact/progressspinner'; -import { - createBrowserRouter, - createRoutesFromElements, - Outlet, - Route, -} from 'react-router'; - import { RequestAdminRetrieve, UserAdminRetrieveUpdate, @@ -17,6 +8,14 @@ import { import { requestRetrieveQuery, requestVideoRetrieveQuery } from 'api/queries'; import Layout from 'Layout'; import ErrorPage from 'pages/ErrorPage'; +import { BlockUI } from 'primereact/blockui'; +import { ProgressSpinner } from 'primereact/progressspinner'; +import { + createBrowserRouter, + createRoutesFromElements, + Outlet, + Route, +} from 'react-router'; export const queryClient = new QueryClient();