diff options
| author | Haishan <[email protected]> | 2019-12-26 18:16:40 +0800 |
|---|---|---|
| committer | Haishan <[email protected]> | 2019-12-26 18:16:40 +0800 |
| commit | b033b4825dfeb2e3a15bae298856d5001310a487 (patch) | |
| tree | 51714bcaa02d65abb7dc89527a83f6f9e50103dc /src/components/ProxyProvider.js | |
| parent | 62b7f7f7ba6cafe72222dd3005a16278115be0a8 (diff) | |
feat: can healthcheck a provider
Diffstat (limited to 'src/components/ProxyProvider.js')
| -rw-r--r-- | src/components/ProxyProvider.js | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/src/components/ProxyProvider.js b/src/components/ProxyProvider.js index e18fe17..3a0b2ef 100644 --- a/src/components/ProxyProvider.js +++ b/src/components/ProxyProvider.js @@ -1,5 +1,5 @@ import React from 'react'; -import { ChevronDown, RotateCw } from 'react-feather'; +import { ChevronDown, RotateCw, Zap } from 'react-feather'; import { formatDistance } from 'date-fns'; import ResizeObserver from 'resize-observer-polyfill'; import { motion } from 'framer-motion'; @@ -12,7 +12,10 @@ import { SectionNameType } from './shared/Basic'; import { ProxyList, ProxyListSummaryView } from './ProxyGroup'; import { ButtonWithIcon, ButtonPlain } from './Button'; -import { updateProviderByName } from '../store/proxies'; +import { + updateProviderByName, + healthcheckProviderByName +} from '../store/proxies'; import s from './ProxyProvider.module.css'; @@ -42,6 +45,10 @@ function ProxyProvider({ item, dispatch }: Props) { () => dispatch(updateProviderByName(apiConfig, item.name)), [apiConfig, dispatch, item.name] ); + const healthcheckProvider = useCallback( + () => dispatch(healthcheckProviderByName(apiConfig, item.name)), + [apiConfig, dispatch, item.name] + ); const [isCollapsibleOpen, setCollapsibleOpen] = useState(false); const toggle = useCallback(() => setCollapsibleOpen(x => !x), []); @@ -67,6 +74,11 @@ function ProxyProvider({ item, dispatch }: Props) { icon={<Refresh />} onClick={updateProvider} /> + <ButtonWithIcon + text="Health Check" + icon={<Zap size={16} />} + onClick={healthcheckProvider} + /> </div> </Collapsible2> <Collapsible2 isOpen={!isCollapsibleOpen}> |
