diff --git a/public/app/features/alerting/AlertRuleItem.test.tsx b/public/app/features/alerting/AlertRuleItem.test.tsx index 1b356fa5687..bd37e127c39 100644 --- a/public/app/features/alerting/AlertRuleItem.test.tsx +++ b/public/app/features/alerting/AlertRuleItem.test.tsx @@ -21,7 +21,7 @@ const setup = (propOverrides?: object) => { url: 'https://something.something.darkside', }, search: '', - togglePauseAlertRule: jest.fn(), + onTogglePause: jest.fn(), }; Object.assign(props, propOverrides); diff --git a/public/app/features/alerting/AlertRuleItem.tsx b/public/app/features/alerting/AlertRuleItem.tsx index 0e6b1c5fb90..f47a6348303 100644 --- a/public/app/features/alerting/AlertRuleItem.tsx +++ b/public/app/features/alerting/AlertRuleItem.tsx @@ -1,23 +1,15 @@ import React, { PureComponent } from 'react'; -import { connect } from 'react-redux'; import Highlighter from 'react-highlight-words'; import classNames from 'classnames/bind'; -import { togglePauseAlertRule } from './state/actions'; import { AlertRule } from '../../types'; export interface Props { rule: AlertRule; search: string; - togglePauseAlertRule: typeof togglePauseAlertRule; + onTogglePause: () => void; } -class AlertRuleItem extends PureComponent { - togglePaused = () => { - const { rule } = this.props; - - this.props.togglePauseAlertRule(rule.id, { paused: rule.state !== 'paused' }); - }; - +class AlertRuleItem extends PureComponent { renderText(text: string) { return ( { } render() { - const { rule } = this.props; + const { rule, onTogglePause } = this.props; const stateClass = classNames({ fa: true, @@ -61,7 +53,7 @@ class AlertRuleItem extends PureComponent { @@ -74,6 +66,4 @@ class AlertRuleItem extends PureComponent { } } -export default connect(null, { - togglePauseAlertRule, -})(AlertRuleItem); +export default AlertRuleItem; diff --git a/public/app/features/alerting/AlertRuleList.test.tsx b/public/app/features/alerting/AlertRuleList.test.tsx index 70892d86589..2d1cf653540 100644 --- a/public/app/features/alerting/AlertRuleList.test.tsx +++ b/public/app/features/alerting/AlertRuleList.test.tsx @@ -15,6 +15,7 @@ const setup = (propOverrides?: object) => { updateLocation: jest.fn(), getAlertRulesAsync: jest.fn(), setSearchQuery: jest.fn(), + togglePauseAlertRule: jest.fn(), stateFilter: '', search: '', }; diff --git a/public/app/features/alerting/AlertRuleList.tsx b/public/app/features/alerting/AlertRuleList.tsx index 4b48da47256..d25fc659af5 100644 --- a/public/app/features/alerting/AlertRuleList.tsx +++ b/public/app/features/alerting/AlertRuleList.tsx @@ -7,7 +7,7 @@ import appEvents from 'app/core/app_events'; import { updateLocation } from 'app/core/actions'; import { getNavModel } from 'app/core/selectors/navModel'; import { NavModel, StoreState, AlertRule } from 'app/types'; -import { getAlertRulesAsync, setSearchQuery } from './state/actions'; +import { getAlertRulesAsync, setSearchQuery, togglePauseAlertRule } from './state/actions'; import { getAlertRuleItems, getSearchQuery } from './state/selectors'; export interface Props { @@ -16,6 +16,7 @@ export interface Props { updateLocation: typeof updateLocation; getAlertRulesAsync: typeof getAlertRulesAsync; setSearchQuery: typeof setSearchQuery; + togglePauseAlertRule: typeof togglePauseAlertRule; stateFilter: string; search: string; } @@ -71,6 +72,10 @@ export class AlertRuleList extends PureComponent { this.props.setSearchQuery(value); }; + onTogglePause = (rule: AlertRule) => { + this.props.togglePauseAlertRule(rule.id, { paused: rule.state !== 'paused' }); + }; + alertStateFilterOption = ({ text, value }) => { return (