X-Git-Url: https://git.arvados.org/arvados-workbench2.git/blobdiff_plain/59100a72caedbc8f3c9872de1153bf3d4129122a..a94211e27f3eebaea55ccba096869f70161e74ad:/src/views-components/search-bar/search-bar-advanced-view.tsx diff --git a/src/views-components/search-bar/search-bar-advanced-view.tsx b/src/views-components/search-bar/search-bar-advanced-view.tsx index a8d65a49..10e535c5 100644 --- a/src/views-components/search-bar/search-bar-advanced-view.tsx +++ b/src/views-components/search-bar/search-bar-advanced-view.tsx @@ -11,20 +11,20 @@ import { SEARCH_BAR_ADVANCE_FORM_NAME, saveQuery } from '~/store/search-bar/sear import { ArvadosTheme } from '~/common/custom-theme'; import { CloseIcon } from '~/components/icon/icon'; import { SearchBarAdvanceFormData } from '~/models/search-bar'; -import { - SearchBarTypeField, SearchBarClusterField, SearchBarProjectField, SearchBarTrashField, +import { + SearchBarTypeField, SearchBarClusterField, SearchBarProjectField, SearchBarTrashField, SearchBarDateFromField, SearchBarDateToField, SearchBarPropertiesField, SearchBarSaveSearchField, SearchBarQuerySearchField } from '~/views-components/form-fields/search-bar-form-fields'; -type CssRules = 'container' | 'closeIcon' | 'label' | 'buttonWrapper' +type CssRules = 'container' | 'closeIcon' | 'label' | 'buttonWrapper' | 'button' | 'circularProgress' | 'searchView' | 'selectGrid'; const styles: StyleRulesCallback = (theme: ArvadosTheme) => ({ container: { padding: theme.spacing.unit * 2, borderBottom: `1px solid ${theme.palette.grey["200"]}` - }, + }, closeIcon: { position: 'absolute', top: '12px', @@ -60,34 +60,40 @@ const styles: StyleRulesCallback = (theme: ArvadosTheme) => ({ } }); -interface SearchBarAdvancedViewDataProps { +interface SearchBarAdvancedViewFormDataProps { submitting: boolean; invalid: boolean; pristine: boolean; } -interface SearchBarAdvancedViewActionProps { - setView: (currentView: string) => void; +export interface SearchBarAdvancedViewDataProps { + tags: any; +} + +export interface SearchBarAdvancedViewActionProps { + onSetView: (currentView: string) => void; saveQuery: (data: SearchBarAdvanceFormData) => void; } -type SearchBarAdvancedViewProps = SearchBarAdvancedViewActionProps & SearchBarAdvancedViewDataProps +type SearchBarAdvancedViewProps = SearchBarAdvancedViewActionProps & SearchBarAdvancedViewDataProps; + +type SearchBarAdvancedViewFormProps = SearchBarAdvancedViewProps & SearchBarAdvancedViewFormDataProps & InjectedFormProps & WithStyles; const validate = (values: any) => { const errors: any = {}; - if (values.dateFrom && values.dateTo ) { + if (values.dateFrom && values.dateTo) { if (new Date(values.dateFrom).getTime() > new Date(values.dateTo).getTime()) { errors.dateFrom = 'Invalid date'; } - } + } return errors; }; export const SearchBarAdvancedView = compose( - reduxForm({ + reduxForm({ form: SEARCH_BAR_ADVANCE_FORM_NAME, validate, onSubmit: (data: SearchBarAdvanceFormData, dispatch: Dispatch) => { @@ -96,7 +102,7 @@ export const SearchBarAdvancedView = compose( } }), withStyles(styles))( - ({ classes, setView, handleSubmit, submitting, invalid, pristine }: SearchBarAdvancedViewProps) => + ({ classes, onSetView, handleSubmit, submitting, invalid, pristine, tags }: SearchBarAdvancedViewFormProps) =>
@@ -125,7 +131,7 @@ export const SearchBarAdvancedView = compose( - setView(SearchView.BASIC)} className={classes.closeIcon}> + onSetView(SearchView.BASIC)} className={classes.closeIcon}> @@ -152,7 +158,8 @@ export const SearchBarAdvancedView = compose(