From bee7896279762863b2cf1d4a32cab11fea0caa94 Mon Sep 17 00:00:00 2001 From: elforjani13 <39470382+elforjani13@users.noreply.github.com> Date: Sat, 11 Jun 2022 13:29:33 +0200 Subject: [PATCH] fix: project form. --- src/components/Forms/BlueprintFormik.js | 2 ++ .../ProjectDialog/containers/ProjectForm.tsx | 9 +++--- .../containers/ProjectFormFields.tsx | 32 +++++++++++-------- .../containers/ProjectFormProvider.tsx | 15 ++++++--- .../Dialogs/ProjectDialog/index.tsx | 2 +- .../Dialogs/TaskDialog/components/index.ts | 0 .../TaskDialog/containers/TaskFormFields.tsx | 11 ++++--- src/containers/Dialogs/TaskDialog/index.tsx | 7 ++-- src/containers/Projects/components/index.tsx | 6 ++-- src/lang/en/index.json | 17 +++++++++- src/routes/dashboard.js | 2 +- 11 files changed, 69 insertions(+), 34 deletions(-) create mode 100644 src/containers/Dialogs/TaskDialog/components/index.ts diff --git a/src/components/Forms/BlueprintFormik.js b/src/components/Forms/BlueprintFormik.js index a82afbf3c..497049ad4 100644 --- a/src/components/Forms/BlueprintFormik.js +++ b/src/components/Forms/BlueprintFormik.js @@ -9,6 +9,7 @@ import { TextArea, } from '@blueprintjs-formik/core'; import { Select, MultiSelect } from '@blueprintjs-formik/select'; +import { DateInput } from '@blueprintjs-formik/datetime'; export { FormGroup as FFormGroup, @@ -21,4 +22,5 @@ export { MultiSelect as FMultiSelect, EditableText as FEditableText, TextArea as FTextArea, + DateInput as FDateInput, }; diff --git a/src/containers/Dialogs/ProjectDialog/containers/ProjectForm.tsx b/src/containers/Dialogs/ProjectDialog/containers/ProjectForm.tsx index cd7359898..4c2cd0ad0 100644 --- a/src/containers/Dialogs/ProjectDialog/containers/ProjectForm.tsx +++ b/src/containers/Dialogs/ProjectDialog/containers/ProjectForm.tsx @@ -15,11 +15,12 @@ import { useProjectFormContext } from './ProjectFormProvider'; import { compose } from 'utils'; const defaultInitialValues = { - contact:'', - project_name:'', - project_deadline: moment(new Date()).format('YYYY-MM-DD'), + contact: '', + project_name: '', + project_deadline: '', + // project_deadline: moment(new Date()).format('YYYY-MM-DD'), project_state: false, - project_cost:'' + project_cost: '', }; /** diff --git a/src/containers/Dialogs/ProjectDialog/containers/ProjectFormFields.tsx b/src/containers/Dialogs/ProjectDialog/containers/ProjectFormFields.tsx index d01b1962c..79beb9ddd 100644 --- a/src/containers/Dialogs/ProjectDialog/containers/ProjectFormFields.tsx +++ b/src/containers/Dialogs/ProjectDialog/containers/ProjectFormFields.tsx @@ -1,3 +1,4 @@ +// @ts-nocheck import React from 'react'; import intl from 'react-intl-universal'; @@ -10,11 +11,11 @@ import { FFormGroup, FInputGroup, FCheckbox, + FDateInput, FMoneyInputGroup, InputPrependText, FormattedMessage as T, CustomerSelectField, - FCustomerSelectField, } from 'components'; import { inputIntent, @@ -22,24 +23,27 @@ import { tansformDateValue, handleDateChange, } from 'utils'; +import { useProjectFormContext } from './ProjectFormProvider'; /** * Project form fields. * @returns */ function ProjectFormFields() { + const { customers } = useProjectFormContext(); + return (
{/*------------ Contact -----------*/} {({ form, field: { value }, meta: { error, touched } }) => ( { @@ -51,22 +55,21 @@ function ProjectFormFields() { )} - {/*------------ Project Name -----------*/} - + {/*------------ DeadLine -----------*/} - { - // })} - // value={tansformDateValue(value)} + {/*------------ Cost Estimate -----------*/} - + + ); diff --git a/src/containers/Dialogs/ProjectDialog/index.tsx b/src/containers/Dialogs/ProjectDialog/index.tsx index c306c7402..6c5b95595 100644 --- a/src/containers/Dialogs/ProjectDialog/index.tsx +++ b/src/containers/Dialogs/ProjectDialog/index.tsx @@ -16,7 +16,7 @@ function ProjectDialog({ dialogName, payload: { projectId = null }, isOpen }) { return ( } isOpen={isOpen} autoFocus={true} canEscapeKeyClose={true} diff --git a/src/containers/Dialogs/TaskDialog/components/index.ts b/src/containers/Dialogs/TaskDialog/components/index.ts new file mode 100644 index 000000000..e69de29bb diff --git a/src/containers/Dialogs/TaskDialog/containers/TaskFormFields.tsx b/src/containers/Dialogs/TaskDialog/containers/TaskFormFields.tsx index 0dc877c10..4969b86b9 100644 --- a/src/containers/Dialogs/TaskDialog/containers/TaskFormFields.tsx +++ b/src/containers/Dialogs/TaskDialog/containers/TaskFormFields.tsx @@ -18,19 +18,22 @@ function TaskFormFields() { return (
{/*------------ Task Name -----------*/} - + } name={'task_name'}> {/*------------ Estimated Hours -----------*/} - + } + name={'task_house'} + > {/*------------ Charge -----------*/} - + } name={'Charge'}> @@ -41,7 +44,7 @@ function TaskFormFields() { {/*------------ Estimated Amount -----------*/} - Estimated Amount: + $100000 diff --git a/src/containers/Dialogs/TaskDialog/index.tsx b/src/containers/Dialogs/TaskDialog/index.tsx index 7cef6e748..cd21e0229 100644 --- a/src/containers/Dialogs/TaskDialog/index.tsx +++ b/src/containers/Dialogs/TaskDialog/index.tsx @@ -1,11 +1,12 @@ import React from 'react'; import styled from 'styled-components'; +import intl from 'react-intl-universal'; import { Dialog, DialogSuspense, FormattedMessage as T } from 'components'; import withDialogRedux from 'components/DialogReduxConnect'; import { compose } from 'utils'; -const TaskDialogContent = React.lazy(() => - import('./containers/TaskDialogContent'), +const TaskDialogContent = React.lazy( + () => import('./containers/TaskDialogContent'), ); /** @@ -16,7 +17,7 @@ function TaskDialog({ dialogName, payload: { taskId = null }, isOpen }) { return ( } - text={'Edit Project'} + text={intl.get('projects.action.edit_project')} onClick={safeCallback(onEdit, original)} /> } - text={'New Task'} + text={intl.get('projects.action.new_task')} onClick={safeCallback(onNewTask, original)} /> } intent={Intent.DANGER} onClick={safeCallback(onDelete, original)} diff --git a/src/lang/en/index.json b/src/lang/en/index.json index 6f35aaa18..d6b4e9faf 100644 --- a/src/lang/en/index.json +++ b/src/lang/en/index.json @@ -2044,5 +2044,20 @@ "expense.entries.remove_row": "Remove line", "warehouse_transfer.entries.remove_row": "Remove line", "item.details.inactive": "Inactive", - "bill.validation.due_date": "{path} field must be later than {min}" + "bill.validation.due_date": "{path} field must be later than {min}", + "sidebar.projects": "Projects", + "projects.action.edit_project": "Edit Project", + "projects.action.new_task": "New Task", + "projects.action.delete_project": "Delete Project", + "projects.label.new_project": "New Project", + "projects.label.contact": "Contact", + "projects.label.project_name": "Project Name", + "projects.label.deadline": "Deadline", + "projects.label.calculator_expenses": "Calculator from tasks & estimated expenses", + "projects.label.cost_estimate": "Cost Estimate", + "task.label.new_task": "New Task", + "task.label.task_name": "Task Name", + "task.label.estimated_hours": "Task Name", + "task.label.charge": "Charge", + "task.label.estimated_amount": "Estimated Amount" } \ No newline at end of file diff --git a/src/routes/dashboard.js b/src/routes/dashboard.js index de351dfc6..a14713bc0 100644 --- a/src/routes/dashboard.js +++ b/src/routes/dashboard.js @@ -974,7 +974,7 @@ export const getDashboardRoutes = () => [ component: lazy(() => import('../containers/Projects/containers/ProjectsList'), ), - pageTitle: 'Projects', + pageTitle: intl.get('sidebar.projects'), }, // Homepage {