diff --git a/client/src/components/job-tombstone/job-tombstone.component.jsx b/client/src/components/job-tombstone/job-tombstone.component.jsx
index e444f75de..e546deeb2 100644
--- a/client/src/components/job-tombstone/job-tombstone.component.jsx
+++ b/client/src/components/job-tombstone/job-tombstone.component.jsx
@@ -1,6 +1,6 @@
import React, { useState } from "react";
import AlertComponent from "../alert/alert.component";
-import { Form, Icon, Input, Row, Col } from "antd";
+import { Form, Input, Row, Col, Button } from "antd";
function JobTombstone({ job, ...otherProps }) {
const [jobContext, setJobContext] = useState(job);
@@ -16,7 +16,8 @@ function JobTombstone({ job, ...otherProps }) {
const handleSubmit = e => {
e.preventDefault();
- this.props.form.validateFieldsAndScroll((err, values) => {
+
+ otherProps.form.validateFieldsAndScroll((err, values) => {
if (!err) {
console.log("Received values of form: ", values);
}
@@ -41,6 +42,11 @@ function JobTombstone({ job, ...otherProps }) {
})()}
+
+
+
);
diff --git a/client/src/pages/jobs-detail/jobs-detail.page.jsx b/client/src/pages/jobs-detail/jobs-detail.page.jsx
index a2ae67989..1ec904e8a 100644
--- a/client/src/pages/jobs-detail/jobs-detail.page.jsx
+++ b/client/src/pages/jobs-detail/jobs-detail.page.jsx
@@ -6,12 +6,8 @@ import JobTombstone from "../../components/job-tombstone/job-tombstone.component
import { GET_JOB_BY_PK } from "../../graphql/jobs.queries";
import { Breadcrumb } from "antd";
-import Test from "./test";
-
-export default function JobsDetailPage({
- match: { routes, params, children }
-}) {
- const { jobId } = params;
+function JobsDetailPage({ match }) {
+ const { jobId } = match.params;
const { loading, error, data } = useSubscription(GET_JOB_BY_PK, {
variables: { id: jobId },
fetchPolicy: "network-only"
@@ -19,11 +15,12 @@ export default function JobsDetailPage({
if (loading) return ;
if (error) return ;
- console.log('routes', routes)
+ console.log("routes", match);
return (
-
+
);
}
+export default JobsDetailPage;
diff --git a/client/src/pages/jobs-detail/test.jsx b/client/src/pages/jobs-detail/test.jsx
deleted file mode 100644
index 712a2498c..000000000
--- a/client/src/pages/jobs-detail/test.jsx
+++ /dev/null
@@ -1,219 +0,0 @@
-import React from "react";
-import { Table, Input, Button, Popconfirm, Form } from "antd";
-
-const EditableContext = React.createContext();
-
-const EditableRow = ({ form, index, ...props }) => (
-
-
-
-);
-
-const EditableFormRow = Form.create()(EditableRow);
-
-class EditableCell extends React.Component {
- state = {
- editing: false
- };
-
- toggleEdit = () => {
- const editing = !this.state.editing;
- this.setState({ editing }, () => {
- if (editing) {
- this.input.focus();
- }
- });
- };
-
- save = e => {
- const { record, handleSave } = this.props;
- this.form.validateFields((error, values) => {
- if (error && error[e.currentTarget.id]) {
- return;
- }
- this.toggleEdit();
- handleSave({ ...record, ...values });
- });
- };
-
- renderCell = form => {
- this.form = form;
- const { children, dataIndex, record, title } = this.props;
- const { editing } = this.state;
- return editing ? (
-
- {form.getFieldDecorator(dataIndex, {
- rules: [
- {
- required: true,
- message: `${title} is required.`
- }
- ],
- initialValue: record[dataIndex]
- })(
- (this.input = node)}
- onPressEnter={this.save}
- onBlur={this.save}
- />
- )}
-
- ) : (
-
- {children}
-
- );
- };
-
- render() {
- const {
- editable,
- dataIndex,
- title,
- record,
- index,
- handleSave,
- children,
- ...restProps
- } = this.props;
- return (
-
- {editable ? (
- {this.renderCell}
- ) : (
- children
- )}
- |
- );
- }
-}
-
-export default class EditableTable extends React.Component {
- constructor(props) {
- super(props);
- this.columns = [
- {
- title: "name",
- dataIndex: "name",
- width: "30%",
- editable: true
- },
- {
- title: "age",
- dataIndex: "age"
- },
- {
- title: "address",
- dataIndex: "address"
- },
- {
- title: "operation",
- dataIndex: "operation",
- render: (text, record) =>
- this.state.dataSource.length >= 1 ? (
- this.handleDelete(record.key)}
- >
- Delete
-
- ) : null
- }
- ];
-
- this.state = {
- dataSource: [
- {
- key: "0",
- name: "Edward King 0",
- age: "32",
- address: "London, Park Lane no. 0"
- },
- {
- key: "1",
- name: "Edward King 1",
- age: "32",
- address: "London, Park Lane no. 1"
- }
- ],
- count: 2
- };
- }
-
- handleDelete = key => {
- const dataSource = [...this.state.dataSource];
- this.setState({ dataSource: dataSource.filter(item => item.key !== key) });
- };
-
- handleAdd = () => {
- const { count, dataSource } = this.state;
- const newData = {
- key: count,
- name: `Edward King ${count}`,
- age: 32,
- address: `London, Park Lane no. ${count}`
- };
- this.setState({
- dataSource: [...dataSource, newData],
- count: count + 1
- });
- };
-
- handleSave = row => {
- const newData = [...this.state.dataSource];
- const index = newData.findIndex(item => row.key === item.key);
- const item = newData[index];
- newData.splice(index, 1, {
- ...item,
- ...row
- });
- this.setState({ dataSource: newData });
- };
-
- render() {
- const { dataSource } = this.state;
- const components = {
- body: {
- row: EditableFormRow,
- cell: EditableCell
- }
- };
- const columns = this.columns.map(col => {
- if (!col.editable) {
- return col;
- }
- return {
- ...col,
- onCell: record => ({
- record,
- editable: col.editable,
- dataIndex: col.dataIndex,
- title: col.title,
- handleSave: this.handleSave
- })
- };
- });
- return (
-
-
-
"editable-row"}
- bordered
- dataSource={dataSource}
- columns={columns}
- />
-
- );
- }
-}