diff --git a/public/app/core/components/Select/SortPicker.tsx b/public/app/core/components/Select/SortPicker.tsx index 93649fbb440..bc74f517c6e 100644 --- a/public/app/core/components/Select/SortPicker.tsx +++ b/public/app/core/components/Select/SortPicker.tsx @@ -8,7 +8,7 @@ const searchSrv = new SearchSrv(); export interface Props { onChange: (sortValue: SelectableValue) => void; - value?: SelectableValue; + value?: SelectableValue | null; placeholder?: string; } diff --git a/public/app/features/search/components/ActionRow.tsx b/public/app/features/search/components/ActionRow.tsx index 89ead3e0831..a181688f446 100644 --- a/public/app/features/search/components/ActionRow.tsx +++ b/public/app/features/search/components/ActionRow.tsx @@ -25,17 +25,19 @@ interface Props { query: DashboardQuery; showStarredFilter?: boolean; hideSelectedTags?: boolean; + hideLayout?: boolean; } export const ActionRow: FC = ({ layout, onLayoutChange, onSortChange, - onStarredFilterChange, + onStarredFilterChange = () => {}, onTagFilterChange, query, showStarredFilter, hideSelectedTags, + hideLayout, }) => { const theme = useTheme(); const styles = getStyles(theme); @@ -43,7 +45,7 @@ export const ActionRow: FC = ({ return (
- {layout ? : null} + {!hideLayout ? : null} diff --git a/public/app/features/search/components/ManageDashboards.tsx b/public/app/features/search/components/ManageDashboards.tsx index ae693c2a980..fa6a0fea650 100644 --- a/public/app/features/search/components/ManageDashboards.tsx +++ b/public/app/features/search/components/ManageDashboards.tsx @@ -154,7 +154,8 @@ export const ManageDashboards: FC = memo(({ folderId, folderUid }) => { onSortChange={onSortChange} onTagFilterChange={onTagFilterChange} query={query} - layout={!folderUid && layout} + layout={layout} + hideLayout={!!folderUid} onLayoutChange={onLayoutChange} /> )} diff --git a/public/app/features/search/components/SearchResultsFilter.tsx b/public/app/features/search/components/SearchResultsFilter.tsx index 2cf10ddb358..7e287172f02 100644 --- a/public/app/features/search/components/SearchResultsFilter.tsx +++ b/public/app/features/search/components/SearchResultsFilter.tsx @@ -12,14 +12,15 @@ export interface Props { canDelete?: boolean; canMove?: boolean; deleteItem: () => void; + hideLayout?: boolean; + layout: string; moveTo: () => void; + onLayoutChange: Dispatch>; + onSortChange: onSelectChange; onStarredFilterChange: onSelectChange; onTagFilterChange: onSelectChange; onToggleAllChecked: () => void; query: DashboardQuery; - onSortChange: onSelectChange; - onLayoutChange: Dispatch>; - layout: string; } export const SearchResultsFilter: FC = ({ @@ -27,14 +28,15 @@ export const SearchResultsFilter: FC = ({ canDelete, canMove, deleteItem, + hideLayout, + layout, moveTo, - onToggleAllChecked, + onLayoutChange, + onSortChange, onStarredFilterChange, onTagFilterChange, + onToggleAllChecked, query, - onSortChange, - layout, - onLayoutChange, }) => { const showActions = canDelete || canMove; const theme = useTheme(); @@ -56,6 +58,7 @@ export const SearchResultsFilter: FC = ({ ) => { dispatch({ type: TOGGLE_STARRED, payload: filter.value }); }; - const onSortChange = (sort: SelectableValue) => { + const onSortChange = (sort: SelectableValue | null) => { dispatch({ type: TOGGLE_SORT, payload: sort }); }; diff --git a/public/app/features/search/loaders.ts b/public/app/features/search/loaders.ts index b5bf28d7cb2..2e098743bfa 100644 --- a/public/app/features/search/loaders.ts +++ b/public/app/features/search/loaders.ts @@ -41,16 +41,16 @@ export const loadFolderPage = (uid: string, activeChildId: string) => { navModel.main.text = folderTitle; const dashTab = navModel.main.children.find((child: any) => child.id === 'manage-folder-dashboards'); - dashTab.url = folderUrl; + dashTab!.url = folderUrl; if (folder.canAdmin) { const permTab = navModel.main.children.find((child: any) => child.id === 'manage-folder-permissions'); - permTab.url = folderUrl + '/permissions'; + permTab!.url = folderUrl + '/permissions'; const settingsTab = navModel.main.children.find((child: any) => child.id === 'manage-folder-settings'); - settingsTab.url = folderUrl + '/settings'; + settingsTab!.url = folderUrl + '/settings'; } else { - navModel.main.children = [dashTab]; + navModel.main.children = [dashTab!]; } return { folder, model: navModel };