diff --git a/rsconcept/frontend/src/components/select/ConstituentaMultiPicker.tsx b/rsconcept/frontend/src/components/select/ConstituentaMultiPicker.tsx index 4000ae0b..d460aa10 100644 --- a/rsconcept/frontend/src/components/select/ConstituentaMultiPicker.tsx +++ b/rsconcept/frontend/src/components/select/ConstituentaMultiPicker.tsx @@ -94,7 +94,7 @@ function ConstituentaMultiPicker({ id, schema, prefixID, rows, selected, setSele noFooter rows={rows} contentHeight='1.3rem' - className={clsx('overflow-y-auto', 'border', 'text-sm', 'select-none')} + className={clsx('cc-scroll-y', 'border', 'text-sm', 'select-none')} data={schema?.items ?? []} columns={columns} headPosition='0rem' diff --git a/rsconcept/frontend/src/components/select/ConstituentaPicker.tsx b/rsconcept/frontend/src/components/select/ConstituentaPicker.tsx index 7d019b91..96b16031 100644 --- a/rsconcept/frontend/src/components/select/ConstituentaPicker.tsx +++ b/rsconcept/frontend/src/components/select/ConstituentaPicker.tsx @@ -101,7 +101,7 @@ function ConstituentaPicker({ dense noHeader noFooter - className='overflow-y-auto text-sm select-none' + className='text-sm select-none cc-scroll-y' data={filteredData} columns={columns} conditionalRowStyles={conditionalRowStyles} diff --git a/rsconcept/frontend/src/components/select/SchemaPicker.tsx b/rsconcept/frontend/src/components/select/SchemaPicker.tsx index 85951b59..db5e4ff0 100644 --- a/rsconcept/frontend/src/components/select/SchemaPicker.tsx +++ b/rsconcept/frontend/src/components/select/SchemaPicker.tsx @@ -98,7 +98,7 @@ function SchemaPicker({ id, initialFilter = '', rows = 4, value, onSelectValue } dense noHeader noFooter - className='overflow-y-auto text-sm select-none' + className='text-sm select-none cc-scroll-y' data={items} columns={columns} conditionalRowStyles={conditionalRowStyles} diff --git a/rsconcept/frontend/src/components/ui/DataTable/DataTable.tsx b/rsconcept/frontend/src/components/ui/DataTable/DataTable.tsx index ebbd5ef8..a593db38 100644 --- a/rsconcept/frontend/src/components/ui/DataTable/DataTable.tsx +++ b/rsconcept/frontend/src/components/ui/DataTable/DataTable.tsx @@ -155,6 +155,7 @@ function DataTable({ { table: Table; dense?: boolean; + noHeader?: boolean; enableRowSelection?: boolean; conditionalRowStyles?: IConditionalStyle[]; @@ -21,6 +23,7 @@ interface TableBodyProps { function TableBody({ table, dense, + noHeader, enableRowSelection, conditionalRowStyles, lastSelected, @@ -67,14 +70,16 @@ function TableBody({ {table.getRowModel().rows.map((row: Row, index) => ( {enableRowSelection ? ( diff --git a/rsconcept/frontend/src/dialogs/DlgConstituentaTemplate/ArgumentsTab.tsx b/rsconcept/frontend/src/dialogs/DlgConstituentaTemplate/ArgumentsTab.tsx index 2b499f78..96179e1e 100644 --- a/rsconcept/frontend/src/dialogs/DlgConstituentaTemplate/ArgumentsTab.tsx +++ b/rsconcept/frontend/src/dialogs/DlgConstituentaTemplate/ArgumentsTab.tsx @@ -152,7 +152,7 @@ function ArgumentsTab({ state, schema, partialUpdate }: ArgumentsTabProps) { noHeader className={clsx( 'max-h-[5.8rem] min-h-[5.8rem]', // prettier: split lines - 'overflow-y-auto', + 'cc-scroll-y', 'text-sm', 'border', 'select-none' diff --git a/rsconcept/frontend/src/dialogs/DlgEditVersions/VersionsTable.tsx b/rsconcept/frontend/src/dialogs/DlgEditVersions/VersionsTable.tsx index d680c713..ad73c01b 100644 --- a/rsconcept/frontend/src/dialogs/DlgEditVersions/VersionsTable.tsx +++ b/rsconcept/frontend/src/dialogs/DlgEditVersions/VersionsTable.tsx @@ -92,10 +92,10 @@ function VersionsTable({ processing, items, onDelete, selected, onSelect }: Vers onSelect(rowData.id)} conditionalRowStyles={conditionalRowStyles} /> diff --git a/rsconcept/frontend/src/dialogs/DlgEditWordForms/WordFormsTable.tsx b/rsconcept/frontend/src/dialogs/DlgEditWordForms/WordFormsTable.tsx index 7709c0d1..1844d103 100644 --- a/rsconcept/frontend/src/dialogs/DlgEditWordForms/WordFormsTable.tsx +++ b/rsconcept/frontend/src/dialogs/DlgEditWordForms/WordFormsTable.tsx @@ -37,7 +37,6 @@ function WordFormsTable({ forms, setForms, onFormSelect }: WordFormsTableProps) () => [ columnHelper.accessor('text', { id: 'text', - header: 'Текст', size: 350, minSize: 500, maxSize: 500, @@ -45,7 +44,6 @@ function WordFormsTable({ forms, setForms, onFormSelect }: WordFormsTableProps) }), columnHelper.accessor('grams', { id: 'grams', - header: 'Граммемы', maxSize: 150, cell: props => }), @@ -74,7 +72,8 @@ function WordFormsTable({ forms, setForms, onFormSelect }: WordFormsTableProps) ({}); const [items, setItems] = useState([]); @@ -47,11 +45,6 @@ function LibraryPage() { setFilter(filterFromStrategy(queryFilter)); }, [user, router, setQuery, setFilter, setStrategy, strategy, queryFilter]); - useLayoutEffect(() => { - setShowScroll(true); - return () => setShowScroll(false); - }, [setShowScroll]); - useLayoutEffect(() => { setItems(library.applyFilter(filter)); }, [library, filter, filter.query]); diff --git a/rsconcept/frontend/src/pages/LibraryPage/ViewLibrary.tsx b/rsconcept/frontend/src/pages/LibraryPage/ViewLibrary.tsx index 79325fe2..db9506d5 100644 --- a/rsconcept/frontend/src/pages/LibraryPage/ViewLibrary.tsx +++ b/rsconcept/frontend/src/pages/LibraryPage/ViewLibrary.tsx @@ -11,6 +11,7 @@ import DataTable, { createColumnHelper, VisibilityState } from '@/components/ui/ import FlexColumn from '@/components/ui/FlexColumn'; import TextURL from '@/components/ui/TextURL'; import { useConceptNavigation } from '@/context/NavigationContext'; +import { useConceptOptions } from '@/context/OptionsContext'; import { useUsers } from '@/context/UsersContext'; import useLocalStorage from '@/hooks/useLocalStorage'; import useWindowSize from '@/hooks/useWindowSize'; @@ -31,6 +32,7 @@ function ViewLibrary({ items, resetQuery }: ViewLibraryProps) { const router = useConceptNavigation(); const intl = useIntl(); const { getUserLabel } = useUsers(); + const { calculateHeight } = useConceptOptions(); const [itemsPerPage, setItemsPerPage] = useLocalStorage(storage.libraryPagination, 50); function handleOpenItem(item: ILibraryItem, event: CProps.EventMouse) { @@ -109,6 +111,8 @@ function ViewLibrary({ items, resetQuery }: ViewLibraryProps) { [intl, getUserLabel, windowSize] ); + const tableHeight = useMemo(() => calculateHeight('2.2rem'), [calculateHeight]); + return ( <>
@@ -127,8 +131,9 @@ function ViewLibrary({ items, resetQuery }: ViewLibraryProps) { id='library_data' columns={columns} data={items} - headPosition='2.2rem' - className='text-xs sm:text-sm' + headPosition='0' + className='text-xs sm:text-sm cc-scroll-y' + style={{ maxHeight: tableHeight }} noDataComponent={

Список схем пуст

diff --git a/rsconcept/frontend/src/pages/RSFormPage/EditorRSList/RSTable.tsx b/rsconcept/frontend/src/pages/RSFormPage/EditorRSList/RSTable.tsx index d6bfff93..5c7f43ff 100644 --- a/rsconcept/frontend/src/pages/RSFormPage/EditorRSList/RSTable.tsx +++ b/rsconcept/frontend/src/pages/RSFormPage/EditorRSList/RSTable.tsx @@ -121,7 +121,7 @@ function RSTable({ items, maxHeight, enableSelection, selected, setSelected, onE