feat: многоуровневое дерево справочника и настраиваемое отображение колонок

This commit is contained in:
2026-07-20 21:59:36 +03:00
parent 9fff937209
commit 7cf5ffff9a
7 changed files with 424 additions and 212 deletions

View File

@@ -35,6 +35,8 @@ export default function TableFieldSelect({
columns: Array<{ name: string }>;
treeColumnIndex: number | null;
treeDisplayColumnIndex: number | null;
treeColumns: number[] | null;
treeDisplayColumns: number[] | null;
};
}>({
queryKey: ['/api/directories', tableId],
@@ -48,6 +50,8 @@ export default function TableFieldSelect({
const { data: treeData } = useQuery<{
columnIndex: number | null;
treeColumns: number[];
treeDisplayColumns: number[];
nodes: DirectoryTreeNode[];
}>({
queryKey: ['/api/directories', tableId, 'rows', 'tree', filtersStr],
@@ -73,7 +77,7 @@ export default function TableFieldSelect({
let displayColumnIndex = table?.columns?.findIndex((c) => c.name === displayColumn);
if (displayColumnIndex === undefined || displayColumnIndex < 0) {
displayColumnIndex = table?.treeDisplayColumnIndex ?? 0;
displayColumnIndex = table?.treeDisplayColumnIndex ?? table?.treeDisplayColumns?.[0] ?? 0;
}
const sortedRows = useMemo(() => {