import { useEffect } from 'react'; import { Filter } from '@/ui/data/filter/types/Filter'; import { Sort } from '@/ui/data/sort/types/Sort'; import { useView } from '@/views/hooks/useView'; import { ViewField } from '@/views/types/ViewField'; type ViewScopeInitEffectProps = { viewScopeId: string; onViewSortsChange?: (sorts: Sort[]) => void | Promise; onViewFiltersChange?: (filters: Filter[]) => void | Promise; onViewFieldsChange?: (fields: ViewField[]) => void | Promise; }; export const ViewScopeInitEffect = ({ onViewSortsChange, onViewFiltersChange, onViewFieldsChange, }: ViewScopeInitEffectProps) => { const { setOnViewSortsChange, setOnViewFieldsChange, setOnViewFiltersChange, } = useView(); useEffect(() => { setOnViewSortsChange(() => onViewSortsChange); setOnViewFiltersChange(() => onViewFiltersChange); setOnViewFieldsChange(() => onViewFieldsChange); }, [ onViewFieldsChange, onViewFiltersChange, onViewSortsChange, setOnViewFieldsChange, setOnViewFiltersChange, setOnViewSortsChange, ]); return <>; };