Merge pull request #13176 from influxdata/feat/tasks-runs-edit

Add the ability to edit a task from tasks runs page
pull/13207/head
Palakp41 2019-04-05 10:27:21 -07:00 committed by GitHub
commit 57a8339a2b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 28 additions and 4 deletions

View File

@ -2,6 +2,7 @@
import React, {PureComponent} from 'react'
import _ from 'lodash'
import {connect} from 'react-redux'
import {withRouter, WithRouterProps} from 'react-router'
// Components
import {Page} from 'src/pageLayout'
@ -12,7 +13,12 @@ import PageTitleWithOrg from 'src/shared/components/PageTitleWithOrg'
import {AppState} from 'src/types'
import {RemoteDataState} from 'src/types'
import {Run as APIRun, Task} from '@influxdata/influx'
import {SpinnerContainer, TechnoSpinner, Button} from '@influxdata/clockface'
import {
SpinnerContainer,
TechnoSpinner,
Button,
ComponentColor,
} from '@influxdata/clockface'
// Actions
import {getRuns, runTask} from 'src/tasks/actions'
@ -39,7 +45,7 @@ interface StateProps {
type Props = OwnProps & DispatchProps & StateProps
class TaskRunsPage extends PureComponent<Props> {
class TaskRunsPage extends PureComponent<Props & WithRouterProps> {
public render() {
const {params, runs} = this.props
@ -54,6 +60,11 @@ class TaskRunsPage extends PureComponent<Props> {
<PageTitleWithOrg title={this.title} />
</Page.Header.Left>
<Page.Header.Right>
<Button
onClick={this.handleEditTask}
text="Edit Task"
color={ComponentColor.Primary}
/>
<Button
onClick={this.handleRunTask}
text="Run Task"
@ -89,6 +100,16 @@ class TaskRunsPage extends PureComponent<Props> {
await onRunTask(params.id)
getRuns(params.id)
}
private handleEditTask = () => {
const {
router,
currentTask,
params: {orgID},
} = this.props
router.push(`/orgs/${orgID}/tasks/${currentTask.id}`)
}
}
const mstp = (state: AppState): StateProps => {
@ -101,9 +122,12 @@ const mstp = (state: AppState): StateProps => {
}
}
const mdtp: DispatchProps = {getRuns: getRuns, onRunTask: runTask}
const mdtp: DispatchProps = {
getRuns: getRuns,
onRunTask: runTask,
}
export default connect<StateProps, DispatchProps, OwnProps>(
mstp,
mdtp
)(TaskRunsPage)
)(withRouter<OwnProps>(TaskRunsPage))