From ec29be77365ebe260f8b2c06c477dffd11f8914a Mon Sep 17 00:00:00 2001 From: jasquat Date: Tue, 22 Nov 2022 09:05:33 -0500 Subject: [PATCH] added recursive option to process model list to recurse or not and fix some ui components --- src/components/ProcessGroupListTiles.tsx | 4 ++-- src/components/ProcessInstanceListTable.tsx | 2 +- src/components/ProcessModelListTiles.tsx | 21 ++++++++++++++------- src/components/ProcessModelSearch.tsx | 2 +- src/components/ProcessSearch.tsx | 2 +- src/helpers.tsx | 2 +- src/routes/ProcessGroupList.tsx | 2 +- src/routes/ProcessGroupShow.tsx | 5 +++++ 8 files changed, 26 insertions(+), 14 deletions(-) diff --git a/src/components/ProcessGroupListTiles.tsx b/src/components/ProcessGroupListTiles.tsx index 4c964be..2091801 100644 --- a/src/components/ProcessGroupListTiles.tsx +++ b/src/components/ProcessGroupListTiles.tsx @@ -51,7 +51,7 @@ export default function ProcessGroupListTiles({ displayText = (processGroups || []).map((row: ProcessGroup) => { return ( @@ -61,7 +61,7 @@ export default function ProcessGroupListTiles({ {row.display_name}

- {truncateString(row.description || '', 25)} + {truncateString(row.description || '', 100)}

Total Sub Items: {processGroupDirectChildrenCount(row)} diff --git a/src/components/ProcessInstanceListTable.tsx b/src/components/ProcessInstanceListTable.tsx index 6d5fbb0..9a0509a 100644 --- a/src/components/ProcessInstanceListTable.tsx +++ b/src/components/ProcessInstanceListTable.tsx @@ -234,7 +234,7 @@ export default function ProcessInstanceListTable({ if (filtersEnabled) { // populate process model selection HttpService.makeCallToBackend({ - path: `/process-models?per_page=1000`, + path: `/process-models?per_page=1000&recursive=true`, successCallback: processResultForProcessModels, }); } else { diff --git a/src/components/ProcessModelListTiles.tsx b/src/components/ProcessModelListTiles.tsx index a10fd75..b526f75 100644 --- a/src/components/ProcessModelListTiles.tsx +++ b/src/components/ProcessModelListTiles.tsx @@ -5,15 +5,19 @@ import { // @ts-ignore } from '@carbon/react'; import HttpService from '../services/HttpService'; -import { ProcessModel, ProcessInstance } from '../interfaces'; +import { ProcessModel, ProcessInstance, ProcessGroup } from '../interfaces'; import { modifyProcessModelPath, truncateString } from '../helpers'; import ProcessInstanceRun from './ProcessInstanceRun'; type OwnProps = { headerElement?: ReactElement; + processGroup?: ProcessGroup; }; -export default function ProcessModelListTiles({ headerElement }: OwnProps) { +export default function ProcessModelListTiles({ + headerElement, + processGroup, +}: OwnProps) { const [searchParams] = useSearchParams(); const [processModels, setProcessModels] = useState( null @@ -25,13 +29,16 @@ export default function ProcessModelListTiles({ headerElement }: OwnProps) { const setProcessModelsFromResult = (result: any) => { setProcessModels(result.results); }; - // only allow 10 for now until we get the backend only returnin certain models for user execution - const queryParams = '?per_page=10'; + // only allow 10 for now until we get the backend only returning certain models for user execution + let queryParams = '?per_page=100'; + if (processGroup) { + queryParams = `${queryParams}&process_group_identifier=${processGroup.id}`; + } HttpService.makeCallToBackend({ path: `/process-models${queryParams}`, successCallback: setProcessModelsFromResult, }); - }, [searchParams]); + }, [searchParams, processGroup]); const processInstanceRunResultTag = () => { if (processInstance) { @@ -61,14 +68,14 @@ export default function ProcessModelListTiles({ headerElement }: OwnProps) { displayText = (processModels || []).map((row: ProcessModel) => { return (

{row.display_name}

- {truncateString(row.description || '', 25)} + {truncateString(row.description || '', 100)}

{ if (text.length > len && text.length > 0) { - return `${text.split(' ').slice(0, len).join(' ')} ...`; + return `${text.split('').slice(0, len).join('')} ...`; } return text; }; diff --git a/src/routes/ProcessGroupList.tsx b/src/routes/ProcessGroupList.tsx index 4c448f0..50fd3ee 100644 --- a/src/routes/ProcessGroupList.tsx +++ b/src/routes/ProcessGroupList.tsx @@ -39,7 +39,7 @@ export default function ProcessGroupList() { }; // for search box HttpService.makeCallToBackend({ - path: `/process-models?per_page=1000`, + path: `/process-models?per_page=1000&recursive=true`, successCallback: processResultForProcessModels, }); }, [searchParams]); diff --git a/src/routes/ProcessGroupShow.tsx b/src/routes/ProcessGroupShow.tsx index f8c856e..02f6370 100644 --- a/src/routes/ProcessGroupShow.tsx +++ b/src/routes/ProcessGroupShow.tsx @@ -20,6 +20,7 @@ import { import { useUriListForPermissions } from '../hooks/UriListForPermissions'; import { usePermissionFetcher } from '../hooks/PermissionService'; import ProcessGroupListTiles from '../components/ProcessGroupListTiles'; +// import ProcessModelListTiles from '../components/ProcessModelListTiles'; export default function ProcessGroupShow() { const params = useParams(); @@ -142,6 +143,10 @@ export default function ProcessGroupShow() {

+ {/* Process Models} + processGroup={processGroup} + /> */} {/* eslint-disable-next-line sonarjs/no-gratuitous-expressions */} {modelPagination && modelPagination.total > 0 && (