From 69b75f5b562cec6ab38cb83980ea7ff33c2168c9 Mon Sep 17 00:00:00 2001 From: sylenien Date: Mon, 16 May 2022 09:39:19 +0200 Subject: [PATCH] fix(ui): various small ui fixes for buttons --- .../BugFinder/SessionsMenu/SessionsMenu.js | 29 +++++++++++++------ .../shared/MainSearchBar/MainSearchBar.tsx | 28 +++++++----------- .../shared/MainSearchBar/mainSearchBar.css | 17 +++++++++++ .../shared/SavedSearch/SavedSearch.tsx | 9 +++--- .../components/DefaultTimezone.tsx | 23 +++++++++------ 5 files changed, 66 insertions(+), 40 deletions(-) create mode 100644 frontend/app/components/shared/MainSearchBar/mainSearchBar.css diff --git a/frontend/app/components/BugFinder/SessionsMenu/SessionsMenu.js b/frontend/app/components/BugFinder/SessionsMenu/SessionsMenu.js index d81ff1a7f..198dc6593 100644 --- a/frontend/app/components/BugFinder/SessionsMenu/SessionsMenu.js +++ b/frontend/app/components/BugFinder/SessionsMenu/SessionsMenu.js @@ -1,5 +1,6 @@ import React from 'react' import { connect } from 'react-redux'; +import { Tooltip } from 'react-tippy' import cn from 'classnames'; import { SideMenuitem, SavedSearchList, Progress, Popup } from 'UI' import stl from './sessionMenu.css'; @@ -23,7 +24,17 @@ function SessionsMenu(props) {
Sessions
- showModal(, { right: true })}>Manage + showModal(, { right: true })}> + + Settings + + {/* { !capturingAll && ( - + } content={ `Capturing ${props.captureRate.get('rate')}% of all sessions. Click to manage capture rate. ` } size="tiny" inverted position="top right" - /> + /> )} */} - +
onMenuItemClick({ name: 'All', type: 'all' })} />
- - { issues_types.filter(item => item.visible).map(item => ( + + { issues_types.filter(item => item.visible).map(item => ( onMenuItemClick({ name: 'Bookmarks', type: 'bookmark' })} /> - - + +
@@ -85,6 +96,6 @@ export default connect(state => ({ captureRate: state.getIn(['watchdogs', 'captureRate']), filters: state.getIn([ 'filters', 'appliedFilter' ]), sessionsLoading: state.getIn([ 'sessions', 'fetchLiveListRequest', 'loading' ]), -}), { +}), { clearEvents, fetchSessionList })(SessionsMenu); diff --git a/frontend/app/components/shared/MainSearchBar/MainSearchBar.tsx b/frontend/app/components/shared/MainSearchBar/MainSearchBar.tsx index e6cdbd00c..c7ee672ac 100644 --- a/frontend/app/components/shared/MainSearchBar/MainSearchBar.tsx +++ b/frontend/app/components/shared/MainSearchBar/MainSearchBar.tsx @@ -4,6 +4,8 @@ import SavedSearch from 'Shared/SavedSearch'; import { Button, Popup } from 'UI'; import { clearSearch } from 'Duck/search'; import { connect } from 'react-redux'; +import stl from './mainSearchBar.css'; +import cn from 'classnames'; interface Props { clearSearch: () => void; @@ -17,23 +19,13 @@ const MainSearchBar = (props: Props) => {
- {optionsReady && } - props.clearSearch()} - > - Clear - - } - content={'Clear Steps'} - size="tiny" - inverted - position="top right" - /> + {optionsReady && } + props.clearSearch()} + > + Clear search +
) @@ -41,4 +33,4 @@ const MainSearchBar = (props: Props) => { export default connect(state => ({ appliedFilter: state.getIn(['search', 'instance']), optionsReady: state.getIn(['customFields', 'optionsReady']) -}), { clearSearch })(MainSearchBar); \ No newline at end of file +}), { clearSearch })(MainSearchBar); diff --git a/frontend/app/components/shared/MainSearchBar/mainSearchBar.css b/frontend/app/components/shared/MainSearchBar/mainSearchBar.css new file mode 100644 index 000000000..349f80603 --- /dev/null +++ b/frontend/app/components/shared/MainSearchBar/mainSearchBar.css @@ -0,0 +1,17 @@ +.button { + color: $teal; + cursor: pointer; + padding: 4px 8px; + border: solid thin transparent; + border-radius: 3px; + margin-bottom: -3px; + &:hover { + background-color: $gray-light; + color: $gray-darkest; + } + } + +.disabled { + opacity: 0.5; + pointer-events: none; +} diff --git a/frontend/app/components/shared/SavedSearch/SavedSearch.tsx b/frontend/app/components/shared/SavedSearch/SavedSearch.tsx index 1321563ae..b67b318be 100644 --- a/frontend/app/components/shared/SavedSearch/SavedSearch.tsx +++ b/frontend/app/components/shared/SavedSearch/SavedSearch.tsx @@ -23,8 +23,8 @@ function SavedSearch(props) { }, []) return ( - setShowMenu(false)} >
@@ -33,7 +33,8 @@ function SavedSearch(props) { className="flex items-center" onClick={() => setShowMenu(true)} > - {`Saved Search (${list.size})`} + Saved Search + {list.size} { savedSearch.exists() && ( @@ -61,4 +62,4 @@ function SavedSearch(props) { export default connect(state => ({ list: state.getIn([ 'search', 'list' ]), savedSearch: state.getIn([ 'search', 'savedSearch' ]) -}), { fetchListSavedSearch })(SavedSearch); \ No newline at end of file +}), { fetchListSavedSearch })(SavedSearch); diff --git a/frontend/app/components/shared/SessionSettings/components/DefaultTimezone.tsx b/frontend/app/components/shared/SessionSettings/components/DefaultTimezone.tsx index 2332b62da..475ed7fa3 100644 --- a/frontend/app/components/shared/SessionSettings/components/DefaultTimezone.tsx +++ b/frontend/app/components/shared/SessionSettings/components/DefaultTimezone.tsx @@ -3,6 +3,7 @@ import { Toggler, Button } from 'UI'; import Select from 'Shared/Select'; import { useStore } from 'App/mstore'; import { useObserver } from 'mobx-react-lite'; +import { toast } from 'react-toastify'; const str = new Date().toString().match(/([A-Z]+[\+-][0-9]+)/) @@ -49,25 +50,29 @@ function DefaultTimezone(props) { if (!timezone) setTimezone('local'); }, []); + const onSelectChange = ({ value }) => { + setTimezone(value); + setChanged(true); + } + const onTimezoneSave = () => { + setChanged(false); + sessionSettings.updateKey('timezone', timezone); + toast.success("Default timezone saved successfully"); + } + return ( <>

Default Timezone

Session Time
-
+