From 6f302833b8422caeb2ec32ca4e5b2705ae3fbcad Mon Sep 17 00:00:00 2001 From: fahad-aot Date: Sun, 10 Nov 2024 06:50:11 -0800 Subject: [PATCH 1/4] Added task variable UI --- .../CustomComponents/MultiSelect.js | 4 +- .../src/components/Form/EditForm/FlowEdit.js | 27 +- .../src/components/Form/EditForm/FormEdit.js | 1 + .../components/Modals/TaskVariableModal.js | 299 ++++++++++++++++++ 4 files changed, 325 insertions(+), 6 deletions(-) create mode 100644 forms-flow-web/src/components/Modals/TaskVariableModal.js diff --git a/forms-flow-web/src/components/CustomComponents/MultiSelect.js b/forms-flow-web/src/components/CustomComponents/MultiSelect.js index 6a2e610272..b9140d2f85 100644 --- a/forms-flow-web/src/components/CustomComponents/MultiSelect.js +++ b/forms-flow-web/src/components/CustomComponents/MultiSelect.js @@ -1,6 +1,6 @@ import React, { useState, useRef, useEffect } from "react"; import { ListGroup } from "react-bootstrap"; -import { CustomPill } from "@formsflow/components"; +import { CustomPill,DeleteIcon } from "@formsflow/components"; import PropTypes from 'prop-types'; const RoleSelector = ({ allRoles = [], selectedRoles = [], setSelectedRoles }) => { @@ -62,7 +62,7 @@ const RoleSelector = ({ allRoles = [], selectedRoles = [], setSelectedRoles }) = } bg="primary" onClick={() => removeRole(role)} /> diff --git a/forms-flow-web/src/components/Form/EditForm/FlowEdit.js b/forms-flow-web/src/components/Form/EditForm/FlowEdit.js index 55c35b7f9a..413bc9c126 100644 --- a/forms-flow-web/src/components/Form/EditForm/FlowEdit.js +++ b/forms-flow-web/src/components/Form/EditForm/FlowEdit.js @@ -9,6 +9,7 @@ import { HistoryIcon, ConfirmModal, HistoryModal, + CurlyBracketsIcon } from "@formsflow/components"; import { Card } from "react-bootstrap"; import { useTranslation } from "react-i18next"; @@ -30,9 +31,10 @@ import { validateProcess, } from "../../../helper/processHelper.js"; import PropTypes from "prop-types"; +import TaskVariableModal from "../../Modals/TaskVariableModal.js"; const FlowEdit = forwardRef( - ({ isPublished = false, CategoryType, setIsProcessDetailsLoading }, ref) => { + ({ isPublished = false, CategoryType, setIsProcessDetailsLoading, form }, ref) => { const { t } = useTranslation(); const dispatch = useDispatch(); const bpmnRef = useRef(); @@ -45,6 +47,8 @@ const FlowEdit = forwardRef( useSelector((state) => state.process); const processHistory = processHistoryData.processHistory || []; const handleDiscardModal = () => setShowDiscardModal(!showDiscardModal); + const [showTaskVarModal, setShowTaskVarModal] = useState(false); + const [taskVariable ,setTaskVariable] = useState([]); const saveFlow = async () => { try { @@ -129,7 +133,12 @@ const FlowEdit = forwardRef( }); } }; - + const handlePreviewAndVariables = () => { + setShowTaskVarModal(true); + }; + const CloseTaskVarModal = () => { + setShowTaskVarModal(false); + }; return ( <> @@ -168,8 +177,9 @@ const FlowEdit = forwardRef( variant="secondary" size="md" className="mx-2" - label={t("Preview & Variables")} - onClick={() => console.log("handlePreviewAndVariables")} + icon={} + label={t("Variables")} + onClick={() => handlePreviewAndVariables()} dataTestid="preview-and-variables-testid" ariaLabel={t("{Preview and Variables Button}")} /> @@ -218,6 +228,15 @@ const FlowEdit = forwardRef( revertBtnAction={revertProcessBtnAction} historyCount={processHistoryData.totalCount} /> + {showTaskVarModal && ( + + )} ); } diff --git a/forms-flow-web/src/components/Form/EditForm/FormEdit.js b/forms-flow-web/src/components/Form/EditForm/FormEdit.js index 8122611f80..d0242d037e 100644 --- a/forms-flow-web/src/components/Form/EditForm/FormEdit.js +++ b/forms-flow-web/src/components/Form/EditForm/FormEdit.js @@ -1011,6 +1011,7 @@ const EditComponent = () => { CategoryType={CategoryType} setIsProcessDetailsLoading={setIsProcessDetailsLoading} isPublished={isPublished} + form={form} />}