X-Git-Url: https://git.arvados.org/arvados-workbench2.git/blobdiff_plain/1514f6a2ae8103f75f08034299115ad751d8a785..02fe86a56f080ed1d5770ad6c6856a15f50ab508:/src/views-components/search-bar/search-bar-basic-view.tsx diff --git a/src/views-components/search-bar/search-bar-basic-view.tsx b/src/views-components/search-bar/search-bar-basic-view.tsx index 7f90ecde..dd6028a6 100644 --- a/src/views-components/search-bar/search-bar-basic-view.tsx +++ b/src/views-components/search-bar/search-bar-basic-view.tsx @@ -3,54 +3,67 @@ // SPDX-License-Identifier: AGPL-3.0 import * as React from 'react'; -import { Paper, StyleRulesCallback, withStyles, WithStyles, List } from '@material-ui/core'; -import { SearchView } from '~/store/search-bar/search-bar-reducer'; -import { RecentQueriesItem, RenderSavedQueries } from '~/views-components/search-bar/search-bar-view'; +import { Paper, StyleRulesCallback, withStyles, WithStyles } from '@material-ui/core'; +import { + SearchBarRecentQueries, + SearchBarRecentQueriesActionProps +} from '~/views-components/search-bar/search-bar-recent-queries'; +import { + SearchBarSavedQueries, + SearchBarSavedQueriesDataProps, + SearchBarSavedQueriesActionProps +} from '~/views-components/search-bar/search-bar-save-queries'; -type CssRules = 'advanced' | 'searchQueryList' | 'list' | 'searchView'; +type CssRules = 'advanced' | 'label' | 'root'; const styles: StyleRulesCallback = theme => { return { + root: { + color: theme.palette.common.black, + borderRadius: `0 0 ${theme.spacing.unit / 2}px ${theme.spacing.unit / 2}px` + }, advanced: { display: 'flex', justifyContent: 'flex-end', - paddingRight: theme.spacing.unit * 2, - paddingBottom: theme.spacing.unit, - fontSize: '14px', - cursor: 'pointer' - }, - searchQueryList: { - padding: `${theme.spacing.unit / 2}px ${theme.spacing.unit}px `, - background: '#f2f2f2', - fontSize: '14px' - }, - list: { - padding: '0px' + padding: theme.spacing.unit, + fontSize: '0.875rem', + cursor: 'pointer', + color: theme.palette.primary.main }, - searchView: { - color: theme.palette.common.black, - borderRadius: `0 0 ${theme.spacing.unit / 4}px ${theme.spacing.unit / 4}px` + label: { + fontSize: '0.775rem', + padding: `${theme.spacing.unit}px ${theme.spacing.unit}px `, + color: theme.palette.grey["900"], + background: 'white', + textAlign: 'right', + fontWeight: 'bold' } }; }; -interface SearchBarBasicViewProps { - setView: (currentView: string) => void; - recentQueries: () => string[]; -} +export type SearchBarBasicViewDataProps = SearchBarSavedQueriesDataProps; + +export type SearchBarBasicViewActionProps = { + onSetView: (currentView: string) => void; + onSearch: (searchValue: string) => void; +} & SearchBarRecentQueriesActionProps & SearchBarSavedQueriesActionProps; + +type SearchBarBasicViewProps = SearchBarBasicViewDataProps & SearchBarBasicViewActionProps & WithStyles; export const SearchBarBasicView = withStyles(styles)( - ({ classes, setView, recentQueries }: SearchBarBasicViewProps & WithStyles) => - -
Saved search queries
- - - - -
Recent search queries
- - {recentQueries().map((query, index) => )} - -
setView(SearchView.ADVANCED)}>Advanced search
+ ({ classes, onSetView, loadRecentQueries, deleteSavedQuery, savedQueries, onSearch, editSavedQuery, selectedItem }: SearchBarBasicViewProps) => + +
{"Recent queries"}
+ +
{"Saved queries"}
+
-); \ No newline at end of file +);