amp-workflow-ui 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/context.tsx","../src/ui/ApprovalWorkflow.tsx","../src/ui/DialogOpener.tsx","../src/index.tsx"],"names":["useTheme","React","jsx","_a","useState","useEffect","Fragment","jsxs","IconButton","Button","DialogOpener","ApprovalWorkflow"],"mappings":"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","file":"index.mjs","sourcesContent":["import React, { createContext, useContext } from 'react'\nimport type { WorkflowContextValue } from './types'\n\nconst WorkflowContext = createContext<WorkflowContextValue | null>(null)\n\nexport function WorkflowProvider({\n value,\n children\n}: {\n value: WorkflowContextValue\n children: React.ReactNode\n}) {\n return <WorkflowContext.Provider value={value}>{children}</WorkflowContext.Provider>\n}\n\nexport function useWorkflowContext(): WorkflowContextValue {\n const ctx = useContext(WorkflowContext)\n if (!ctx) {\n throw new Error('useWorkflowContext must be used within WorkflowProvider')\n }\n return ctx\n}\n\n\n","import {\n Button,\n Card,\n CardContent,\n Chip,\n CircularProgress,\n Divider,\n Grid,\n IconButton,\n Tooltip,\n Typography,\n styled,\n useTheme\n} from '@mui/material'\nimport { Box } from '@mui/system'\nimport React, { useEffect, useState } from 'react'\nimport moment from 'moment'\nimport { useWorkflowContext } from '../context'\nimport type { ApprovalWorkflowProps } from '../types'\n\nconst StyledChipProps = styled(Chip)(({ theme }) => ({\n '&.MuiChip-colorPrimary': {\n border: `1px solid ${theme.palette.primary.dark}`,\n borderRadius: '8px',\n height: '36px',\n padding: '6px 4px',\n background: `${theme.palette.customColors?.customChipBackgroundColor ?? 'rgba(25,118,210,0.1)'}`,\n color: `${theme.palette.customColors?.customChipColor ?? theme.palette.primary.dark}`,\n width: '170px',\n overflow: 'hidden',\n whiteSpace: 'nowrap',\n textOverflow: 'ellipsis'\n },\n '&.MuiChip-colorDefault': {\n border: `1px solid ${theme.palette.grey[300]} !important`,\n borderRadius: '8px',\n height: '36px',\n padding: '6px 4px',\n background: 'none !important',\n color: `${(theme as any).palette?.customColors?.mainText ?? theme.palette.text.primary} `,\n width: '170px',\n overflow: 'hidden',\n whiteSpace: 'nowrap',\n textOverflow: 'ellipsis'\n }\n}))\n\nconst TruncatedTypography = styled(Typography)(({ theme }) => ({\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap',\n width: '200px',\n [theme.breakpoints.down('sm')]: {\n width: '80px'\n }\n}))\n\nexport function ApprovalWorkflow({\n selectedWorkflowsList = [],\n userInfo\n}: ApprovalWorkflowProps) {\n const theme = useTheme()\n const { api, urlBuilder, loadingComponent } = useWorkflowContext()\n\n const [selectedApprovalOtions, setSelectedApprovalOtions] = useState<string>(\n selectedWorkflowsList.length ? 'selected' : 'Action Required'\n )\n const [expandedId, setExpandedId] = useState<string | null>(null)\n const [sendDialog, setSendDialog] = React.useState<string | null>(null)\n const [approveDialog, setApproveDialog] = React.useState<string | null>(null)\n const [rejectDialog, setRejectDialog] = React.useState<string | null>(null)\n const [onHoldDialog, setOnHoldDialog] = React.useState<string | null>(null)\n const [expandedDetails, setExpandedDetails] = useState<any>([])\n const [statusCount, setStatusCount] = useState<any>({})\n const [urlConfig, setUrlConfig] = useState<any>({})\n const [allRequestArray, setAllRequestArray] = useState<any>([])\n const [pendingRequestArray, setPendingRequestArray] = useState<any>([])\n const [selectedRequestArray, setSelectedRequestArray] = useState<any>([])\n const [isLoading, setIsLoading] = useState<boolean>(false)\n\n const handleProfileToggle = (option: string) => {\n setSelectedApprovalOtions(option)\n if (option === 'Action Required') fetchPendingActivities()\n if (option === 'All Requests') fetchAllActivites()\n if (option === 'selected') fetchSelectedActivites()\n }\n\n const handleExpandClick = (id: string) => {\n setExpandedId(prevId => (prevId === id ? null : id))\n fetchExpandedActivityLogs(id)\n }\n\n const getStatus = (status: string) => {\n switch (status) {\n case 'approved':\n return {\n title: 'Approved',\n color: theme.palette.success.light,\n labelColor: theme.palette.success.main\n }\n case 'rejected':\n return {\n title: 'Rejected',\n color: (theme as any).palette?.customColors?.chipWarningContainer ?? theme.palette.error.light,\n labelColor: theme.palette.error.main\n }\n case 'onhold':\n return {\n title: 'On Hold',\n color: (theme as any).palette?.customColors?.chipPendingContainer ?? theme.palette.warning.light,\n labelColor: (theme as any).palette?.customColors?.chipPendingText ?? theme.palette.warning.main\n }\n case 'pending':\n default:\n return {\n title: 'Pending',\n color: (theme as any).palette?.customColors?.approvalPrimaryChipBG ?? theme.palette.info.light,\n labelColor: (theme as any).palette?.customColors?.approvalPrimaryChipText ?? theme.palette.info.main\n }\n }\n }\n\n const approvalChipLabel = [\n { label: 'Action Required', icon: <span className=\"icon-document-forward\"></span>, count: statusCount?.pending_activities_count || '' },\n { label: 'All Requests', icon: <span className=\"icon-document-copy\"></span>, count: statusCount?.total_activities_count || '' }\n ]\n\n const fetchExpandedActivityLogs = (workflowLogId: string) => {\n setExpandedDetails([])\n api\n .get({ url: `/workflow/workflow-activity-logs/${workflowLogId}`, serviceURL: 'api' })\n .then(res => setExpandedDetails(res?.data))\n }\n\n const fetchPendingActivities = () => {\n setIsLoading(true)\n api\n .get({ url: `/workflow/activity-workflow/${userInfo?.userInfo?.id}?paginate=false&type=pending`, serviceURL: 'api' })\n .then(res => setPendingRequestArray(res?.data?.activities))\n .finally(() => setIsLoading(false))\n }\n\n const fetchAllActivites = () => {\n setIsLoading(true)\n api\n .get({ url: `/workflow/activity-workflow/${userInfo?.userInfo?.id}?paginate=false`, serviceURL: 'api' })\n .then(res => setAllRequestArray(res?.data?.activities))\n .finally(() => setIsLoading(false))\n }\n\n const fetchSelectedActivites = () => {\n setIsLoading(true)\n api\n .post({ url: `/workflow/bulk-details`, serviceURL: 'api', data: { workflowIds: selectedWorkflowsList } })\n .then(res => setSelectedRequestArray(res?.data))\n .finally(() => setIsLoading(false))\n }\n\n const fetchStatusCount = () => {\n api.get({ url: `/workflow/status-count/${userInfo?.userInfo?.id}`, serviceURL: 'api' }).then(res => {\n setStatusCount(res?.data?.[0])\n })\n }\n\n useEffect(() => {\n if (!sendDialog && !approveDialog && !onHoldDialog && !rejectDialog) {\n fetchAllActivites()\n fetchStatusCount()\n fetchPendingActivities()\n setExpandedDetails([])\n setExpandedId(null)\n }\n }, [sendDialog, approveDialog, onHoldDialog, rejectDialog, userInfo])\n\n useEffect(() => {\n api.get({ url: `/workflow/url-config`, serviceURL: 'api' }).then(res => {\n const data = res?.data || []\n const map = data.reduce((acc: any, { module_name, ...details }: any) => {\n acc[module_name] = details\n return acc\n }, {})\n setUrlConfig(map)\n })\n }, [])\n\n useEffect(() => {\n if (selectedWorkflowsList.length && !selectedRequestArray.length) {\n fetchSelectedActivites()\n }\n }, [selectedWorkflowsList])\n\n const buildRedirectionUrl = (info: any) => {\n if (info?.redirection_link) return info.redirection_link\n if (urlBuilder) return urlBuilder(info?.module_name, info?.module_id, urlConfig, info?.reference_id)\n // fallback simple URL builder\n const ref = urlConfig?.[info?.module_name]\n if (ref?.base_url && ref?.sub_url) {\n const qs = new URLSearchParams()\n if (info?.reference_id) qs.set('reference_id', String(info?.reference_id))\n if (info?.module_name) qs.set('module_name', String(info?.module_name))\n return `${ref.base_url}${ref.sub_url}${qs.toString() ? `?${qs.toString()}` : ''}`\n }\n return '#'\n }\n\n if (isLoading && loadingComponent) return <>{loadingComponent}</>\n\n return (\n <>\n <Box sx={{ display: 'flex', justifyContent: 'center', flexWrap: 'nowrap' }}>\n <Box sx={{ width: '100%', height: '100%' }}>\n <Box sx={{ display: 'flex', justifyContent: 'space-between', alignItems: 'center' }}>\n <Box sx={{ mt: 2, mb: 2 }}>\n {selectedWorkflowsList?.length ? (\n <Tooltip title=\"Selected Workflows\">\n <StyledChipProps\n label={'Selected'}\n icon={<span className=\"icon-eye\"></span>}\n color={selectedApprovalOtions?.includes('selected') ? 'primary' : 'default'}\n variant=\"filled\"\n sx={{ mr: 4, mb: 4, '& .MuiChip-icon': { fontSize: '18px !important' } }}\n onClick={() => handleProfileToggle('selected')}\n />\n </Tooltip>\n ) : (\n ''\n )}\n\n {approvalChipLabel.map(({ label, icon, count }, index) => (\n <Tooltip key={index} title={`${count} ${label}`}>\n <StyledChipProps\n label={`${count} ${label}`}\n icon={icon}\n color={selectedApprovalOtions?.includes(label) ? 'primary' : 'default'}\n variant=\"filled\"\n sx={{ mr: 4, mb: 4, '& .MuiChip-icon': { fontSize: '18px !important' } }}\n onClick={() => handleProfileToggle(label)}\n />\n </Tooltip>\n ))}\n </Box>\n </Box>\n\n {/* Selected */}\n {selectedApprovalOtions === 'selected' && (\n <Box className=\"fixedModal\" sx={{ overflowY: 'auto', height: 'calc(100vh - 180px)' }}>\n {selectedRequestArray &&\n selectedRequestArray.map((info: any, index: number) => {\n const currentLevel = info?.levels.find((level_: any) => level_.id === info?.current_level)\n const statusList = currentLevel ? currentLevel.status_list : []\n const redir = buildRedirectionUrl(info)\n return (\n <React.Fragment key={index}>\n <Card\n sx={{\n mb: 8,\n '&.MuiCard-root.MuiPaper-elevation': {\n boxShadow: '2px 2px 10px 0px #4C4E6426',\n padding: '20px',\n borderRadius: '10px'\n }\n }}\n >\n <CardContent sx={{ display: 'flex', justifyContent: 'space-between', alignItems: 'center' }}>\n <Box>\n <Tooltip title={info.activityInstruction}>\n <TruncatedTypography variant=\"h6\" color={'text.primary'} sx={{ textTransform: 'capitalize', lineHeight: '22px' }}>\n {info.activity_name}\n </TruncatedTypography>\n </Tooltip>\n <Tooltip title={info.description_data}>\n <TruncatedTypography\n variant=\"body2\"\n color={'customColors.mainText' as any}\n sx={{ mt: '13px', textTransform: 'capitalize', lineHeight: '15.4px' }}\n >\n {info.description_data}\n </TruncatedTypography>\n </Tooltip>\n </Box>\n <Box>\n <Tooltip title=\"Links\">\n <TruncatedTypography\n variant=\"caption\"\n color={'customColors.text3' as any}\n sx={{ textTransform: 'capitalize', lineHeight: '13.2px' }}\n >\n Links\n </TruncatedTypography>\n </Tooltip>\n <Tooltip title={redir}>\n <a href={redir} style={{ cursor: 'pointer', textDecoration: 'none' }} target=\"_blank\" rel=\"noreferrer\">\n <TruncatedTypography\n variant=\"subtitle2\"\n color={'primary.dark'}\n sx={{ mt: '13px', lineHeight: '15.4px' }}\n >\n {redir}\n </TruncatedTypography>\n </a>\n </Tooltip>\n </Box>\n <Box>\n <Tooltip title=\"Attachments\">\n <TruncatedTypography\n variant=\"caption\"\n color={'customColors.text3' as any}\n sx={{ textTransform: 'capitalize', lineHeight: '13.2px' }}\n >\n Attachments\n </TruncatedTypography>\n </Tooltip>\n {info?.attachment_links?.length ? (\n info?.attachment_links.map((link: string, idx: number) => (\n <Tooltip title={`Attachment ${idx + 1}`} key={idx}>\n <a href={link} style={{ cursor: 'pointer', textDecoration: 'none' }} target=\"_blank\" rel=\"noreferrer\">\n <TruncatedTypography\n variant=\"subtitle2\"\n color={'primary.dark'}\n sx={{ mt: '13px', textTransform: 'capitalize', lineHeight: '15.4px' }}\n >\n {link || 'N/A'}\n </TruncatedTypography>\n </a>\n </Tooltip>\n ))\n ) : (\n <Box sx={{ display: 'flex', mt: 2, justifyContent: 'center', alignItems: 'center', lineHeight: '15.4px' }}>\n N/A\n </Box>\n )}\n </Box>\n <Box>\n <Tooltip title=\"Date and Time\">\n <TruncatedTypography\n variant=\"caption\"\n color={'customColors.text3' as any}\n sx={{ textTransform: 'capitalize', lineHeight: '13.2px' }}\n >\n TAT\n </TruncatedTypography>\n </Tooltip>\n <Tooltip title={info.dateTime}>\n <TruncatedTypography\n variant=\"subtitle2\"\n color={'customColors.mainText' as any}\n sx={{ mt: '13px', textTransform: 'capitalize', lineHeight: '15.4px' }}\n >\n {info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.tat_expiry\n ? moment(info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.tat_expiry)\n .utcOffset('UTC+05:30')\n .format('DD/MM/YYYY HH:MM A')\n : 'N/A'}\n </TruncatedTypography>\n </Tooltip>\n </Box>\n <Box>\n <Tooltip title=\"Current active level of Workflow\">\n <TruncatedTypography\n variant=\"caption\"\n color={'customColors.text3' as any}\n sx={{ textTransform: 'capitalize', lineHeight: '13.2px' }}\n >\n Current Level\n </TruncatedTypography>\n </Tooltip>\n <Box sx={{ display: 'flex', mt: 2, justifyContent: 'center', alignItems: 'center' }}>\n {info?.isLevelZero\n ? 'L0'\n : 'L' + ((info?.levels?.findIndex((lvl: any) => lvl.id === info?.current_level) ?? -1) + 1 || '')}\n </Box>\n </Box>\n <Box sx={{ mt: 2, display: 'flex', justifyContent: 'space-between', alignItems: 'center' }}>\n <Chip\n variant=\"filled\"\n sx={{\n backgroundColor: `${getStatus(\n info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status?.status_id === 1\n ? 'approved'\n : info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status?.status_id === 3\n ? 'rejected'\n : 'pending'\n )?.color} !important`,\n color: `${getStatus(\n info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status?.status_id === 1\n ? 'approved'\n : info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status?.status_id === 3\n ? 'rejected'\n : 'pending'\n )?.labelColor} !important`,\n height: '40px',\n padding: '8px',\n borderRadius: '100px !important',\n border: '0px !important',\n '& .MuiChip-label': {\n fontSize: '14px',\n lineHeight: '15.4px',\n fontWeight: '500',\n textTransform: 'capitalize'\n }\n }}\n label={`${\n info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status?.status_id === 2 ||\n info?.isLevelZero ||\n !info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status\n ? 'pending'\n : info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status?.name\n }`}\n />\n\n <Divider orientation=\"vertical\" sx={{ ml: 5, borderColor: (theme as any).palette?.customColors?.text4, height: '50px' }} />\n <IconButton\n disableFocusRipple\n disableRipple\n color=\"primary\"\n sx={{\n ml: 5,\n background: (theme as any).palette?.customColors?.primaryLightest ?? 'rgba(25,118,210,0.08)',\n boxShadow: '2px 2px 10px 0px #4C4E6426',\n '& span': { color: theme.palette.primary.dark }\n }}\n onClick={() => handleExpandClick(info._id)}\n >\n {expandedId === info._id ? <span className=\"icon-arrow-down-1\"></span> : <span className=\"icon-arrow-right-3\"></span>}\n </IconButton>\n </Box>\n </CardContent>\n </Card>\n {expandedId === info._id && (\n <Grid container xs={12} spacing={5 as any}>\n <Grid item xs={12} sx={{ transform: 'translateX(3.9%)' }}>\n {!expandedDetails?.length ? (\n <Box sx={{ height: '200px', display: 'flex', justifyContent: 'center', alignItems: 'center' }}>\n <CircularProgress size={40} sx={{ color: theme.palette.primary.dark }} />\n </Box>\n ) : (\n <Box sx={{ pl: 2 }}>\n {expandedDetails?.map((item: any, idx: number) => (\n <Box key={idx} sx={{ mb: 2 }}>\n <Typography variant=\"caption\" sx={{ mr: 2 }}>\n {moment(item?.created_at).format('DD-MM-YYYY HH:mm')}\n </Typography>\n <Typography variant=\"body2\" component=\"span\">\n {item?.type} - {item?.comment_reasons?.comment || 'No Comments'}\n </Typography>\n </Box>\n ))}\n </Box>\n )}\n </Grid>\n </Grid>\n )}\n </React.Fragment>\n )\n })}\n </Box>\n )}\n\n {/* All Requests */}\n {selectedApprovalOtions === 'All Requests' && (\n <Box className=\"fixedModal\" sx={{ overflowY: 'auto', height: 'calc(100vh - 180px)' }}>\n {allRequestArray &&\n allRequestArray.map((info: any, index: number) => {\n const currentLevel = info?.levels.find((level_: any) => level_.id === info?.current_level)\n const statusList = currentLevel ? currentLevel.status_list : []\n const redir = buildRedirectionUrl(info)\n return (\n <React.Fragment key={index}>\n <Card\n sx={{\n mb: 8,\n '&.MuiCard-root.MuiPaper-elevation': {\n boxShadow: '2px 2px 10px 0px #4C4E6426',\n padding: '20px',\n borderRadius: '10px'\n }\n }}\n >\n <CardContent sx={{ display: 'flex', justifyContent: 'space-between', alignItems: 'center' }}>\n <Box>\n <Tooltip title={info.activityInstruction}>\n <TruncatedTypography variant=\"h6\" color={'text.primary'} sx={{ textTransform: 'capitalize', lineHeight: '22px' }}>\n {info.activity_name}\n </TruncatedTypography>\n </Tooltip>\n <Tooltip title={info.description_data}>\n <TruncatedTypography\n variant=\"body2\"\n color={'customColors.mainText' as any}\n sx={{ mt: '13px', textTransform: 'capitalize', lineHeight: '15.4px' }}\n >\n {info.description_data}\n </TruncatedTypography>\n </Tooltip>\n </Box>\n <Box>\n <Tooltip title=\"Links\">\n <TruncatedTypography\n variant=\"caption\"\n color={'customColors.text3' as any}\n sx={{ textTransform: 'capitalize', lineHeight: '13.2px' }}\n >\n Links\n </TruncatedTypography>\n </Tooltip>\n <Tooltip title={redir}>\n <a href={redir} style={{ cursor: 'pointer', textDecoration: 'none' }} target=\"_blank\" rel=\"noreferrer\">\n <TruncatedTypography\n variant=\"subtitle2\"\n color={'primary.dark'}\n sx={{ mt: '13px', lineHeight: '15.4px' }}\n >\n {redir}\n </TruncatedTypography>\n </a>\n </Tooltip>\n </Box>\n <Box>\n <Tooltip title=\"Attachments\">\n <TruncatedTypography\n variant=\"caption\"\n color={'customColors.text3' as any}\n sx={{ textTransform: 'capitalize', lineHeight: '13.2px' }}\n >\n Attachments\n </TruncatedTypography>\n </Tooltip>\n {info?.attachment_links?.length ? (\n info?.attachment_links.map((link: string, idx: number) => (\n <Tooltip title={`Attachment ${idx + 1}`} key={idx}>\n <a href={link} style={{ cursor: 'pointer', textDecoration: 'none' }} target=\"_blank\" rel=\"noreferrer\">\n <TruncatedTypography\n variant=\"subtitle2\"\n color={'primary.dark'}\n sx={{ mt: '13px', textTransform: 'capitalize', lineHeight: '15.4px' }}\n >\n {link || 'N/A'}\n </TruncatedTypography>\n </a>\n </Tooltip>\n ))\n ) : (\n <Box sx={{ display: 'flex', mt: 2, justifyContent: 'center', alignItems: 'center', lineHeight: '15.4px' }}>N/A</Box>\n )}\n </Box>\n <Box sx={{ mt: 2, display: 'flex', justifyContent: 'space-between', alignItems: 'center' }}>\n <Chip\n variant=\"filled\"\n sx={{\n backgroundColor: `${getStatus(\n info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status?.status_id === 1\n ? 'approved'\n : info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status?.status_id === 3\n ? 'rejected'\n : 'pending'\n )?.color} !important`,\n color: `${getStatus(\n info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status?.status_id === 1\n ? 'approved'\n : info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status?.status_id === 3\n ? 'rejected'\n : 'pending'\n )?.labelColor} !important`,\n height: '40px',\n padding: '8px',\n borderRadius: '100px !important',\n border: '0px !important',\n '& .MuiChip-label': {\n fontSize: '14px',\n lineHeight: '15.4px',\n fontWeight: '500',\n textTransform: 'capitalize'\n }\n }}\n label={`${\n info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status?.status_id === 2 ||\n info?.isLevelZero ||\n !info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status\n ? 'pending'\n : info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status?.name\n }`}\n />\n\n <Divider orientation=\"vertical\" sx={{ ml: 5, borderColor: (theme as any).palette?.customColors?.text4, height: '50px' }} />\n <IconButton\n disableFocusRipple\n disableRipple\n color=\"primary\"\n sx={{\n ml: 5,\n background: (theme as any).palette?.customColors?.primaryLightest ?? 'rgba(25,118,210,0.08)',\n boxShadow: '2px 2px 10px 0px #4C4E6426',\n '& span': { color: theme.palette.primary.dark }\n }}\n onClick={() => handleExpandClick(info._id)}\n >\n {expandedId === info._id ? <span className=\"icon-arrow-down-1\"></span> : <span className=\"icon-arrow-right-3\"></span>}\n </IconButton>\n </Box>\n </CardContent>\n </Card>\n {expandedId === info._id && (\n <Grid container xs={12} spacing={5 as any}>\n <Grid item xs={12} sx={{ transform: 'translateX(3.9%)' }}>\n {!expandedDetails?.length ? (\n <Box sx={{ height: '200px', display: 'flex', justifyContent: 'center', alignItems: 'center' }}>\n <CircularProgress size={40} sx={{ color: theme.palette.primary.dark }} />\n </Box>\n ) : (\n <Box sx={{ pl: 2 }}>\n {expandedDetails?.map((item: any, idx: number) => (\n <Box key={idx} sx={{ mb: 2 }}>\n <Typography variant=\"caption\" sx={{ mr: 2 }}>\n {moment(item?.created_at).format('DD-MM-YYYY HH:mm')}\n </Typography>\n <Typography variant=\"body2\" component=\"span\">\n {item?.type} - {item?.comment_reasons?.comment || 'No Comments'}\n </Typography>\n </Box>\n ))}\n </Box>\n )}\n </Grid>\n </Grid>\n )}\n </React.Fragment>\n )\n })}\n </Box>\n )}\n\n {/* Action Required */}\n {selectedApprovalOtions === 'Action Required' && (\n <Box className=\"fixedModal\" sx={{ overflowY: 'auto', height: 'calc(100vh - 180px)' }}>\n {pendingRequestArray &&\n pendingRequestArray.map((info: any, index: number) => {\n const currentLevel = info?.levels?.find((level_: any) => level_.id === info?.current_level)\n const statusList = currentLevel ? currentLevel.status_list : []\n const redir = buildRedirectionUrl(info)\n return (\n <React.Fragment key={index}>\n <Card\n sx={{\n mb: 8,\n '&.MuiCard-root.MuiPaper-elevation': {\n boxShadow: '2px 2px 10px 0px #4C4E6426',\n padding: '20px',\n borderRadius: '10px'\n }\n }}\n >\n <CardContent sx={{ display: 'flex', justifyContent: 'space-between', alignItems: 'center' }}>\n <Box>\n <Tooltip title={info.title}>\n <TruncatedTypography variant=\"h6\" color={'text.primary'} sx={{ textTransform: 'capitalize', lineHeight: '22px' }}>\n {info.activity_name}\n </TruncatedTypography>\n </Tooltip>\n <Tooltip title={info.description_data}>\n <TruncatedTypography\n variant=\"body2\"\n color={'customColors.mainText' as any}\n sx={{ mt: '13px', textTransform: 'capitalize', lineHeight: '15.4px' }}\n >\n {info.description_data}\n </TruncatedTypography>\n </Tooltip>\n </Box>\n <Box>\n <Tooltip title=\"Links\">\n <TruncatedTypography\n variant=\"caption\"\n color={'customColors.text3' as any}\n sx={{ textTransform: 'capitalize', lineHeight: '13.2px' }}\n >\n Links\n </TruncatedTypography>\n </Tooltip>\n <Tooltip title={redir}>\n <a href={redir} style={{ cursor: 'pointer', textDecoration: 'none' }} target=\"_blank\" rel=\"noreferrer\">\n <TruncatedTypography\n variant=\"subtitle2\"\n color={'primary.dark'}\n sx={{ mt: '13px', lineHeight: '15.4px' }}\n >\n {redir}\n </TruncatedTypography>\n </a>\n </Tooltip>\n </Box>\n <Box sx={{ mt: 2, display: 'flex', justifyContent: 'space-between', alignItems: 'center' }}>\n <Chip\n variant=\"filled\"\n sx={{\n backgroundColor: `${getStatus(\n info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status?.status_id === 1\n ? 'approved'\n : info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status?.status_id === 3\n ? 'rejected'\n : 'pending'\n )?.color} !important`,\n color: `${getStatus(\n info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status?.status_id === 1\n ? 'approved'\n : info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status?.status_id === 3\n ? 'rejected'\n : 'pending'\n )?.labelColor} !important`,\n height: '40px',\n padding: '8px',\n borderRadius: '100px !important',\n border: '0px !important',\n '& .MuiChip-label': {\n fontSize: '14px',\n lineHeight: '15.4px',\n fontWeight: '500',\n textTransform: 'capitalize'\n }\n }}\n label={`${\n info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status?.status_id === 2 ||\n info?.isLevelZero ||\n !info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status\n ? 'pending'\n : info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status?.name\n }`}\n />\n\n <Divider orientation=\"vertical\" sx={{ ml: 5, borderColor: (theme as any).palette?.customColors?.text4, height: '50px' }} />\n <IconButton\n disableFocusRipple\n disableRipple\n color=\"primary\"\n sx={{\n ml: 5,\n background: (theme as any).palette?.customColors?.primaryLightest ?? 'rgba(25,118,210,0.08)',\n boxShadow: '2px 2px 10px 0px #4C4E6426',\n '& span': { color: theme.palette.primary.dark }\n }}\n onClick={() => handleExpandClick(info._id)}\n >\n {expandedId === info._id ? <span className=\"icon-arrow-down-1\"></span> : <span className=\"icon-arrow-right-3\"></span>}\n </IconButton>\n </Box>\n </CardContent>\n </Card>\n {expandedId === info._id && (\n <Grid container xs={12} spacing={5 as any}>\n <Grid item xs={12} sx={{ transform: 'translateX(3.9%)' }}>\n {!expandedDetails?.length ? (\n <Box sx={{ height: '200px', display: 'flex', justifyContent: 'center', alignItems: 'center' }}>\n <CircularProgress size={40} sx={{ color: theme.palette.primary.dark }} />\n </Box>\n ) : (\n <Box sx={{ pl: 2 }}>\n {expandedDetails?.map((item: any, idx: number) => (\n <Box key={idx} sx={{ mb: 2 }}>\n <Typography variant=\"caption\" sx={{ mr: 2 }}>\n {moment(item?.created_at).format('DD-MM-YYYY HH:mm')}\n </Typography>\n <Typography variant=\"body2\" component=\"span\">\n {item?.type} - {item?.comment_reasons?.comment || 'No Comments'}\n </Typography>\n </Box>\n ))}\n </Box>\n )}\n </Grid>\n </Grid>\n )}\n </React.Fragment>\n )\n })}\n </Box>\n )}\n </Box>\n </Box>\n </>\n )\n}\n\n\n","import React, { useEffect, useState } from 'react'\nimport Button from '@mui/material/Button'\nimport Dialog from '@mui/material/Dialog'\nimport { useTheme } from '@mui/material/styles'\nimport useMediaQuery from '@mui/material/useMediaQuery'\nimport DialogActions from '@mui/material/DialogActions'\nimport DialogContent from '@mui/material/DialogContent'\nimport { IconButton } from '@mui/material'\nimport HighlightOffIcon from '@mui/icons-material/HighlightOff'\nimport { ApprovalWorkflow } from './ApprovalWorkflow'\nimport type { DialogOpenerProps } from '../types'\n\nexport function DialogOpener({\n openDialog,\n handleClose,\n userInfoData,\n selectedWorkflowsList = []\n}: DialogOpenerProps) {\n const theme = useTheme()\n const fullScreen = useMediaQuery(theme.breakpoints.down('lg'))\n const [screenWidth, setScreenWidth] = useState<number>(typeof window !== 'undefined' ? window.innerWidth : 0)\n\n useEffect(() => {\n const updateScreenWidth = () => setScreenWidth(window.innerWidth)\n window.addEventListener('resize', updateScreenWidth)\n return () => window.removeEventListener('resize', updateScreenWidth)\n }, [])\n\n return (\n <>\n <Dialog\n fullScreen={true}\n open={openDialog}\n onClose={() => handleClose && handleClose()}\n aria-labelledby=\"responsive-dialog-title\"\n sx={{ zIndex: 123 }}\n >\n <DialogContent>\n <IconButton onClick={handleClose} disableFocusRipple disableRipple sx={{ float: 'right' }}>\n <HighlightOffIcon style={{ color: '#666666' }} />\n </IconButton>\n <ApprovalWorkflow userInfo={userInfoData} selectedWorkflowsList={selectedWorkflowsList} />\n </DialogContent>\n <DialogActions>\n <Button\n variant=\"contained\"\n color=\"primary\"\n sx={{ display: 'flex', justifyContent: 'flex-end', alignItems: 'center' }}\n onClick={handleClose}\n >\n Close\n </Button>\n </DialogActions>\n </Dialog>\n </>\n )\n}\n\n\n","import React from 'react'\nimport { WorkflowProvider } from './context'\nimport type { ApiClient, UrlBuilder, DialogOpenerProps, ApprovalWorkflowProps } from './types'\nimport { DialogOpener as InternalDialogOpener } from './ui/DialogOpener'\nimport { ApprovalWorkflow as InternalApprovalWorkflow } from './ui/ApprovalWorkflow'\n\nexport type { ApiClient, UrlBuilder, DialogOpenerProps, ApprovalWorkflowProps }\n\nexport function DialogOpener(props: DialogOpenerProps & {\n api: ApiClient\n urlBuilder?: UrlBuilder\n loadingComponent?: React.ReactNode\n}) {\n const { api, urlBuilder, loadingComponent, userInfoData, ...rest } = props\n return (\n <WorkflowProvider value={{ api, urlBuilder, userInfo: userInfoData, loadingComponent }}>\n <InternalDialogOpener {...rest} userInfoData={userInfoData} />\n </WorkflowProvider>\n )\n}\n\nexport function ApprovalWorkflow(props: ApprovalWorkflowProps & {\n api: ApiClient\n urlBuilder?: UrlBuilder\n loadingComponent?: React.ReactNode\n}) {\n const { api, urlBuilder, loadingComponent, userInfo, ...rest } = props\n return (\n <WorkflowProvider value={{ api, urlBuilder, userInfo, loadingComponent }}>\n <InternalApprovalWorkflow userInfo={userInfo} {...rest} />\n </WorkflowProvider>\n )\n}\n\n\n"]}
1
+ {"version":3,"sources":["../src/context.tsx","../src/ui/Statusselector.tsx","../src/ui/dialogs/SendBackDialog.tsx","../src/ui/dialogs/ApproveDialog.tsx","../src/ui/dialogs/RejectDialog.tsx","../src/ui/dialogs/OnHoldDialog.tsx","../src/ui/ApprovalWorkflow.tsx","../src/ui/DialogOpener.tsx","../src/index.tsx"],"names":["jsx","useState","error","jsxs","Box","Button","toast","Dialog","DialogTitle","IconButton","HighlightOffIcon","DialogContent","Grid","TextField","DialogActions","CircularProgress","useTheme","useMediaQuery","useEffect","MenuItem","Typography","React","_a","Fragment","_b","DialogOpener","ApprovalWorkflow"],"mappings":"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","file":"index.mjs","sourcesContent":["import React, { createContext, useContext } from 'react'\nimport type { WorkflowContextValue } from './types'\n\nconst WorkflowContext = createContext<WorkflowContextValue | null>(null)\n\nexport function WorkflowProvider({\n value,\n children\n}: {\n value: WorkflowContextValue\n children: React.ReactNode\n}) {\n return <WorkflowContext.Provider value={value}>{children}</WorkflowContext.Provider>\n}\n\nexport function useWorkflowContext(): WorkflowContextValue {\n const ctx = useContext(WorkflowContext)\n if (!ctx) {\n throw new Error('useWorkflowContext must be used within WorkflowProvider')\n }\n return ctx\n}\n\n\n","import React, { useState } from 'react'\nimport { Menu, MenuItem, Button } from '@mui/material'\n\ninterface ActionMenuProps {\n onSendBack: () => void\n onApprove: () => void\n onReject: () => void\n onHold: () => void\n statusList: Array<{ id: number; name: string; status?: number }>\n}\n\nconst ActionMenu: React.FC<ActionMenuProps> = ({\n onSendBack,\n onApprove,\n onReject,\n onHold,\n statusList\n}) => {\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null)\n const open = Boolean(anchorEl)\n\n const handleActionClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n setAnchorEl(event.currentTarget)\n }\n\n const handleClose = () => setAnchorEl(null)\n\n return (\n <>\n <Button variant=\"contained\" color=\"primary\" onClick={handleActionClick}>\n Apply Action\n </Button>\n <Menu anchorEl={anchorEl} open={open} onClose={handleClose} MenuListProps={{ 'aria-labelledby': 'basic-button' }}>\n <MenuItem\n onClick={() => {\n onSendBack()\n handleClose()\n }}\n >\n Send Back\n </MenuItem>\n {statusList.map((list: any) => (\n <MenuItem\n key={list.id}\n onClick={() => {\n if (list.status === 1) onApprove()\n else if (list.status === 2) onHold()\n else if (list.status === 3) onReject()\n handleClose()\n }}\n >\n {list.name}\n </MenuItem>\n ))}\n </Menu>\n </>\n )\n}\n\nexport default ActionMenu\n\n\n","import React, { useRef, useState } from 'react'\nimport Dialog from '@mui/material/Dialog'\nimport DialogContent from '@mui/material/DialogContent'\nimport {\n Box,\n Button,\n DialogActions,\n DialogTitle,\n Grid,\n InputAdornment,\n TextField,\n CircularProgress,\n IconButton\n} from '@mui/material'\nimport HighlightOffIcon from '@mui/icons-material/HighlightOff'\nimport toast from 'react-hot-toast'\nimport { useWorkflowContext } from '../../context'\n\ntype Props = {\n openModal: boolean\n closeModal?: () => void\n header?: string\n workflowLogId: string\n}\n\nfunction SendBackDialog({ openModal, closeModal, header, workflowLogId }: Props) {\n const { userInfo, api } = useWorkflowContext()\n const [comment, setComment] = useState('')\n const [selectedFile, setSelectedFile] = useState<string | null>(null)\n const [fileName, setFileName] = useState<string>('')\n const [error, setError] = useState<{ comment?: string; file?: string }>({})\n const [loading, setLoading] = useState(false)\n const [fileLoading, setFileLoading] = useState(false)\n const fileInputRef = useRef<HTMLInputElement | null>(null)\n\n const handleAttachment = () => fileInputRef.current?.click()\n\n const handleUpload = async (file: File) => {\n setFileLoading(true)\n const formData = new FormData()\n formData.append('file', file)\n try {\n const response = await api.post('/workflow/upload-document', formData, {\n headers: { 'Content-Type': 'multipart/form-data' }\n })\n setFileName(response.data.file)\n setSelectedFile(response.data.file)\n } catch (error) {\n toast.error('File upload failed')\n } finally {\n setFileLoading(false)\n }\n }\n\n const handleFileChange = async (event: React.ChangeEvent<HTMLInputElement>) => {\n if (event.target.files && event.target.files.length > 0) {\n const file = event.target.files[0]\n await handleUpload(file)\n setError(prev => ({ ...prev, file: '' }))\n } else {\n setSelectedFile(null)\n setFileName('')\n }\n }\n\n const validateFields = () => {\n let isValid = true\n const errors = { comment: '', file: '' }\n if (!comment) {\n errors.comment = 'Please enter a comment'\n isValid = false\n }\n setError(errors)\n return isValid\n }\n\n const onSubmit = async () => {\n if (!validateFields()) return\n setLoading(true)\n try {\n const res = await api.post(`/workflow/send-back/${workflowLogId}`, {\n comment,\n file: selectedFile,\n created_by: userInfo?.userInfo?.id\n })\n if (res?.status === 200) toast.success('Successfully sent back!')\n if ((res as any)?.error?.message) {\n toast.error((res as any)?.error?.message, { duration: 2000 })\n }\n closeModal && closeModal()\n } catch {\n toast.error('Opps! something went wrong.')\n } finally {\n setLoading(false)\n }\n }\n\n return (\n <Dialog open={openModal} onClose={closeModal} aria-labelledby=\"responsive-dialog-title\" sx={{ '& .MuiPaper-root.MuiDialog-paper': { width: '550px' } }}>\n <Box sx={{ display: 'flex', justifyContent: 'space-between', alignItems: 'center' }}>\n <DialogTitle id=\"responsive-dialog-title\">{header}</DialogTitle>\n <IconButton disableFocusRipple disableRipple onClick={closeModal}>\n <HighlightOffIcon style={{ color: '#666666' }} />\n </IconButton>\n </Box>\n <DialogContent>\n <Box sx={{ mb: 5 }}>\n <Grid container spacing={5}>\n <Grid item xs={12}>\n <TextField\n fullWidth\n label=\"Comment\"\n value={comment}\n placeholder=\"Comment Here\"\n onChange={e => setComment(e.target.value)}\n required\n error={!!error.comment}\n helperText={error.comment}\n />\n </Grid>\n <Grid item xs={12}>\n <TextField\n type=\"text\"\n fullWidth\n label=\"Attachment\"\n placeholder=\"Attachment\"\n InputProps={{\n endAdornment: (\n <InputAdornment position=\"end\">\n <span className=\"icon-export-1\"></span>\n </InputAdornment>\n )\n }}\n onClick={handleAttachment}\n value={fileName}\n error={!!error.file}\n helperText={error.file}\n />\n <input type=\"file\" ref={fileInputRef} style={{ display: 'none' }} onChange={handleFileChange} />\n </Grid>\n </Grid>\n </Box>\n </DialogContent>\n <DialogActions>\n <Box sx={{ display: 'flex', justifyContent: 'flex-end', alignItems: 'center' }}>\n <Button onClick={closeModal} size=\"large\" variant=\"outlined\" color=\"primary\" sx={{ mr: 2 }}>\n Close\n </Button>\n <Button onClick={onSubmit} size=\"large\" variant=\"contained\" color=\"primary\" disabled={loading || fileLoading}>\n {loading ? <CircularProgress size={24} color=\"inherit\" /> : 'Submit'}\n </Button>\n </Box>\n </DialogActions>\n </Dialog>\n )\n}\n\nexport default SendBackDialog\n\n\n","import React, { useEffect, useState } from 'react'\nimport Dialog from '@mui/material/Dialog'\nimport DialogContent from '@mui/material/DialogContent'\nimport { Box, Button, DialogActions, DialogTitle, Grid, TextField, CircularProgress, IconButton } from '@mui/material'\nimport HighlightOffIcon from '@mui/icons-material/HighlightOff'\nimport { useTheme } from '@mui/material/styles'\nimport useMediaQuery from '@mui/material/useMediaQuery'\nimport toast from 'react-hot-toast'\nimport { useWorkflowContext } from '../../context'\n\ntype Props = {\n openModal: boolean\n closeModal?: () => void\n header?: string\n workflowLogId: string\n statusId: string\n}\n\nfunction ApproveDialog({ openModal, closeModal, header, workflowLogId, statusId }: Props) {\n const { userInfo, api } = useWorkflowContext()\n const theme = useTheme()\n const fullScreen = useMediaQuery(theme.breakpoints.down('lg'))\n const [comment, setComment] = useState('')\n const [error, setError] = useState<{ comment?: string }>({})\n const [loading, setLoading] = useState(false)\n\n const validateFields = () => {\n let isValid = true\n const newError: { comment?: string } = {}\n if (!comment) {\n newError.comment = 'Please provide a comment'\n isValid = false\n }\n setError(newError)\n return isValid\n }\n\n const onSubmit = async () => {\n if (!validateFields()) return\n setLoading(true)\n try {\n await api.post(`/workflow/update-status/${workflowLogId}/${statusId}`, {\n comment,\n created_by: userInfo?.userInfo?.id\n })\n toast.success('approved successfully!!!')\n closeModal && closeModal()\n } catch {\n toast.error('something unexpected occured!!!')\n } finally {\n setLoading(false)\n }\n }\n\n return (\n <Dialog open={openModal} onClose={closeModal} aria-labelledby=\"responsive-dialog-title\" sx={{ '& .MuiPaper-root.MuiDialog-paper': { width: '550px' } }}>\n <Box sx={{ display: 'flex', justifyContent: 'space-between', alignItems: 'center' }}>\n <DialogTitle id=\"responsive-dialog-title\">{header}</DialogTitle>\n <IconButton disableFocusRipple disableRipple onClick={closeModal}>\n <HighlightOffIcon style={{ color: '#666666' }} />\n </IconButton>\n </Box>\n <DialogContent>\n <Box sx={{ mb: 5 }}>\n <Grid container spacing={5}>\n <Grid item xs={12}>\n <TextField fullWidth label=\"Comment\" value={comment} placeholder=\"Comment Here\" onChange={e => setComment(e.target.value)} required error={!!error.comment} helperText={error.comment} />\n </Grid>\n </Grid>\n </Box>\n </DialogContent>\n <DialogActions>\n <Box sx={{ display: 'flex', justifyContent: 'flex-end', alignItems: 'center' }}>\n <Button onClick={closeModal} size=\"large\" variant=\"outlined\" color=\"primary\" sx={{ mr: 2 }}>\n Close\n </Button>\n <Button onClick={onSubmit} size=\"large\" variant=\"contained\" color=\"primary\" disabled={loading}>\n {loading ? <CircularProgress size={24} color=\"inherit\" /> : 'Submit'}\n </Button>\n </Box>\n </DialogActions>\n </Dialog>\n )\n}\n\nexport default ApproveDialog\n\n\n","import React, { useEffect, useState } from 'react'\nimport Dialog from '@mui/material/Dialog'\nimport DialogContent from '@mui/material/DialogContent'\nimport {\n Box,\n Button,\n DialogActions,\n DialogTitle,\n FormControl,\n Grid,\n InputLabel,\n MenuItem,\n Select,\n TextField,\n Typography,\n CircularProgress,\n IconButton\n} from '@mui/material'\nimport HighlightOffIcon from '@mui/icons-material/HighlightOff'\nimport { useTheme } from '@mui/material/styles'\nimport useMediaQuery from '@mui/material/useMediaQuery'\nimport { useWorkflowContext } from '../../context'\n\ntype Props = {\n openModal: boolean\n closeModal?: () => void\n header?: string\n workflowLogId: string\n statusId: string\n rejection_reason_master: string\n}\n\nfunction RejectDialog({ openModal, closeModal, header, workflowLogId, statusId, rejection_reason_master }: Props) {\n const { userInfo, api } = useWorkflowContext()\n const theme = useTheme()\n const fullScreen = useMediaQuery(theme.breakpoints.down('lg'))\n const DownArrow = () => <span style={{ color: theme.palette.customColors?.mainText || '#333' }} className=\"icon-arrow-down-1\"></span>\n\n const [rejectReasons, setRejectReasons] = useState<string>('')\n const [comment, setComment] = useState('')\n const [error, setError] = useState({ reason: '', comment: '' })\n const [statusApplicableList, setStatusApplicableList] = useState<any>([])\n const [loading, setLoading] = useState(false)\n\n useEffect(() => {\n ;(async () => {\n try {\n if (!statusApplicableList.length) {\n const res = await api.get(`/workflow/applicableStatuses?type=${rejection_reason_master}`)\n setStatusApplicableList(res?.data?.data || [])\n }\n } catch (e) {\n // noop\n }\n })()\n }, [])\n\n const validateFields = () => {\n let isValid = true\n const errors = { reason: '', comment: '' }\n if (!rejectReasons) {\n errors.reason = 'Please select a reject reason'\n isValid = false\n }\n if (!comment) {\n errors.comment = 'Please enter a comment'\n isValid = false\n }\n setError(errors)\n return isValid\n }\n\n const onSubmit = async () => {\n if (!validateFields()) return\n setLoading(true)\n try {\n await api.post(`/workflow/update-status/${workflowLogId}/${statusId}`, {\n reason: rejectReasons,\n comment,\n created_by: userInfo?.userInfo?.id\n })\n closeModal && closeModal()\n } catch (e) {\n // noop\n } finally {\n setLoading(false)\n }\n }\n\n return (\n <Dialog open={openModal} onClose={closeModal} aria-labelledby=\"responsive-dialog-title\" sx={{ '& .MuiPaper-root.MuiDialog-paper': { width: '550px' } }}>\n <Box sx={{ display: 'flex', justifyContent: 'space-between', alignItems: 'center' }}>\n <DialogTitle id=\"responsive-dialog-title\">{header}</DialogTitle>\n <IconButton disableFocusRipple disableRipple onClick={closeModal}>\n <HighlightOffIcon style={{ color: '#666666' }} />\n </IconButton>\n </Box>\n <DialogContent>\n <Box sx={{ mb: 5 }}>\n <Grid container spacing={5}>\n <Grid item xs={12}>\n <FormControl fullWidth required error={!!error.reason}>\n <InputLabel required id=\"reject-reason-label\">\n Reject Reasons\n </InputLabel>\n <Select IconComponent={DownArrow as any} label=\"Reject Reasons\" value={rejectReasons} id=\"reject-reason\" labelId=\"reject-reason-label\" onChange={e => setRejectReasons(e.target.value as string)}>\n {statusApplicableList?.map((reason_: any) => (\n <MenuItem key={reason_?.id} value={reason_?.id}>\n {reason_?.name}\n </MenuItem>\n ))}\n </Select>\n {error.reason && (\n <Typography variant=\"caption\" color=\"error\">\n {error.reason}\n </Typography>\n )}\n </FormControl>\n </Grid>\n <Grid item xs={12}>\n <TextField fullWidth label=\"Comment\" value={comment} placeholder=\"Comment Here\" onChange={e => setComment(e.target.value)} required error={!!error.comment} helperText={error.comment} />\n </Grid>\n </Grid>\n </Box>\n </DialogContent>\n <DialogActions>\n <Box sx={{ display: 'flex', justifyContent: 'flex-end', alignItems: 'center' }}>\n <Button onClick={closeModal} size=\"large\" variant=\"outlined\" color=\"primary\" sx={{ mr: 2 }}>\n Close\n </Button>\n <Button onClick={onSubmit} size=\"large\" variant=\"contained\" color=\"primary\" disabled={loading}>\n {loading ? <CircularProgress size={24} color=\"inherit\" /> : 'Submit'}\n </Button>\n </Box>\n </DialogActions>\n </Dialog>\n )\n}\n\nexport default RejectDialog\n\n\n","import React, { useEffect, useState } from 'react'\nimport Dialog from '@mui/material/Dialog'\nimport DialogContent from '@mui/material/DialogContent'\nimport {\n Box,\n Button,\n DialogActions,\n DialogTitle,\n Grid,\n TextField,\n Typography,\n CircularProgress,\n IconButton\n} from '@mui/material'\nimport HighlightOffIcon from '@mui/icons-material/HighlightOff'\nimport { useTheme } from '@mui/material/styles'\nimport useMediaQuery from '@mui/material/useMediaQuery'\nimport toast from 'react-hot-toast'\nimport { useWorkflowContext } from '../../context'\n\ntype Props = {\n openModal: boolean\n closeModal?: () => void\n header?: string\n workflowLogId: string\n statusId: string\n}\n\nfunction OnHoldDialog({ openModal, closeModal, header, workflowLogId, statusId }: Props) {\n const { userInfo, api } = useWorkflowContext()\n const theme = useTheme()\n const fullScreen = useMediaQuery(theme.breakpoints.down('lg'))\n const [comment, setComment] = useState('')\n const [error, setError] = useState({ comment: '' })\n const [loading, setLoading] = useState(false)\n\n const validateFields = () => {\n let isValid = true\n const errors = { comment: '' }\n if (!comment) {\n errors.comment = 'Please enter a comment'\n isValid = false\n }\n setError(errors)\n return isValid\n }\n\n const onSubmit = async () => {\n if (!validateFields()) return\n setLoading(true)\n try {\n await api.post(`/workflow/update-status/${workflowLogId}/${statusId}`, {\n comment,\n created_by: userInfo?.userInfo?.id\n })\n closeModal && closeModal()\n } catch {\n toast.error('Failed to submit the form')\n } finally {\n setLoading(false)\n }\n }\n\n return (\n <Dialog open={openModal} onClose={closeModal} aria-labelledby=\"responsive-dialog-title\" sx={{ '& .MuiPaper-root.MuiDialog-paper': { width: '550px' } }}>\n <Box sx={{ display: 'flex', justifyContent: 'space-between', alignItems: 'center' }}>\n <DialogTitle id=\"responsive-dialog-title\">{header}</DialogTitle>\n <IconButton disableFocusRipple disableRipple onClick={closeModal}>\n <HighlightOffIcon style={{ color: '#666666' }} />\n </IconButton>\n </Box>\n <DialogContent>\n <Box sx={{ mb: 5 }}>\n <Grid container spacing={5}>\n <Grid item xs={12}>\n <TextField fullWidth label=\"Comment\" value={comment} placeholder=\"Comment Here\" onChange={e => setComment(e.target.value)} required error={!!error.comment} helperText={error.comment} />\n </Grid>\n </Grid>\n </Box>\n </DialogContent>\n <DialogActions>\n <Box sx={{ display: 'flex', justifyContent: 'flex-end', alignItems: 'center' }}>\n <Button onClick={closeModal} size=\"large\" variant=\"outlined\" color=\"primary\" sx={{ mr: 2 }}>\n Close\n </Button>\n <Button onClick={onSubmit} size=\"large\" variant=\"contained\" color=\"primary\" disabled={loading}>\n {loading ? <CircularProgress size={24} color=\"inherit\" /> : 'Submit'}\n </Button>\n </Box>\n </DialogActions>\n </Dialog>\n )\n}\n\nexport default OnHoldDialog\n\n\n","import {\n Button,\n Card,\n CardContent,\n Chip,\n CircularProgress,\n Divider,\n Grid,\n IconButton,\n Tooltip,\n Typography,\n styled,\n useTheme\n} from '@mui/material'\nimport { Box } from '@mui/system'\nimport React, { useEffect, useState } from 'react'\nimport moment from 'moment'\nimport { useWorkflowContext } from '../context'\nimport type { ApprovalWorkflowProps } from '../types'\nimport ActionMenu from './Statusselector'\nimport SendBackDialog from './dialogs/SendBackDialog'\nimport ApproveDialog from './dialogs/ApproveDialog'\nimport RejectDialog from './dialogs/RejectDialog'\nimport OnHoldDialog from './dialogs/OnHoldDialog'\n\nconst StyledChipProps = styled(Chip)(({ theme }) => ({\n '&.MuiChip-colorPrimary': {\n border: `1px solid ${theme.palette.primary.dark}`,\n borderRadius: '8px',\n height: '36px',\n padding: '6px 4px',\n background: `${theme.palette.customColors?.customChipBackgroundColor ?? 'rgba(25,118,210,0.1)'}`,\n color: `${theme.palette.customColors?.customChipColor ?? theme.palette.primary.dark}`,\n width: '170px',\n overflow: 'hidden',\n whiteSpace: 'nowrap',\n textOverflow: 'ellipsis'\n },\n '&.MuiChip-colorDefault': {\n border: `1px solid ${theme.palette.grey[300]} !important`,\n borderRadius: '8px',\n height: '36px',\n padding: '6px 4px',\n background: 'none !important',\n color: `${(theme as any).palette?.customColors?.mainText ?? theme.palette.text.primary} `,\n width: '170px',\n overflow: 'hidden',\n whiteSpace: 'nowrap',\n textOverflow: 'ellipsis'\n }\n}))\n\nconst TruncatedTypography = styled(Typography)(({ theme }) => ({\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap',\n width: '200px',\n [theme.breakpoints.down('sm')]: {\n width: '80px'\n }\n}))\n\nexport function ApprovalWorkflow({\n selectedWorkflowsList = [],\n userInfo\n}: ApprovalWorkflowProps) {\n const theme = useTheme()\n const { api, urlBuilder, loadingComponent } = useWorkflowContext()\n\n const [selectedApprovalOtions, setSelectedApprovalOtions] = useState<string>(\n selectedWorkflowsList.length ? 'selected' : 'Action Required'\n )\n const [expandedId, setExpandedId] = useState<string | null>(null)\n const [sendDialog, setSendDialog] = React.useState<string | null>(null)\n const [approveTarget, setApproveTarget] = React.useState<{ id: string; statusId: string } | null>(null)\n const [rejectTarget, setRejectTarget] = React.useState<{ id: string; statusId: string } | null>(null)\n const [onHoldTarget, setOnHoldTarget] = React.useState<{ id: string; statusId: string } | null>(null)\n const [expandedDetails, setExpandedDetails] = useState<any>([])\n const [statusCount, setStatusCount] = useState<any>({})\n const [urlConfig, setUrlConfig] = useState<any>({})\n const [allRequestArray, setAllRequestArray] = useState<any>([])\n const [pendingRequestArray, setPendingRequestArray] = useState<any>([])\n const [selectedRequestArray, setSelectedRequestArray] = useState<any>([])\n const [isLoading, setIsLoading] = useState<boolean>(false)\n\n const handleProfileToggle = (option: string) => {\n setSelectedApprovalOtions(option)\n if (option === 'Action Required') fetchPendingActivities()\n if (option === 'All Requests') fetchAllActivites()\n if (option === 'selected') fetchSelectedActivites()\n }\n\n const handleExpandClick = (id: string) => {\n setExpandedId(prevId => (prevId === id ? null : id))\n fetchExpandedActivityLogs(id)\n }\n\n const getStatus = (status: string) => {\n switch (status) {\n case 'approved':\n return {\n title: 'Approved',\n color: theme.palette.success.light,\n labelColor: theme.palette.success.main\n }\n case 'rejected':\n return {\n title: 'Rejected',\n color: (theme as any).palette?.customColors?.chipWarningContainer ?? theme.palette.error.light,\n labelColor: theme.palette.error.main\n }\n case 'onhold':\n return {\n title: 'On Hold',\n color: (theme as any).palette?.customColors?.chipPendingContainer ?? theme.palette.warning.light,\n labelColor: (theme as any).palette?.customColors?.chipPendingText ?? theme.palette.warning.main\n }\n case 'pending':\n default:\n return {\n title: 'Pending',\n color: (theme as any).palette?.customColors?.approvalPrimaryChipBG ?? theme.palette.info.light,\n labelColor: (theme as any).palette?.customColors?.approvalPrimaryChipText ?? theme.palette.info.main\n }\n }\n }\n\n const approvalChipLabel = [\n { label: 'Action Required', icon: <span className=\"icon-document-forward\"></span>, count: statusCount?.pending_activities_count || '' },\n { label: 'All Requests', icon: <span className=\"icon-document-copy\"></span>, count: statusCount?.total_activities_count || '' }\n ]\n\n const fetchExpandedActivityLogs = (workflowLogId: string) => {\n setExpandedDetails([])\n api\n .get({ url: `/workflow/workflow-activity-logs/${workflowLogId}`, serviceURL: 'api' })\n .then(res => setExpandedDetails(res?.data))\n }\n\n const fetchPendingActivities = () => {\n setIsLoading(true)\n api\n .get({ url: `/workflow/activity-workflow/${userInfo?.userInfo?.id}?paginate=false&type=pending`, serviceURL: 'api' })\n .then(res => setPendingRequestArray(res?.data?.activities))\n .finally(() => setIsLoading(false))\n }\n\n const fetchAllActivites = () => {\n setIsLoading(true)\n api\n .get({ url: `/workflow/activity-workflow/${userInfo?.userInfo?.id}?paginate=false`, serviceURL: 'api' })\n .then(res => setAllRequestArray(res?.data?.activities))\n .finally(() => setIsLoading(false))\n }\n\n const fetchSelectedActivites = () => {\n setIsLoading(true)\n api\n .post({ url: `/workflow/bulk-details`, serviceURL: 'api', data: { workflowIds: selectedWorkflowsList } })\n .then(res => setSelectedRequestArray(res?.data))\n .finally(() => setIsLoading(false))\n }\n\n const fetchStatusCount = () => {\n api.get({ url: `/workflow/status-count/${userInfo?.userInfo?.id}`, serviceURL: 'api' }).then(res => {\n setStatusCount(res?.data?.[0])\n })\n }\n\n useEffect(() => {\n if (!sendDialog && !approveTarget && !onHoldTarget && !rejectTarget) {\n fetchAllActivites()\n fetchStatusCount()\n fetchPendingActivities()\n setExpandedDetails([])\n setExpandedId(null)\n }\n }, [sendDialog, approveTarget, onHoldTarget, rejectTarget, userInfo])\n\n useEffect(() => {\n api.get({ url: `/workflow/url-config`, serviceURL: 'api' }).then(res => {\n const data = res?.data || []\n const map = data.reduce((acc: any, { module_name, ...details }: any) => {\n acc[module_name] = details\n return acc\n }, {})\n setUrlConfig(map)\n })\n }, [])\n\n useEffect(() => {\n if (selectedWorkflowsList.length && !selectedRequestArray.length) {\n fetchSelectedActivites()\n }\n }, [selectedWorkflowsList])\n\n const buildRedirectionUrl = (info: any) => {\n if (info?.redirection_link) return info.redirection_link\n if (urlBuilder) return urlBuilder(info?.module_name, info?.module_id, urlConfig, info?.reference_id)\n // fallback simple URL builder\n const ref = urlConfig?.[info?.module_name]\n if (ref?.base_url && ref?.sub_url) {\n const qs = new URLSearchParams()\n if (info?.reference_id) qs.set('reference_id', String(info?.reference_id))\n if (info?.module_name) qs.set('module_name', String(info?.module_name))\n return `${ref.base_url}${ref.sub_url}${qs.toString() ? `?${qs.toString()}` : ''}`\n }\n return '#'\n }\n\n if (isLoading && loadingComponent) return <>{loadingComponent}</>\n\n return (\n <>\n <Box sx={{ display: 'flex', justifyContent: 'center', flexWrap: 'nowrap' }}>\n <Box sx={{ width: '100%', height: '100%' }}>\n <Box sx={{ display: 'flex', justifyContent: 'space-between', alignItems: 'center' }}>\n <Box sx={{ mt: 2, mb: 2 }}>\n {selectedWorkflowsList?.length ? (\n <Tooltip title=\"Selected Workflows\">\n <StyledChipProps\n label={'Selected'}\n icon={<span className=\"icon-eye\"></span>}\n color={selectedApprovalOtions?.includes('selected') ? 'primary' : 'default'}\n variant=\"filled\"\n sx={{ mr: 4, mb: 4, '& .MuiChip-icon': { fontSize: '18px !important' } }}\n onClick={() => handleProfileToggle('selected')}\n />\n </Tooltip>\n ) : (\n ''\n )}\n\n {approvalChipLabel.map(({ label, icon, count }, index) => (\n <Tooltip key={index} title={`${count} ${label}`}>\n <StyledChipProps\n label={`${count} ${label}`}\n icon={icon}\n color={selectedApprovalOtions?.includes(label) ? 'primary' : 'default'}\n variant=\"filled\"\n sx={{ mr: 4, mb: 4, '& .MuiChip-icon': { fontSize: '18px !important' } }}\n onClick={() => handleProfileToggle(label)}\n />\n </Tooltip>\n ))}\n </Box>\n </Box>\n\n {/* Selected */}\n {selectedApprovalOtions === 'selected' && (\n <Box className=\"fixedModal\" sx={{ overflowY: 'auto', height: 'calc(100vh - 180px)' }}>\n {selectedRequestArray &&\n selectedRequestArray.map((info: any, index: number) => {\n const currentLevel = info?.levels.find((level_: any) => level_.id === info?.current_level)\n const statusList = currentLevel ? currentLevel.status_list : []\n const statusByNum = (statusList || []).reduce((acc: any, s: any) => {\n if (s?.status != null) acc[s.status] = s\n return acc\n }, {} as any)\n const redir = buildRedirectionUrl(info)\n return (\n <React.Fragment key={index}>\n <Card\n sx={{\n mb: 8,\n '&.MuiCard-root.MuiPaper-elevation': {\n boxShadow: '2px 2px 10px 0px #4C4E6426',\n padding: '20px',\n borderRadius: '10px'\n }\n }}\n >\n <CardContent sx={{ display: 'flex', justifyContent: 'space-between', alignItems: 'center' }}>\n <Box>\n <Tooltip title={info.activityInstruction}>\n <TruncatedTypography variant=\"h6\" color={'text.primary'} sx={{ textTransform: 'capitalize', lineHeight: '22px' }}>\n {info.activity_name}\n </TruncatedTypography>\n </Tooltip>\n <Tooltip title={info.description_data}>\n <TruncatedTypography\n variant=\"body2\"\n color={'customColors.mainText' as any}\n sx={{ mt: '13px', textTransform: 'capitalize', lineHeight: '15.4px' }}\n >\n {info.description_data}\n </TruncatedTypography>\n </Tooltip>\n </Box>\n <Box>\n <Tooltip title=\"Links\">\n <TruncatedTypography\n variant=\"caption\"\n color={'customColors.text3' as any}\n sx={{ textTransform: 'capitalize', lineHeight: '13.2px' }}\n >\n Links\n </TruncatedTypography>\n </Tooltip>\n <Tooltip title={redir}>\n <a href={redir} style={{ cursor: 'pointer', textDecoration: 'none' }} target=\"_blank\" rel=\"noreferrer\">\n <TruncatedTypography\n variant=\"subtitle2\"\n color={'primary.dark'}\n sx={{ mt: '13px', lineHeight: '15.4px' }}\n >\n {redir}\n </TruncatedTypography>\n </a>\n </Tooltip>\n </Box>\n <Box>\n <Tooltip title=\"Attachments\">\n <TruncatedTypography\n variant=\"caption\"\n color={'customColors.text3' as any}\n sx={{ textTransform: 'capitalize', lineHeight: '13.2px' }}\n >\n Attachments\n </TruncatedTypography>\n </Tooltip>\n {info?.attachment_links?.length ? (\n info?.attachment_links.map((link: string, idx: number) => (\n <Tooltip title={`Attachment ${idx + 1}`} key={idx}>\n <a href={link} style={{ cursor: 'pointer', textDecoration: 'none' }} target=\"_blank\" rel=\"noreferrer\">\n <TruncatedTypography\n variant=\"subtitle2\"\n color={'primary.dark'}\n sx={{ mt: '13px', textTransform: 'capitalize', lineHeight: '15.4px' }}\n >\n {link || 'N/A'}\n </TruncatedTypography>\n </a>\n </Tooltip>\n ))\n ) : (\n <Box sx={{ display: 'flex', mt: 2, justifyContent: 'center', alignItems: 'center', lineHeight: '15.4px' }}>\n N/A\n </Box>\n )}\n </Box>\n <Box>\n <Tooltip title=\"Date and Time\">\n <TruncatedTypography\n variant=\"caption\"\n color={'customColors.text3' as any}\n sx={{ textTransform: 'capitalize', lineHeight: '13.2px' }}\n >\n TAT\n </TruncatedTypography>\n </Tooltip>\n <Tooltip title={info.dateTime}>\n <TruncatedTypography\n variant=\"subtitle2\"\n color={'customColors.mainText' as any}\n sx={{ mt: '13px', textTransform: 'capitalize', lineHeight: '15.4px' }}\n >\n {info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.tat_expiry\n ? moment(info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.tat_expiry)\n .utcOffset('UTC+05:30')\n .format('DD/MM/YYYY HH:MM A')\n : 'N/A'}\n </TruncatedTypography>\n </Tooltip>\n </Box>\n <Box>\n <Tooltip title=\"Current active level of Workflow\">\n <TruncatedTypography\n variant=\"caption\"\n color={'customColors.text3' as any}\n sx={{ textTransform: 'capitalize', lineHeight: '13.2px' }}\n >\n Current Level\n </TruncatedTypography>\n </Tooltip>\n <Box sx={{ display: 'flex', mt: 2, justifyContent: 'center', alignItems: 'center' }}>\n {info?.isLevelZero\n ? 'L0'\n : 'L' + ((info?.levels?.findIndex((lvl: any) => lvl.id === info?.current_level) ?? -1) + 1 || '')}\n </Box>\n </Box>\n <Box sx={{ mt: 2, display: 'flex', justifyContent: 'space-between', alignItems: 'center' }}>\n <Chip\n variant=\"filled\"\n sx={{\n backgroundColor: `${getStatus(\n info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status?.status_id === 1\n ? 'approved'\n : info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status?.status_id === 3\n ? 'rejected'\n : 'pending'\n )?.color} !important`,\n color: `${getStatus(\n info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status?.status_id === 1\n ? 'approved'\n : info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status?.status_id === 3\n ? 'rejected'\n : 'pending'\n )?.labelColor} !important`,\n height: '40px',\n padding: '8px',\n borderRadius: '100px !important',\n border: '0px !important',\n '& .MuiChip-label': {\n fontSize: '14px',\n lineHeight: '15.4px',\n fontWeight: '500',\n textTransform: 'capitalize'\n }\n }}\n label={`${\n info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status?.status_id === 2 ||\n info?.isLevelZero ||\n !info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status\n ? 'pending'\n : info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status?.name\n }`}\n />\n\n <Divider orientation=\"vertical\" sx={{ ml: 5, borderColor: (theme as any).palette?.customColors?.text4, height: '50px' }} />\n <IconButton\n disableFocusRipple\n disableRipple\n color=\"primary\"\n sx={{\n ml: 5,\n background: (theme as any).palette?.customColors?.primaryLightest ?? 'rgba(25,118,210,0.08)',\n boxShadow: '2px 2px 10px 0px #4C4E6426',\n '& span': { color: theme.palette.primary.dark }\n }}\n onClick={() => handleExpandClick(info._id)}\n >\n {expandedId === info._id ? <span className=\"icon-arrow-down-1\"></span> : <span className=\"icon-arrow-right-3\"></span>}\n </IconButton>\n <Box sx={{ ml: 5 }}>\n <ActionMenu\n onSendBack={() => setSendDialog(info._id)}\n onApprove={() => {\n const sid = String(statusByNum?.[1]?.id ?? '')\n setApproveTarget({ id: info._id, statusId: sid })\n }}\n onReject={() => {\n const sid = String(statusByNum?.[3]?.id ?? '')\n setRejectTarget({ id: info._id, statusId: sid })\n }}\n onHold={() => {\n const sid = String(statusByNum?.[2]?.id ?? '')\n setOnHoldTarget({ id: info._id, statusId: sid })\n }}\n statusList={statusList}\n />\n </Box>\n </Box>\n </CardContent>\n </Card>\n {expandedId === info._id && (\n <Grid container xs={12} spacing={5 as any}>\n <Grid item xs={12} sx={{ transform: 'translateX(3.9%)' }}>\n {!expandedDetails?.length ? (\n <Box sx={{ height: '200px', display: 'flex', justifyContent: 'center', alignItems: 'center' }}>\n <CircularProgress size={40} sx={{ color: theme.palette.primary.dark }} />\n </Box>\n ) : (\n <Box sx={{ pl: 2 }}>\n {expandedDetails?.map((item: any, idx: number) => (\n <Box key={idx} sx={{ mb: 2 }}>\n <Typography variant=\"caption\" sx={{ mr: 2 }}>\n {moment(item?.created_at).format('DD-MM-YYYY HH:mm')}\n </Typography>\n <Typography variant=\"body2\" component=\"span\">\n {item?.type} - {item?.comment_reasons?.comment || 'No Comments'}\n </Typography>\n </Box>\n ))}\n </Box>\n )}\n </Grid>\n </Grid>\n )}\n </React.Fragment>\n )\n })}\n </Box>\n )}\n\n {/* All Requests */}\n {selectedApprovalOtions === 'All Requests' && (\n <Box className=\"fixedModal\" sx={{ overflowY: 'auto', height: 'calc(100vh - 180px)' }}>\n {allRequestArray &&\n allRequestArray.map((info: any, index: number) => {\n const currentLevel = info?.levels.find((level_: any) => level_.id === info?.current_level)\n const statusList = currentLevel ? currentLevel.status_list : []\n const statusByNum = (statusList || []).reduce((acc: any, s: any) => {\n if (s?.status != null) acc[s.status] = s\n return acc\n }, {} as any)\n const redir = buildRedirectionUrl(info)\n return (\n <React.Fragment key={index}>\n <Card\n sx={{\n mb: 8,\n '&.MuiCard-root.MuiPaper-elevation': {\n boxShadow: '2px 2px 10px 0px #4C4E6426',\n padding: '20px',\n borderRadius: '10px'\n }\n }}\n >\n <CardContent sx={{ display: 'flex', justifyContent: 'space-between', alignItems: 'center' }}>\n <Box>\n <Tooltip title={info.activityInstruction}>\n <TruncatedTypography variant=\"h6\" color={'text.primary'} sx={{ textTransform: 'capitalize', lineHeight: '22px' }}>\n {info.activity_name}\n </TruncatedTypography>\n </Tooltip>\n <Tooltip title={info.description_data}>\n <TruncatedTypography\n variant=\"body2\"\n color={'customColors.mainText' as any}\n sx={{ mt: '13px', textTransform: 'capitalize', lineHeight: '15.4px' }}\n >\n {info.description_data}\n </TruncatedTypography>\n </Tooltip>\n </Box>\n <Box>\n <Tooltip title=\"Links\">\n <TruncatedTypography\n variant=\"caption\"\n color={'customColors.text3' as any}\n sx={{ textTransform: 'capitalize', lineHeight: '13.2px' }}\n >\n Links\n </TruncatedTypography>\n </Tooltip>\n <Tooltip title={redir}>\n <a href={redir} style={{ cursor: 'pointer', textDecoration: 'none' }} target=\"_blank\" rel=\"noreferrer\">\n <TruncatedTypography\n variant=\"subtitle2\"\n color={'primary.dark'}\n sx={{ mt: '13px', lineHeight: '15.4px' }}\n >\n {redir}\n </TruncatedTypography>\n </a>\n </Tooltip>\n </Box>\n <Box>\n <Tooltip title=\"Attachments\">\n <TruncatedTypography\n variant=\"caption\"\n color={'customColors.text3' as any}\n sx={{ textTransform: 'capitalize', lineHeight: '13.2px' }}\n >\n Attachments\n </TruncatedTypography>\n </Tooltip>\n {info?.attachment_links?.length ? (\n info?.attachment_links.map((link: string, idx: number) => (\n <Tooltip title={`Attachment ${idx + 1}`} key={idx}>\n <a href={link} style={{ cursor: 'pointer', textDecoration: 'none' }} target=\"_blank\" rel=\"noreferrer\">\n <TruncatedTypography\n variant=\"subtitle2\"\n color={'primary.dark'}\n sx={{ mt: '13px', textTransform: 'capitalize', lineHeight: '15.4px' }}\n >\n {link || 'N/A'}\n </TruncatedTypography>\n </a>\n </Tooltip>\n ))\n ) : (\n <Box sx={{ display: 'flex', mt: 2, justifyContent: 'center', alignItems: 'center', lineHeight: '15.4px' }}>N/A</Box>\n )}\n </Box>\n <Box sx={{ mt: 2, display: 'flex', justifyContent: 'space-between', alignItems: 'center' }}>\n <Chip\n variant=\"filled\"\n sx={{\n backgroundColor: `${getStatus(\n info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status?.status_id === 1\n ? 'approved'\n : info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status?.status_id === 3\n ? 'rejected'\n : 'pending'\n )?.color} !important`,\n color: `${getStatus(\n info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status?.status_id === 1\n ? 'approved'\n : info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status?.status_id === 3\n ? 'rejected'\n : 'pending'\n )?.labelColor} !important`,\n height: '40px',\n padding: '8px',\n borderRadius: '100px !important',\n border: '0px !important',\n '& .MuiChip-label': {\n fontSize: '14px',\n lineHeight: '15.4px',\n fontWeight: '500',\n textTransform: 'capitalize'\n }\n }}\n label={`${\n info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status?.status_id === 2 ||\n info?.isLevelZero ||\n !info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status\n ? 'pending'\n : info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status?.name\n }`}\n />\n\n <Divider orientation=\"vertical\" sx={{ ml: 5, borderColor: (theme as any).palette?.customColors?.text4, height: '50px' }} />\n <IconButton\n disableFocusRipple\n disableRipple\n color=\"primary\"\n sx={{\n ml: 5,\n background: (theme as any).palette?.customColors?.primaryLightest ?? 'rgba(25,118,210,0.08)',\n boxShadow: '2px 2px 10px 0px #4C4E6426',\n '& span': { color: theme.palette.primary.dark }\n }}\n onClick={() => handleExpandClick(info._id)}\n >\n {expandedId === info._id ? <span className=\"icon-arrow-down-1\"></span> : <span className=\"icon-arrow-right-3\"></span>}\n </IconButton>\n <Box sx={{ ml: 5 }}>\n <ActionMenu\n onSendBack={() => setSendDialog(info._id)}\n onApprove={() => {\n const sid = String(statusByNum?.[1]?.id ?? '')\n setApproveTarget({ id: info._id, statusId: sid })\n }}\n onReject={() => {\n const sid = String(statusByNum?.[3]?.id ?? '')\n setRejectTarget({ id: info._id, statusId: sid })\n }}\n onHold={() => {\n const sid = String(statusByNum?.[2]?.id ?? '')\n setOnHoldTarget({ id: info._id, statusId: sid })\n }}\n statusList={statusList}\n />\n </Box>\n </Box>\n </CardContent>\n </Card>\n {expandedId === info._id && (\n <Grid container xs={12} spacing={5 as any}>\n <Grid item xs={12} sx={{ transform: 'translateX(3.9%)' }}>\n {!expandedDetails?.length ? (\n <Box sx={{ height: '200px', display: 'flex', justifyContent: 'center', alignItems: 'center' }}>\n <CircularProgress size={40} sx={{ color: theme.palette.primary.dark }} />\n </Box>\n ) : (\n <Box sx={{ pl: 2 }}>\n {expandedDetails?.map((item: any, idx: number) => (\n <Box key={idx} sx={{ mb: 2 }}>\n <Typography variant=\"caption\" sx={{ mr: 2 }}>\n {moment(item?.created_at).format('DD-MM-YYYY HH:mm')}\n </Typography>\n <Typography variant=\"body2\" component=\"span\">\n {item?.type} - {item?.comment_reasons?.comment || 'No Comments'}\n </Typography>\n </Box>\n ))}\n </Box>\n )}\n </Grid>\n </Grid>\n )}\n </React.Fragment>\n )\n })}\n </Box>\n )}\n\n {/* Action Required */}\n {selectedApprovalOtions === 'Action Required' && (\n <Box className=\"fixedModal\" sx={{ overflowY: 'auto', height: 'calc(100vh - 180px)' }}>\n {pendingRequestArray &&\n pendingRequestArray.map((info: any, index: number) => {\n const currentLevel = info?.levels?.find((level_: any) => level_.id === info?.current_level)\n const statusList = currentLevel ? currentLevel.status_list : []\n const statusByNum = (statusList || []).reduce((acc: any, s: any) => {\n if (s?.status != null) acc[s.status] = s\n return acc\n }, {} as any)\n const redir = buildRedirectionUrl(info)\n return (\n <React.Fragment key={index}>\n <Card\n sx={{\n mb: 8,\n '&.MuiCard-root.MuiPaper-elevation': {\n boxShadow: '2px 2px 10px 0px #4C4E6426',\n padding: '20px',\n borderRadius: '10px'\n }\n }}\n >\n <CardContent sx={{ display: 'flex', justifyContent: 'space-between', alignItems: 'center' }}>\n <Box>\n <Tooltip title={info.title}>\n <TruncatedTypography variant=\"h6\" color={'text.primary'} sx={{ textTransform: 'capitalize', lineHeight: '22px' }}>\n {info.activity_name}\n </TruncatedTypography>\n </Tooltip>\n <Tooltip title={info.description_data}>\n <TruncatedTypography\n variant=\"body2\"\n color={'customColors.mainText' as any}\n sx={{ mt: '13px', textTransform: 'capitalize', lineHeight: '15.4px' }}\n >\n {info.description_data}\n </TruncatedTypography>\n </Tooltip>\n </Box>\n <Box>\n <Tooltip title=\"Links\">\n <TruncatedTypography\n variant=\"caption\"\n color={'customColors.text3' as any}\n sx={{ textTransform: 'capitalize', lineHeight: '13.2px' }}\n >\n Links\n </TruncatedTypography>\n </Tooltip>\n <Tooltip title={redir}>\n <a href={redir} style={{ cursor: 'pointer', textDecoration: 'none' }} target=\"_blank\" rel=\"noreferrer\">\n <TruncatedTypography\n variant=\"subtitle2\"\n color={'primary.dark'}\n sx={{ mt: '13px', lineHeight: '15.4px' }}\n >\n {redir}\n </TruncatedTypography>\n </a>\n </Tooltip>\n </Box>\n <Box sx={{ mt: 2, display: 'flex', justifyContent: 'space-between', alignItems: 'center' }}>\n <Chip\n variant=\"filled\"\n sx={{\n backgroundColor: `${getStatus(\n info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status?.status_id === 1\n ? 'approved'\n : info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status?.status_id === 3\n ? 'rejected'\n : 'pending'\n )?.color} !important`,\n color: `${getStatus(\n info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status?.status_id === 1\n ? 'approved'\n : info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status?.status_id === 3\n ? 'rejected'\n : 'pending'\n )?.labelColor} !important`,\n height: '40px',\n padding: '8px',\n borderRadius: '100px !important',\n border: '0px !important',\n '& .MuiChip-label': {\n fontSize: '14px',\n lineHeight: '15.4px',\n fontWeight: '500',\n textTransform: 'capitalize'\n }\n }}\n label={`${\n info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status?.status_id === 2 ||\n info?.isLevelZero ||\n !info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status\n ? 'pending'\n : info?.levels?.find((lvl: any) => lvl.id === info?.current_level)?.selected_status?.name\n }`}\n />\n\n <Divider orientation=\"vertical\" sx={{ ml: 5, borderColor: (theme as any).palette?.customColors?.text4, height: '50px' }} />\n <IconButton\n disableFocusRipple\n disableRipple\n color=\"primary\"\n sx={{\n ml: 5,\n background: (theme as any).palette?.customColors?.primaryLightest ?? 'rgba(25,118,210,0.08)',\n boxShadow: '2px 2px 10px 0px #4C4E6426',\n '& span': { color: theme.palette.primary.dark }\n }}\n onClick={() => handleExpandClick(info._id)}\n >\n {expandedId === info._id ? <span className=\"icon-arrow-down-1\"></span> : <span className=\"icon-arrow-right-3\"></span>}\n </IconButton>\n <Box sx={{ ml: 5 }}>\n <ActionMenu\n onSendBack={() => setSendDialog(info._id)}\n onApprove={() => {\n const sid = String(statusByNum?.[1]?.id ?? '')\n setApproveTarget({ id: info._id, statusId: sid })\n }}\n onReject={() => {\n const sid = String(statusByNum?.[3]?.id ?? '')\n setRejectTarget({ id: info._id, statusId: sid })\n }}\n onHold={() => {\n const sid = String(statusByNum?.[2]?.id ?? '')\n setOnHoldTarget({ id: info._id, statusId: sid })\n }}\n statusList={statusList}\n />\n </Box>\n </Box>\n </CardContent>\n </Card>\n {expandedId === info._id && (\n <Grid container xs={12} spacing={5 as any}>\n <Grid item xs={12} sx={{ transform: 'translateX(3.9%)' }}>\n {!expandedDetails?.length ? (\n <Box sx={{ height: '200px', display: 'flex', justifyContent: 'center', alignItems: 'center' }}>\n <CircularProgress size={40} sx={{ color: theme.palette.primary.dark }} />\n </Box>\n ) : (\n <Box sx={{ pl: 2 }}>\n {expandedDetails?.map((item: any, idx: number) => (\n <Box key={idx} sx={{ mb: 2 }}>\n <Typography variant=\"caption\" sx={{ mr: 2 }}>\n {moment(item?.created_at).format('DD-MM-YYYY HH:mm')}\n </Typography>\n <Typography variant=\"body2\" component=\"span\">\n {item?.type} - {item?.comment_reasons?.comment || 'No Comments'}\n </Typography>\n </Box>\n ))}\n </Box>\n )}\n </Grid>\n </Grid>\n )}\n </React.Fragment>\n )\n })}\n </Box>\n )}\n </Box>\n </Box>\n {/* Dialogs */}\n <SendBackDialog openModal={!!sendDialog} closeModal={() => setSendDialog(null)} header=\"Send Back\" workflowLogId={sendDialog || ''} />\n <ApproveDialog openModal={!!approveTarget} closeModal={() => setApproveTarget(null)} header=\"Approve\" workflowLogId={approveTarget?.id || ''} statusId={approveTarget?.statusId || ''} />\n <RejectDialog openModal={!!rejectTarget} closeModal={() => setRejectTarget(null)} header=\"Reject\" workflowLogId={rejectTarget?.id || ''} statusId={rejectTarget?.statusId || ''} rejection_reason_master=\"workflow_reject_reason\" />\n <OnHoldDialog openModal={!!onHoldTarget} closeModal={() => setOnHoldTarget(null)} header=\"On Hold\" workflowLogId={onHoldTarget?.id || ''} statusId={onHoldTarget?.statusId || ''} />\n </>\n )\n}\n\n\n","import React, { useEffect, useState } from 'react'\nimport Button from '@mui/material/Button'\nimport Dialog from '@mui/material/Dialog'\nimport { useTheme } from '@mui/material/styles'\nimport useMediaQuery from '@mui/material/useMediaQuery'\nimport DialogActions from '@mui/material/DialogActions'\nimport DialogContent from '@mui/material/DialogContent'\nimport { IconButton } from '@mui/material'\nimport HighlightOffIcon from '@mui/icons-material/HighlightOff'\nimport { ApprovalWorkflow } from './ApprovalWorkflow'\nimport type { DialogOpenerProps } from '../types'\n\nexport function DialogOpener({\n openDialog,\n handleClose,\n userInfoData,\n selectedWorkflowsList = []\n}: DialogOpenerProps) {\n const theme = useTheme()\n const fullScreen = useMediaQuery(theme.breakpoints.down('lg'))\n const [screenWidth, setScreenWidth] = useState<number>(typeof window !== 'undefined' ? window.innerWidth : 0)\n\n useEffect(() => {\n const updateScreenWidth = () => setScreenWidth(window.innerWidth)\n window.addEventListener('resize', updateScreenWidth)\n return () => window.removeEventListener('resize', updateScreenWidth)\n }, [])\n\n return (\n <>\n <Dialog\n fullScreen={true}\n open={openDialog}\n onClose={() => handleClose && handleClose()}\n aria-labelledby=\"responsive-dialog-title\"\n sx={{ zIndex: 123 }}\n >\n <DialogContent>\n <IconButton onClick={handleClose} disableFocusRipple disableRipple sx={{ float: 'right' }}>\n <HighlightOffIcon style={{ color: '#666666' }} />\n </IconButton>\n <ApprovalWorkflow userInfo={userInfoData} selectedWorkflowsList={selectedWorkflowsList} />\n </DialogContent>\n <DialogActions>\n <Button\n variant=\"contained\"\n color=\"primary\"\n sx={{ display: 'flex', justifyContent: 'flex-end', alignItems: 'center' }}\n onClick={handleClose}\n >\n Close\n </Button>\n </DialogActions>\n </Dialog>\n </>\n )\n}\n\n\n","import React from 'react'\nimport { WorkflowProvider } from './context'\nimport type { ApiClient, UrlBuilder, DialogOpenerProps, ApprovalWorkflowProps } from './types'\nimport { DialogOpener as InternalDialogOpener } from './ui/DialogOpener'\nimport { ApprovalWorkflow as InternalApprovalWorkflow } from './ui/ApprovalWorkflow'\n\nexport type { ApiClient, UrlBuilder, DialogOpenerProps, ApprovalWorkflowProps }\n\nexport function DialogOpener(props: DialogOpenerProps & {\n api: ApiClient\n urlBuilder?: UrlBuilder\n loadingComponent?: React.ReactNode\n}) {\n const { api, urlBuilder, loadingComponent, userInfoData, ...rest } = props\n return (\n <WorkflowProvider value={{ api, urlBuilder, userInfo: userInfoData, loadingComponent }}>\n <InternalDialogOpener {...rest} userInfoData={userInfoData} />\n </WorkflowProvider>\n )\n}\n\nexport function ApprovalWorkflow(props: ApprovalWorkflowProps & {\n api: ApiClient\n urlBuilder?: UrlBuilder\n loadingComponent?: React.ReactNode\n}) {\n const { api, urlBuilder, loadingComponent, userInfo, ...rest } = props\n return (\n <WorkflowProvider value={{ api, urlBuilder, userInfo, loadingComponent }}>\n <InternalApprovalWorkflow userInfo={userInfo} {...rest} />\n </WorkflowProvider>\n )\n}\n\n\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "amp-workflow-ui",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "private": false,
5
5
  "description": "Reusable Approval Workflow UI components (DialogOpener, ApprovalWorkflow) for Ampersand portals",
6
6
  "main": "dist/index.cjs.js",
@@ -20,6 +20,7 @@
20
20
  "react-dom": "^18.2.0",
21
21
  "@mui/material": "^5.11.13",
22
22
  "@mui/system": "^5.11.13",
23
+ "react-hot-toast": "^2.4.0",
23
24
  "@mui/icons-material": "^5.15.17",
24
25
  "@emotion/react": "^11.10.6",
25
26
  "@emotion/styled": "^11.10.6"