From 38cdf31676ff23899ae21039cc174e93e40af7d7 Mon Sep 17 00:00:00 2001 From: IRBorisov <8611739+IRBorisov@users.noreply.github.com> Date: Sun, 10 Sep 2023 20:17:18 +0300 Subject: [PATCH] Implement DataTable features --- rsconcept/backend/apps/rsform/views.py | 4 +- .../src/components/Common/Checkbox.tsx | 4 +- .../src/components/Common/DataTable.tsx | 265 ------------------ .../src/components/Common/Divider.tsx | 5 +- .../src/components/Common/Tristate.tsx | 6 +- .../components/DataTable/DefaultNoData.tsx | 8 + .../components/DataTable/PaginationTools.tsx | 88 ++++++ .../src/components/DataTable/SelectAll.tsx | 23 ++ .../src/components/DataTable/SelectRow.tsx | 19 ++ .../src/components/DataTable/SortingIcon.tsx | 19 ++ .../src/components/DataTable/index.tsx | 201 +++++++++++++ .../src/components/Help/HelpTermGraph.tsx | 1 + rsconcept/frontend/src/components/Icons.tsx | 56 +++- .../src/components/Navigation/UserMenu.tsx | 4 +- rsconcept/frontend/src/index.css | 2 +- .../src/pages/LibraryPage/SearchPanel.tsx | 2 +- .../src/pages/LibraryPage/ViewLibrary.tsx | 51 ++-- .../pages/RSFormPage/EditorConstituenta.tsx | 7 +- .../src/pages/RSFormPage/EditorItems.tsx | 256 +++++++++-------- .../src/pages/RSFormPage/EditorTermGraph.tsx | 4 +- .../elements/ViewSideConstituents.tsx | 52 +++- .../UserProfilePage/ViewSubscriptions.tsx | 11 +- rsconcept/frontend/src/utils/color.ts | 2 +- 23 files changed, 646 insertions(+), 444 deletions(-) delete mode 100644 rsconcept/frontend/src/components/Common/DataTable.tsx create mode 100644 rsconcept/frontend/src/components/DataTable/DefaultNoData.tsx create mode 100644 rsconcept/frontend/src/components/DataTable/PaginationTools.tsx create mode 100644 rsconcept/frontend/src/components/DataTable/SelectAll.tsx create mode 100644 rsconcept/frontend/src/components/DataTable/SelectRow.tsx create mode 100644 rsconcept/frontend/src/components/DataTable/SortingIcon.tsx create mode 100644 rsconcept/frontend/src/components/DataTable/index.tsx diff --git a/rsconcept/backend/apps/rsform/views.py b/rsconcept/backend/apps/rsform/views.py index d38c9bbd..02ca5103 100644 --- a/rsconcept/backend/apps/rsform/views.py +++ b/rsconcept/backend/apps/rsform/views.py @@ -27,9 +27,9 @@ class LibraryActiveView(generics.ListAPIView): # pylint: disable=unsupported-binary-operation return m.LibraryItem.objects.filter( Q(is_common=True) | Q(owner=user) | Q(subscription__user=user) - ).distinct() + ).distinct().order_by('-time_update') else: - return m.LibraryItem.objects.filter(is_common=True) + return m.LibraryItem.objects.filter(is_common=True).order_by('-time_update') class ConstituentAPIView(generics.RetrieveUpdateAPIView): diff --git a/rsconcept/frontend/src/components/Common/Checkbox.tsx b/rsconcept/frontend/src/components/Common/Checkbox.tsx index d9d435aa..e1fb5076 100644 --- a/rsconcept/frontend/src/components/Common/Checkbox.tsx +++ b/rsconcept/frontend/src/components/Common/Checkbox.tsx @@ -1,6 +1,6 @@ import { useMemo } from 'react'; -import { CheckboxChecked } from '../Icons'; +import { CheckboxCheckedIcon } from '../Icons'; import Label from './Label'; export interface CheckboxProps @@ -53,7 +53,7 @@ function Checkbox({ {...props} >
- { value &&
} + { value &&
}
{ label &&