@solidxai/core-ui 0.1.5-beta.3 → 0.1.5-beta.4

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.
Files changed (38) hide show
  1. package/dist/components/core/chatter/SolidChatter.d.ts.map +1 -1
  2. package/dist/components/core/chatter/SolidChatter.js +5 -2
  3. package/dist/components/core/chatter/SolidChatter.js.map +1 -1
  4. package/dist/components/core/chatter/SolidChatter.tsx +5 -2
  5. package/dist/components/core/chatter/SolidChatterAuditMessage.d.ts +5 -2
  6. package/dist/components/core/chatter/SolidChatterAuditMessage.d.ts.map +1 -1
  7. package/dist/components/core/chatter/SolidChatterAuditMessage.js +19 -1
  8. package/dist/components/core/chatter/SolidChatterAuditMessage.js.map +1 -1
  9. package/dist/components/core/chatter/SolidChatterAuditMessage.tsx +29 -5
  10. package/dist/components/core/common/SolidCreateButton.js +3 -3
  11. package/dist/components/core/common/SolidCreateButton.js.map +1 -1
  12. package/dist/components/core/common/SolidCreateButton.tsx +3 -3
  13. package/dist/components/core/dashboard/DashboardFilter.d.ts +13 -0
  14. package/dist/components/core/dashboard/DashboardFilter.d.ts.map +1 -0
  15. package/dist/components/core/dashboard/DashboardFilter.js +305 -0
  16. package/dist/components/core/dashboard/DashboardFilter.js.map +1 -0
  17. package/dist/components/core/dashboard/DashboardFilter.tsx +356 -0
  18. package/dist/components/core/dashboard/SolidDashboard.d.ts.map +1 -1
  19. package/dist/components/core/dashboard/SolidDashboard.js +9 -4
  20. package/dist/components/core/dashboard/SolidDashboard.js.map +1 -1
  21. package/dist/components/core/dashboard/SolidDashboard.tsx +32 -2
  22. package/dist/components/core/kanban/SolidKanbanView.js +2 -2
  23. package/dist/components/core/kanban/SolidKanbanView.js.map +1 -1
  24. package/dist/components/core/kanban/SolidKanbanView.tsx +2 -2
  25. package/dist/components/core/list/SolidListView.js +2 -2
  26. package/dist/components/core/list/SolidListView.js.map +1 -1
  27. package/dist/components/core/list/SolidListView.tsx +2 -2
  28. package/dist/components/core/tree/SolidTreeView.d.ts.map +1 -1
  29. package/dist/components/core/tree/SolidTreeView.js +277 -43
  30. package/dist/components/core/tree/SolidTreeView.js.map +1 -1
  31. package/dist/components/core/tree/SolidTreeView.tsx +436 -4
  32. package/dist/helpers/routePaths.d.ts +1 -1
  33. package/dist/helpers/routePaths.d.ts.map +1 -1
  34. package/dist/helpers/routePaths.js +2 -2
  35. package/dist/helpers/routePaths.js.map +1 -1
  36. package/dist/helpers/routePaths.ts +2 -2
  37. package/dist/resources/globals.css +8 -0
  38. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"SolidKanbanView.js","sourceRoot":"","sources":["../../../../src/components/core/kanban/SolidKanbanView.tsx"],"names":[],"mappings":"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","sourcesContent":["import { permissionExpression } from \"../../../helpers/permissions\";\nimport { createSolidEntityApi } from \"../../../redux/api/solidEntityApi\";\nimport { useGetSolidViewLayoutQuery } from \"../../../redux/api/solidViewApi\";\nimport { useLazyCheckIfPermissionExistsQuery } from \"../../../redux/api/userApi\";\nimport { DropResult } from \"@hello-pangea/dnd\";\nimport { FilterMatchMode } from \"primereact/api\";\nimport { Button } from \"primereact/button\";\nimport { Dialog } from \"primereact/dialog\";\nimport qs from \"qs\";\nimport { useEffect, useRef, useState } from \"react\";\nimport { SolidCreateButton } from \"../common/SolidCreateButton\";\nimport { SolidGlobalSearchElement } from \"../common/SolidGlobalSearchElement\";\nimport KanbanBoard from \"./KanbanBoard\";\nimport CompactImage from '../../../resources/images/layout/images/compact.png';\nimport CozyImage from '../../../resources/images/layout/images/cozy.png';\nimport ComfortableImage from '../../../resources/images/layout/images/comfortable.png';\nimport { capitalize } from \"lodash\";\nimport Lightbox from \"yet-another-react-lightbox\";\nimport Counter from \"yet-another-react-lightbox/plugins/counter\";\nimport Download from \"yet-another-react-lightbox/plugins/download\";\nimport \"yet-another-react-lightbox/styles.css\";\nimport \"yet-another-react-lightbox/plugins/counter.css\";\nimport { useRouter } from \"../../../hooks/useRouter\";\nimport { SolidKanbanViewConfigure } from \"./SolidKanbanViewConfigure\";\nimport { KanbanUserViewLayout } from \"./KanbanUserViewLayout\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { setFilterObjectToLocalStorage, getFilterObjectFromLocalStorage } from \"../list/SolidListView\";\nimport { Toast } from \"primereact/toast\";\nimport { ERROR_MESSAGES } from \"../../../constants/error-messages\";\nimport { showNavbar, toggleNavbar } from \"../../../redux/features/navbarSlice\";\nimport { normalizeSolidListKanbanActionPath } from \"../../../helpers/routePaths\";\nimport showToast from \"../../../helpers/showToast\";\n\n\ntype SolidKanbanViewParams = {\n moduleName: string;\n modelName: string;\n embeded: boolean;\n};\n\n\nexport const SolidKanbanView = (params: SolidKanbanViewParams) => {\n\n const visibleNavbar = useSelector((state: any) => state.navbarState?.visibleNavbar);\n const dispatch = useDispatch()\n\n const solidGlobalSearchElementRef = useRef();\n const router = useRouter();\n // TODO: The initial filter state will be created based on the fields which are present on this kanban view. \n const [filters, setFilters] = useState<any>();\n const [toPopulate, setToPopulate] = useState<string[]>([]);\n const [toPopulateMedia, setToPopulateMedia] = useState<string[]>([]);\n const [actionsAllowed, setActionsAllowed] = useState<string[]>([]);\n const [showGlobalSearchElement, setShowGlobalSearchElement] = useState<boolean>(false);\n const [showArchived, setShowArchived] = useState(false);\n const sizeOptions = [\n { label: 'Compact', value: 'small', image: CompactImage },\n { label: 'Cozy', value: 'normal', image: CozyImage },\n { label: 'Comfortable', value: 'large', image: ComfortableImage }\n ]\n const [size, setSize] = useState<string | any>(sizeOptions[1].value);\n const [viewModes, setViewModes] = useState<any>([]);\n const [groupByFieldName, setGroupByFieldName] = useState<string>(\"\");\n const [groupedView, setGroupedView] = useState(true);\n const [triggerCheckIfPermissionExists] = useLazyCheckIfPermissionExistsQuery();\n const [openLightbox, setOpenLightbox] = useState(false);\n const [lightboxUrls, setLightboxUrls] = useState({});\n const [filterQueryString, setFilterQueryString] = useState<any>();\n const [isLayoutDialogVisible, setLayoutDialogVisible] = useState(false);\n const toast = useRef<Toast>(null);\n\n const pushFiltersToRouter = (filterQueryString: any) => {\n // @ts-ignore\n router.push(`?${filterQueryString}`, undefined, { shallow: true });\n };\n\n useEffect(() => {\n if (filterQueryString) {\n pushFiltersToRouter(filterQueryString);\n }\n }, [filterQueryString]);\n\n\n\n useEffect(() => {\n const fetchPermissions = async () => {\n if (params.modelName) {\n const permissionNames = [\n permissionExpression(params.modelName, 'create'),\n permissionExpression(params.modelName, 'delete'),\n permissionExpression(params.modelName, 'update')\n ]\n const queryData = {\n permissionNames: permissionNames\n };\n const queryString = qs.stringify(queryData, {\n encodeValuesOnly: true\n });\n const response = await triggerCheckIfPermissionExists(queryString);\n setActionsAllowed(response.data.data);\n }\n };\n fetchPermissions();\n }, [params.modelName]);\n\n\n // Create the RTK slices for this entity\n const entityApi = createSolidEntityApi(params.modelName);\n const {\n useDeleteMultipleSolidEntitiesMutation,\n useLazyGetSolidEntitiesQuery,\n usePatchUpdateSolidEntityMutation\n } = entityApi;\n\n // Get the kanban view layout & metadata first. \n const kanbanViewMetaDataQs = qs.stringify({ ...params, viewType: 'kanban' }, {\n encodeValuesOnly: true,\n });\n const [kanbanViewMetaData, setKanbanViewMetaData] = useState<any>({});\n\n const {\n data: solidKanbanViewMetaData } = useGetSolidViewLayoutQuery(kanbanViewMetaDataQs);\n\n\n\n const initialFilterMethod = () => {\n\n const solidView = solidKanbanViewMetaData.data.solidView;\n const solidFieldsMetadata = solidKanbanViewMetaData.data.solidFieldsMetadata;\n\n const initialFilters: any = {};\n const toPopulate: string[] = [];\n const toPopulateMedia: string[] = [];\n function extractFields(node: any, result: any = []) {\n if (node.type === \"field\") {\n result.push(node);\n }\n if (node.children) {\n node.children.forEach((child: any) => extractFields(child, result));\n }\n return result;\n }\n\n const layoutFields = extractFields(solidView.layout);\n\n for (let i = 0; i < layoutFields.length; i++) {\n const column = layoutFields[i];\n const fieldMetadata = solidFieldsMetadata[column.attrs.name];\n if (fieldMetadata) {\n\n // Form the initial filters after iterating over the columns and field metadata. \n if (['int', 'bigint', 'float', 'decimal'].includes(fieldMetadata.type)) {\n // initialFilters[column.attrs.name] = { operator: FilterOperator.OR, constraints: [{ value: null, matchMode: FilterMatchMode.EQUALS }] }\n initialFilters[column.attrs.name] = { value: null, matchMode: FilterMatchMode.EQUALS }\n }\n else if (['date', 'datetime', 'time', 'boolean'].includes(fieldMetadata.type)) {\n // initialFilters[column.attrs.name] = { operator: FilterOperator.OR, constraints: [{ value: null, matchMode: FilterMatchMode.DATE_IS }] }\n initialFilters[column.attrs.name] = { value: null, matchMode: FilterMatchMode.EQUALS }\n }\n else if (['relation', 'selectionStatic', 'selectionDynamic'].includes(fieldMetadata.type)) {\n initialFilters[column.attrs.name] = { value: null, matchMode: FilterMatchMode.IN }\n }\n else {\n // initialFilters[column.attrs.name] = { operator: FilterOperator.OR, constraints: [{ value: null, matchMode: FilterMatchMode.STARTS_WITH }] }\n initialFilters[column.attrs.name] = { value: null, matchMode: FilterMatchMode.STARTS_WITH }\n }\n\n if (column.attrs.name === 'id') {\n initialFilters[column.attrs.name] = { value: null, matchMode: FilterMatchMode.IN }\n }\n\n // Form the \"toPopulate\" array. \n if (fieldMetadata.type === 'relation') {\n toPopulate.push(fieldMetadata.name);\n }\n if (fieldMetadata.type === 'mediaSingle' || fieldMetadata.type === 'mediaMultiple') {\n toPopulateMedia.push(fieldMetadata.name);\n }\n }\n }\n\n // setFilters(initialFilters);\n const recordsInSwimlane = solidKanbanViewMetaData?.data?.solidView?.layout?.attrs?.recordsInSwimlane ? solidKanbanViewMetaData?.data?.solidView?.layout?.attrs?.recordsInSwimlane : 10;\n // setToPopulate(toPopulate);\n // setToPopulateMedia(toPopulateMedia);\n // setRecordsInSwimlane(recordsInSwimlane);\n // setToPopulate(toPopulate);\n // setToPopulateMedia(toPopulateMedia);\n return { recordsInSwimlane, toPopulate, toPopulateMedia }\n }\n\n\n // Initial Filter data \n useEffect(() => {\n\n if (solidKanbanViewMetaData) {\n setKanbanViewMetaData(solidKanbanViewMetaData);\n // const viewModes = solidKanbanViewMetaData?.data?.solidView?.layout?.attrs?.allowedViews && solidKanbanViewMetaData?.data?.solidView?.layout?.attrs?.allowedViews.length > 0 && solidKanbanViewMetaData?.data?.solidView?.layout?.attrs?.allowedViews.map((view: any) => { return { label: capitalize(view), value: view } });\n setViewModes(solidKanbanViewMetaData?.data?.viewModes);\n // setViewModes(viewModes);\n if (solidKanbanViewMetaData?.data?.solidView?.layout?.attrs?.grouped !== false) {\n setGroupByFieldName(solidKanbanViewMetaData?.data?.solidView?.layout?.attrs?.groupBy)\n } else {\n setGroupByFieldName(\"deletedTracker\");\n setGroupedView(false);\n }\n }\n }, [solidKanbanViewMetaData]);\n\n // All kanban view state.\n const [kanbanViewData, setKanbanViewData] = useState<any>([]);\n const [kanbanLoadMoreData, setKanbanLoadMoreData] = useState<any>({});\n const [recordsInSwimlane, setRecordsInSwimlane] = useState(10);\n const [selectedRecords, setSelectedRecords] = useState<any[]>([]);\n const [loading, setLoading] = useState<boolean>(true);\n const [isDialogVisible, setDialogVisible] = useState(false);\n const [createButtonUrl, setCreateButtonUrl] = useState<string>();\n const [editButtonUrl, setEditButtonUrl] = useState<string>();\n const [createActionQueryParams, setCreateActionQueryParams] = useState<Record<string, string>>({});\n const [editActionQueryParams, setEditActionQueryParams] = useState<Record<string, string>>({});\n const [columnsCount, setColumnsCount] = useState(5);\n const [swimLaneCurrentPageNumber, setSwimLaneCurrentPageNumber] = useState(1);\n const [queryDataLoaded, setQueryDataLoaded] = useState(false);\n const [showSaveFilterPopup, setShowSaveFilterPopup] = useState<boolean>(false);\n const [maxSwimLanesCount, setMaxSwimLanesCount] = useState<number>(0);\n // @ts-ignore\n const editBaseUrl = normalizeSolidListKanbanActionPath(pathname, editButtonUrl || \"form\");\n // Get the kanban view data.\n // const [triggerGetSolidEntitiesForKanban, { data: solidEntityKanbanViewData, isLoading, error }] = useLazyGetSolidKanbanEntitiesQuery();\n const [triggerGetSolidEntities, { data: solidEntityKanbanViewData }] = useLazyGetSolidEntitiesQuery();\n\n // Delete mutation \n const [\n deleteManySolidEntities,\n {\n isSuccess: isDeleteSolidEntitiesSucess,\n },\n ] = useDeleteMultipleSolidEntitiesMutation();\n const [\n patchKanbanView,\n ] = usePatchUpdateSolidEntityMutation();\n\n // After data is fetched populate the kanban view state so as to be able to render the data. \n useEffect(() => {\n if (solidEntityKanbanViewData) {\n // Merge groupRecords by groupName: update existing, add new\n setMaxSwimLanesCount(solidEntityKanbanViewData?.meta?.totalRecords || 0);\n const groupRecords = solidEntityKanbanViewData?.groupRecords || [];\n const groupMap = new Map((kanbanViewData || []).map((g: any) => [g.groupName, g]));\n groupRecords.forEach((newGroup: any) => {\n groupMap.set(newGroup.groupName, newGroup);\n });\n const latestKanbanGroupData = Array.from(groupMap.values());\n setKanbanViewData(latestKanbanGroupData);\n const loadmoredata = Object.entries(latestKanbanGroupData).reduce((acc: any, [, value]: any) => {\n acc[value.groupName] = {\n offset: (value.groupData.meta.currentPage - 1) * value.groupData.meta.perPage,\n limit: value.groupData.meta.perPage,\n count: value.groupData.meta.totalRecords\n };\n return acc;\n }, {});\n\n setKanbanLoadMoreData(loadmoredata)\n setLoading(false);\n }\n }, [solidEntityKanbanViewData]);\n\n useEffect(() => {\n if (solidKanbanViewMetaData) {\n const kanbanViewLayoutAttrs = solidKanbanViewMetaData?.data?.solidView?.layout?.attrs;\n const createActionUrl = kanbanViewLayoutAttrs?.createAction && kanbanViewLayoutAttrs?.createAction?.type === \"custom\" ? kanbanViewLayoutAttrs?.createAction?.customComponent : \"form/new\";\n const editActionUrl = kanbanViewLayoutAttrs?.editAction && kanbanViewLayoutAttrs?.editAction?.type === \"custom\" ? kanbanViewLayoutAttrs?.editAction?.customComponent : \"form\";\n\n if (kanbanViewLayoutAttrs?.createAction) {\n setCreateActionQueryParams({\n actionName: kanbanViewLayoutAttrs.createAction.name,\n actionType: kanbanViewLayoutAttrs.createAction.type,\n actionContext: kanbanViewLayoutAttrs.createAction.context,\n });\n }\n if (kanbanViewLayoutAttrs?.editAction) {\n setEditActionQueryParams({\n actionName: kanbanViewLayoutAttrs.editAction.name,\n actionType: kanbanViewLayoutAttrs.editAction.type,\n actionContext: kanbanViewLayoutAttrs.editAction.context,\n });\n }\n\n if (createActionUrl) {\n setCreateButtonUrl(createActionUrl)\n }\n if (editActionUrl) {\n setEditButtonUrl(editActionUrl)\n }\n }\n }, [solidKanbanViewMetaData])\n\n // Fetch data after toPopulate has been populated...\n useEffect(() => {\n\n if (solidKanbanViewMetaData) {\n\n const swimlanesCount = solidKanbanViewMetaData?.data.solidView?.layout?.attrs?.swimlanesCount || 5;\n if (groupByFieldName) {\n\n const queryObject = getFilterObjectFromLocalStorage();\n let queryString = \"\";\n if (queryObject) {\n const filters = {\n $and: []\n }\n if (queryObject.custom_filter_predicate) {\n // @ts-ignore\n filters.$and.push(queryObject.custom_filter_predicate);\n }\n if (queryObject.search_predicate) {\n // @ts-ignore\n filters.$and.push(queryObject.search_predicate);\n }\n // if (queryObject.saved_filter_predicate) {\n // filters.$and.push(queryObject.saved_filter_predicate);\n // }\n // if (queryObject.predefined_search_predicate) {\n // filters.$and.push(queryObject.predefined_search_predicate);\n // }\n\n const queryData = {\n offset: 0,\n limit: Number(queryObject.limit) + Number(queryObject.offset),\n // fields: queryObject.fields || [`${groupByFieldName}`, `count(${groupByFieldName})`],\n groupBy: queryObject.groupBy || groupByFieldName,\n // @ts-ignore\n populateMedia: queryObject.populateMedia || toPopulateMedia,\n populateGroup: queryObject.populateGroup || true,\n groupFilter: {\n limit: Number(queryObject.groupFilter.limit) + Number(queryObject.groupFilter.offset) || kanbanViewMetaData?.data?.solidView?.layout?.attrs?.recordsInSwimlane,\n offset: 0,\n filters: filters,\n // @ts-ignore\n populate: queryObject.groupFilter.populate || toPopulate,\n // @ts-ignore\n populateMedia: queryObject.groupFilter.populateMedia || toPopulateMedia\n }\n // sort: [`id:desc`],\n };\n\n\n const { recordsInSwimlane, toPopulate, toPopulateMedia } = initialFilterMethod();\n setToPopulate(toPopulate);\n setToPopulateMedia(toPopulateMedia);\n setRecordsInSwimlane(recordsInSwimlane);\n // setFilters(filters);\n setQueryDataLoaded(true);\n\n queryString = qs.stringify(queryData, {\n encodeValuesOnly: true\n });\n\n } else {\n const { recordsInSwimlane, toPopulate, toPopulateMedia } = initialFilterMethod();\n const queryData = {\n offset: 0,\n limit: swimlanesCount,\n // fields: [`${groupByFieldName}`, `count(${groupByFieldName})`],\n groupBy: groupByFieldName,\n populateMedia: toPopulateMedia,\n populateGroup: true,\n groupFilter: {\n limit: kanbanViewMetaData?.data?.solidView?.layout?.attrs?.recordsInSwimlane || 10,\n offset: 0,\n filters: filters,\n populate: toPopulate,\n populateMedia: toPopulateMedia\n }\n // sort: [`id:desc`],\n };\n setRecordsInSwimlane(recordsInSwimlane);\n setToPopulate(toPopulate);\n setToPopulateMedia(toPopulateMedia);\n\n // fields=status&groupBy=status&fields=count(status)&populateGroup=true\n queryString = qs.stringify(queryData, {\n encodeValuesOnly: true\n });\n\n setQueryDataLoaded(true)\n }\n\n // triggerGetSolidEntities(queryString);\n setSelectedRecords([]);\n }\n }\n }, [isDeleteSolidEntitiesSucess, groupByFieldName, solidKanbanViewMetaData]);\n\n // clickable link allowing one to open the detail / form view.\n\n // handle bulk deletion\n const deleteBulk = () => {\n let deleteList: any = [];\n selectedRecords.forEach((element: any) => {\n deleteList.push(element.id);\n });\n deleteManySolidEntities(deleteList);\n setDialogVisible(false);\n };\n\n // handle closing of the delete dialog...\n const onDeleteClose = () => {\n setDialogVisible(false);\n setSelectedRecords([]);\n }\n\n\n // Individual Swimlane Load More\n const handleLoadMore = async (groupByField: string) => {\n const { offset, limit } = kanbanLoadMoreData[groupByField];\n kanbanLoadMoreData[groupByField].offset = offset + limit;\n try {\n const queryData = {\n offset: offset + limit,\n limit: limit,\n populate: toPopulate,\n populateMedia: toPopulateMedia,\n populateGroup: true,\n filters: {\n [groupByFieldName]: {\n $in: [groupByField],\n },\n ...filters\n }\n }\n\n\n const queryString = qs.stringify(queryData, {\n encodeValuesOnly: true\n });\n // router.push(`?${queryString}`);\n const data: any = await triggerGetSolidEntities(queryString);\n const newRecords = data.data.records;\n const mergeData = (\n kanbanViewData: any[],\n newRecords: any[],\n groupByField: string\n ) => {\n // Find the group matching the specified groupByField\n const originalData = structuredClone(kanbanViewData);\n const targetGroup = originalData.find(\n (group: any) => group.groupName === groupByField\n );\n if (targetGroup) {\n const { groupData } = targetGroup;\n\n if (targetGroup.groupData) {\n // Extract existing records\n const existingRecords = targetGroup.groupData.records;\n const updatedRecords = [...existingRecords, ...newRecords];\n targetGroup.groupData.records = updatedRecords\n\n\n // Update the meta data (you can adjust this logic as needed)\n groupData.meta.prevPage = groupData.meta.currentPage\n groupData.meta.currentPage = groupData.meta.currentPage + 1\n groupData.meta.nextPage = groupData.meta.currentPage + 1\n }\n }\n return originalData;\n };\n\n\n const updatedData = mergeData(kanbanViewData, newRecords, groupByField);\n setKanbanViewData(updatedData);\n const loadmoredata = Object.entries(updatedData).reduce((acc: any, [, value]: any) => {\n acc[value.groupName] = {\n offset: (value.groupData.meta.currentPage - 1) * value.groupData.meta.perPage,\n limit: value.groupData.meta.perPage,\n count: value.groupData.meta.totalRecords\n };\n return acc;\n }, {});\n setKanbanLoadMoreData(loadmoredata)\n\n } catch (error) {\n console.error(ERROR_MESSAGES.LOAD_MORE_DATA, error);\n }\n };\n\n\n // Handle drag-and-drop functionality\n // @ts-ignore\n const onDragEnd = async (result: DropResult): void => {\n const { source, destination } = result;\n if (!destination) return;\n\n const sourceGroupName = source.droppableId;\n const destinationGroupName = destination.droppableId;\n\n // Find the source and destination groups\n const sourceGroupIndex = kanbanViewData.findIndex((group: any) => group.groupName === sourceGroupName);\n const destinationGroupIndex = kanbanViewData.findIndex((group: any) => group.groupName === destinationGroupName);\n\n if (sourceGroupIndex === -1 || destinationGroupIndex === -1) return;\n\n // If dragging within the same group\n if (sourceGroupName === destinationGroupName) {\n setKanbanViewData((prevData: typeof kanbanViewData) =>\n prevData.map((group: any) => {\n if (group.groupName === sourceGroupName) {\n const updatedRecords = [...group.groupData.records];\n const [movedItem] = updatedRecords.splice(source.index, 1); // Remove the item\n updatedRecords.splice(destination.index, 0, movedItem); // Insert at the new position\n\n return {\n ...group,\n groupData: {\n ...group.groupData,\n records: updatedRecords,\n },\n };\n }\n return group;\n })\n );\n return;\n }\n\n // Deep clone the source and destination groups\n const sourceGroup = JSON.parse(JSON.stringify(kanbanViewData[sourceGroupIndex]));\n const destinationGroup = JSON.parse(JSON.stringify(kanbanViewData[destinationGroupIndex]));\n\n // Clone the records for immutability\n const sourceRecords = [...sourceGroup.groupData.records];\n const destinationRecords = [...destinationGroup.groupData.records];\n\n // Remove the item from the source\n const [movedItem] = sourceRecords.splice(source.index, 1);\n\n // Create a mutable copy of the moved item\n const updatedItem = { ...movedItem, status: destinationGroupName };\n\n // Add the updated item to the destination\n destinationRecords.splice(destination.index, 0, updatedItem);\n\n // Update the group data\n sourceGroup.groupData.records = sourceRecords;\n destinationGroup.groupData.records = destinationRecords;\n\n // Update the kanbanViewData state\n const oldkanbanViewData = structuredClone(kanbanViewData);\n try {\n const formData = new FormData();\n formData.append(groupByFieldName, destinationGroupName);\n // Update the kanbanViewData state\n setKanbanViewData((prevData: typeof kanbanViewData) =>\n prevData.map((group: any) => {\n if (group.groupName === sourceGroupName) {\n return sourceGroup;\n }\n if (group.groupName === destinationGroupName) {\n return destinationGroup;\n }\n return group;\n })\n );\n const kanbanUpdateResponse = await patchKanbanView({ id: +movedItem.id, data: formData }).unwrap();\n\n if (kanbanUpdateResponse?.statusCode === 200) {\n showToast(toast, \"success\", ERROR_MESSAGES.IS_SUCCESS, ERROR_MESSAGES.KANBAN_UPDATED);\n } else {\n showToast(toast, \"error\", ERROR_MESSAGES.DUPLICATE_KEY, kanbanUpdateResponse?.error);\n // Update the kanbanViewData state\n setKanbanViewData(oldkanbanViewData);\n }\n } catch (error: any) {\n // 6. Handle 500 or network errors\n console.error(ERROR_MESSAGES.API_ERROR, error);\n showToast(toast, \"error\", ERROR_MESSAGES.SOMETHING_WRONG, error?.data?.message || ERROR_MESSAGES.SOMETHING_WRONG);\n setKanbanViewData(oldkanbanViewData);\n }\n };\n\n\n // Handle SwimLane Pagination\n const handleSwimLanePagination = async () => {\n\n if (solidKanbanViewMetaData) {\n\n const swimlanesCount = solidKanbanViewMetaData?.data.solidView?.layout?.attrs?.swimlanesCount || 5;\n const queryData = {\n offset: swimLaneCurrentPageNumber * swimlanesCount,\n limit: swimlanesCount,\n // fields: [`${groupByFieldName}`, `count(${groupByFieldName})`],\n groupBy: groupByFieldName,\n populateMedia: toPopulateMedia,\n populate: toPopulate,\n populateGroup: true,\n groupFilter: {\n limit: recordsInSwimlane,\n offset: 0,\n filters: filters,\n populate: toPopulate,\n populateMedia: toPopulateMedia\n\n }\n // sort: [`id:desc`],\n };\n // fields=status&groupBy=status&fields=count(status)&populateGroup=true\n const queryString = qs.stringify(queryData, {\n encodeValuesOnly: true\n });\n\n const data: any = await triggerGetSolidEntities(queryString);\n if (data && data?.data?.groupRecords.length > 0) {\n const updatedData = [...kanbanViewData, ...data.data.groupRecords];\n setKanbanViewData(updatedData);\n }\n setSwimLaneCurrentPageNumber(swimLaneCurrentPageNumber + 1)\n }\n }\n\n\n // Handle the custom filter and Search Filter\n const handleApplyCustomFilter = async (filterPredicates: any, persistFilter: boolean = false) => {\n\n if (solidKanbanViewMetaData) {\n const queryfilter = {\n $and: [\n ]\n }\n\n if (filterPredicates.custom_filter_predicate) {\n // @ts-ignore\n queryfilter.$and.push(filterPredicates.custom_filter_predicate);\n }\n if (filterPredicates.search_predicate) {\n // @ts-ignore\n queryfilter.$and.push(filterPredicates.search_predicate);\n }\n if (filterPredicates.saved_filter_predicate) {\n // @ts-ignore\n queryfilter.$and.push(filterPredicates.saved_filter_predicate);\n }\n if (filterPredicates.predefined_search_predicate) {\n // @ts-ignore\n queryfilter.$and.push(filterPredicates.predefined_search_predicate);\n }\n\n const customFilter = filterPredicates;\n const updatedFilter = { ...(filters || {}), ...(queryfilter || {}) };\n\n // Then update state\n setFilters(updatedFilter);\n\n\n const swimlanesCount = solidKanbanViewMetaData?.data.solidView?.layout?.attrs?.swimlanesCount || 5;\n // const { toPopulate, toPopulateMedia } = initialFilterMethod();\n\n const queryData = {\n offset: 0,\n limit: swimlanesCount,\n // fields: [`${groupByFieldName}`, `count(${groupByFieldName})`],\n groupBy: groupByFieldName,\n populateMedia: toPopulateMedia,\n populateGroup: true,\n groupFilter: {\n limit: recordsInSwimlane,\n offset: 0,\n filters: updatedFilter,\n populate: toPopulate,\n populateMedia: toPopulateMedia\n }\n }\n const queryString = qs.stringify(queryData, {\n encodeValuesOnly: true\n });\n\n // s_filter and c_filter format that needs to be passed to the router\n // only present if handleCustomFilter is applied\n if (customFilter) {\n const urlData = structuredClone(queryData);\n // @ts-ignore\n delete urlData.filters;\n // urlData.s_filter = customFilter.s_filter || {};\n // urlData.c_filter = customFilter.c_filter || {};\n // @ts-ignore\n urlData.custom_filter_predicate = customFilter.custom_filter_predicate || {};\n // @ts-ignore\n urlData.search_predicate = customFilter.search_predicate || {};\n // @ts-ignore\n setFilterObjectToLocalStorage(urlData);\n }\n\n\n const data: any = await triggerGetSolidEntities(queryString);\n\n // Update the kanban view data with the new data based on filter\n setSwimLaneCurrentPageNumber(1);\n if (data && data?.data?.groupRecords.length > 0) {\n const updatedData = [...data.data.groupRecords];\n setKanbanViewData(updatedData);\n }\n setSelectedRecords([]);\n\n\n }\n\n }\n\n useEffect(() => {\n if (solidKanbanViewMetaData) {\n const createActionUrl = solidKanbanViewMetaData?.data?.solidView?.layout?.attrs?.createAction && solidKanbanViewMetaData?.data?.solidView?.layout?.attrs?.createAction?.type === \"custom\" ? solidKanbanViewMetaData?.data?.solidView?.layout?.attrs?.createAction?.customComponent : \"form/new\";\n const editActionUrl = solidKanbanViewMetaData?.data?.solidView?.layout?.attrs?.editAction && solidKanbanViewMetaData?.data?.solidView?.layout?.attrs?.editAction?.type === \"custom\" ? solidKanbanViewMetaData?.data?.solidView?.layout?.attrs?.editAction?.customComponent : \"form\";\n const viewModes = solidKanbanViewMetaData?.data?.solidView?.layout?.attrs?.allowedViews && solidKanbanViewMetaData?.data?.solidView?.layout?.attrs?.allowedViews.length > 0 && solidKanbanViewMetaData?.data?.solidView?.layout?.attrs?.allowedViews.map((view: any) => { return { label: capitalize(view), value: view } });\n setViewModes(viewModes);\n if (createActionUrl) {\n setCreateButtonUrl(createActionUrl)\n }\n if (editActionUrl) {\n setEditButtonUrl(editActionUrl)\n }\n }\n }, [solidKanbanViewMetaData])\n\n const kanbanViewTitle = solidKanbanViewMetaData?.data?.solidView?.displayName\n\n\n const toggleBothSidebars = () => {\n if (visibleNavbar) {\n dispatch(toggleNavbar()); // close both\n } else {\n dispatch(showNavbar()); // open both\n }\n };\n\n return (\n <div className=\"page-parent-wrapper\">\n <Toast ref={toast} />\n <div className=\"page-header flex-column lg:flex-row\">\n <div className=\"flex justify-content-between w-full \">\n\n <div className=\"flex align-items-center solid-header-buttons-wrapper\">\n {params.embeded !== true &&\n <div className=\"apps-icon block md:hidden cursor-pointer\" onClick={toggleBothSidebars}>\n <i className=\"pi pi-th-large\"></i>\n </div>\n }\n\n <p className=\"m-0 view-title solid-text-wrapper\">{kanbanViewTitle}</p>\n {solidKanbanViewMetaData?.data?.solidView?.layout?.attrs.enableGlobalSearch === true &&\n // <SolidGlobalSearchElement viewData={solidKanbanViewMetaData} handleApplyCustomFilter={handleApplyCustomFilter} ></SolidGlobalSearchElement>\n <div className=\"hidden lg:flex\">\n <SolidGlobalSearchElement viewType=\"kanban\" showSaveFilterPopup={showSaveFilterPopup} setShowSaveFilterPopup={setShowSaveFilterPopup} ref={solidGlobalSearchElementRef} viewData={solidKanbanViewMetaData} handleApplyCustomFilter={handleApplyCustomFilter} ></SolidGlobalSearchElement>\n </div>\n }\n </div>\n\n <div className=\"flex align-items-center solid-header-buttons-wrapper\">\n {solidKanbanViewMetaData?.data?.solidView?.layout?.attrs.enableGlobalSearch === true &&\n <div className=\"flex lg:hidden\">\n <Button\n type=\"button\"\n size=\"small\"\n icon=\"pi pi-search\"\n severity=\"secondary\"\n outlined\n className=\"solid-icon-button\"\n onClick={() => setShowGlobalSearchElement(!showGlobalSearchElement)}>\n </Button>\n </div>\n }\n\n {actionsAllowed.includes(`${permissionExpression(params.modelName, 'create')}`) && solidKanbanViewMetaData?.data?.solidView?.layout?.attrs.create !== false &&\n <SolidCreateButton createButtonUrl={createButtonUrl} createActionQueryParams={createActionQueryParams} responsiveIconOnly={true} />\n }\n\n {actionsAllowed.includes(`${permissionExpression(params.modelName, 'delete')}`) && solidKanbanViewMetaData?.data?.solidView?.layout?.attrs.delete !== false && selectedRecords.length > 0 && <Button\n type=\"button\"\n label=\"Delete\"\n size=\"small\"\n onClick={() => setDialogVisible(true)}\n className=\"small-button \"\n severity=\"danger\"\n />}\n <Button\n type=\"button\"\n size=\"small\"\n icon=\"pi pi-refresh\"\n severity=\"secondary\"\n className=\"solid-icon-button\"\n outlined\n onClick={() => {\n window.location.reload()\n }}\n />\n <SolidKanbanViewConfigure\n solidKanbanViewMetaData={solidKanbanViewMetaData}\n actionsAllowed={actionsAllowed}\n viewModes={viewModes}\n setLayoutDialogVisible={setLayoutDialogVisible}\n setShowSaveFilterPopup={setShowSaveFilterPopup}\n />\n {/* <SolidConfigureLayoutElement></SolidConfigureLayoutElement> */}\n </div>\n </div>\n {/* </div> */}\n {solidKanbanViewMetaData?.data?.solidView?.layout?.attrs.enableGlobalSearch === true && showGlobalSearchElement && (\n <div className=\"flex lg:hidden\">\n <SolidGlobalSearchElement viewType=\"kanban\" showSaveFilterPopup={showSaveFilterPopup} setShowSaveFilterPopup={setShowSaveFilterPopup} ref={solidGlobalSearchElementRef} viewData={solidKanbanViewMetaData} handleApplyCustomFilter={handleApplyCustomFilter} ></SolidGlobalSearchElement>\n </div>\n )}\n </div>\n\n <style>{`.p-datatable .p-datatable-loading-overlay {background-color: rgba(0, 0, 0, 0.0);}`}</style>\n {solidKanbanViewMetaData && kanbanViewData &&\n <KanbanBoard groupByFieldName={groupByFieldName} groupedView={groupedView} kanbanViewData={kanbanViewData} maxSwimLanesCount={maxSwimLanesCount} solidKanbanViewMetaData={solidKanbanViewMetaData?.data} setKanbanViewData={setKanbanViewData} handleLoadMore={handleLoadMore} onDragEnd={onDragEnd} handleSwimLanePagination={handleSwimLanePagination} setLightboxUrls={setLightboxUrls} setOpenLightbox={setOpenLightbox} editButtonUrl={editBaseUrl}></KanbanBoard>\n }\n\n <Dialog\n visible={isDialogVisible}\n header=\"Confirm Delete\"\n modal\n className=\"solid-confirm-dialog\"\n footer={() => (\n <div className=\"flex justify-content-center\">\n <Button label=\"Yes\" icon=\"pi pi-check\" className='small-button' severity=\"danger\" autoFocus onClick={deleteBulk} />\n <Button label=\"No\" icon=\"pi pi-times\" className='small-button' onClick={onDeleteClose} />\n </div>\n )}\n onHide={() => setDialogVisible(false)}\n >\n <p>Are you sure you want to delete the selected records?</p>\n </Dialog>\n {openLightbox &&\n <Lightbox\n open={openLightbox}\n plugins={[Counter, Download]}\n close={() => setOpenLightbox(false)}\n // @ts-ignore\n slides={lightboxUrls}\n />\n }\n <Dialog\n visible={isLayoutDialogVisible}\n header=\"Change Kanban Layout\"\n modal\n onHide={() => setLayoutDialogVisible(false)}\n // contentStyle={{\n // width: 800\n // }}\n style={{ width: '800px' }}\n breakpoints={{\n '1024px': '75vw', '991px': '86vw', '767px': '92vw', '250px': '96vw'\n }}\n\n >\n <KanbanUserViewLayout solidKanbanViewMetaData={solidKanbanViewMetaData} setLayoutDialogVisible={setLayoutDialogVisible} />\n </Dialog>\n </div>\n );\n};\n"]}
1
+ {"version":3,"file":"SolidKanbanView.js","sourceRoot":"","sources":["../../../../src/components/core/kanban/SolidKanbanView.tsx"],"names":[],"mappings":"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","sourcesContent":["import { permissionExpression } from \"../../../helpers/permissions\";\nimport { createSolidEntityApi } from \"../../../redux/api/solidEntityApi\";\nimport { useGetSolidViewLayoutQuery } from \"../../../redux/api/solidViewApi\";\nimport { useLazyCheckIfPermissionExistsQuery } from \"../../../redux/api/userApi\";\nimport { DropResult } from \"@hello-pangea/dnd\";\nimport { FilterMatchMode } from \"primereact/api\";\nimport { Button } from \"primereact/button\";\nimport { Dialog } from \"primereact/dialog\";\nimport qs from \"qs\";\nimport { useEffect, useRef, useState } from \"react\";\nimport { SolidCreateButton } from \"../common/SolidCreateButton\";\nimport { SolidGlobalSearchElement } from \"../common/SolidGlobalSearchElement\";\nimport KanbanBoard from \"./KanbanBoard\";\nimport CompactImage from '../../../resources/images/layout/images/compact.png';\nimport CozyImage from '../../../resources/images/layout/images/cozy.png';\nimport ComfortableImage from '../../../resources/images/layout/images/comfortable.png';\nimport { capitalize } from \"lodash\";\nimport Lightbox from \"yet-another-react-lightbox\";\nimport Counter from \"yet-another-react-lightbox/plugins/counter\";\nimport Download from \"yet-another-react-lightbox/plugins/download\";\nimport \"yet-another-react-lightbox/styles.css\";\nimport \"yet-another-react-lightbox/plugins/counter.css\";\nimport { useRouter } from \"../../../hooks/useRouter\";\nimport { SolidKanbanViewConfigure } from \"./SolidKanbanViewConfigure\";\nimport { KanbanUserViewLayout } from \"./KanbanUserViewLayout\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { setFilterObjectToLocalStorage, getFilterObjectFromLocalStorage } from \"../list/SolidListView\";\nimport { Toast } from \"primereact/toast\";\nimport { ERROR_MESSAGES } from \"../../../constants/error-messages\";\nimport { showNavbar, toggleNavbar } from \"../../../redux/features/navbarSlice\";\nimport { normalizeSolidListTreeKanbanActionPath } from \"../../../helpers/routePaths\";\nimport showToast from \"../../../helpers/showToast\";\n\n\ntype SolidKanbanViewParams = {\n moduleName: string;\n modelName: string;\n embeded: boolean;\n};\n\n\nexport const SolidKanbanView = (params: SolidKanbanViewParams) => {\n\n const visibleNavbar = useSelector((state: any) => state.navbarState?.visibleNavbar);\n const dispatch = useDispatch()\n\n const solidGlobalSearchElementRef = useRef();\n const router = useRouter();\n // TODO: The initial filter state will be created based on the fields which are present on this kanban view. \n const [filters, setFilters] = useState<any>();\n const [toPopulate, setToPopulate] = useState<string[]>([]);\n const [toPopulateMedia, setToPopulateMedia] = useState<string[]>([]);\n const [actionsAllowed, setActionsAllowed] = useState<string[]>([]);\n const [showGlobalSearchElement, setShowGlobalSearchElement] = useState<boolean>(false);\n const [showArchived, setShowArchived] = useState(false);\n const sizeOptions = [\n { label: 'Compact', value: 'small', image: CompactImage },\n { label: 'Cozy', value: 'normal', image: CozyImage },\n { label: 'Comfortable', value: 'large', image: ComfortableImage }\n ]\n const [size, setSize] = useState<string | any>(sizeOptions[1].value);\n const [viewModes, setViewModes] = useState<any>([]);\n const [groupByFieldName, setGroupByFieldName] = useState<string>(\"\");\n const [groupedView, setGroupedView] = useState(true);\n const [triggerCheckIfPermissionExists] = useLazyCheckIfPermissionExistsQuery();\n const [openLightbox, setOpenLightbox] = useState(false);\n const [lightboxUrls, setLightboxUrls] = useState({});\n const [filterQueryString, setFilterQueryString] = useState<any>();\n const [isLayoutDialogVisible, setLayoutDialogVisible] = useState(false);\n const toast = useRef<Toast>(null);\n\n const pushFiltersToRouter = (filterQueryString: any) => {\n // @ts-ignore\n router.push(`?${filterQueryString}`, undefined, { shallow: true });\n };\n\n useEffect(() => {\n if (filterQueryString) {\n pushFiltersToRouter(filterQueryString);\n }\n }, [filterQueryString]);\n\n\n\n useEffect(() => {\n const fetchPermissions = async () => {\n if (params.modelName) {\n const permissionNames = [\n permissionExpression(params.modelName, 'create'),\n permissionExpression(params.modelName, 'delete'),\n permissionExpression(params.modelName, 'update')\n ]\n const queryData = {\n permissionNames: permissionNames\n };\n const queryString = qs.stringify(queryData, {\n encodeValuesOnly: true\n });\n const response = await triggerCheckIfPermissionExists(queryString);\n setActionsAllowed(response.data.data);\n }\n };\n fetchPermissions();\n }, [params.modelName]);\n\n\n // Create the RTK slices for this entity\n const entityApi = createSolidEntityApi(params.modelName);\n const {\n useDeleteMultipleSolidEntitiesMutation,\n useLazyGetSolidEntitiesQuery,\n usePatchUpdateSolidEntityMutation\n } = entityApi;\n\n // Get the kanban view layout & metadata first. \n const kanbanViewMetaDataQs = qs.stringify({ ...params, viewType: 'kanban' }, {\n encodeValuesOnly: true,\n });\n const [kanbanViewMetaData, setKanbanViewMetaData] = useState<any>({});\n\n const {\n data: solidKanbanViewMetaData } = useGetSolidViewLayoutQuery(kanbanViewMetaDataQs);\n\n\n\n const initialFilterMethod = () => {\n\n const solidView = solidKanbanViewMetaData.data.solidView;\n const solidFieldsMetadata = solidKanbanViewMetaData.data.solidFieldsMetadata;\n\n const initialFilters: any = {};\n const toPopulate: string[] = [];\n const toPopulateMedia: string[] = [];\n function extractFields(node: any, result: any = []) {\n if (node.type === \"field\") {\n result.push(node);\n }\n if (node.children) {\n node.children.forEach((child: any) => extractFields(child, result));\n }\n return result;\n }\n\n const layoutFields = extractFields(solidView.layout);\n\n for (let i = 0; i < layoutFields.length; i++) {\n const column = layoutFields[i];\n const fieldMetadata = solidFieldsMetadata[column.attrs.name];\n if (fieldMetadata) {\n\n // Form the initial filters after iterating over the columns and field metadata. \n if (['int', 'bigint', 'float', 'decimal'].includes(fieldMetadata.type)) {\n // initialFilters[column.attrs.name] = { operator: FilterOperator.OR, constraints: [{ value: null, matchMode: FilterMatchMode.EQUALS }] }\n initialFilters[column.attrs.name] = { value: null, matchMode: FilterMatchMode.EQUALS }\n }\n else if (['date', 'datetime', 'time', 'boolean'].includes(fieldMetadata.type)) {\n // initialFilters[column.attrs.name] = { operator: FilterOperator.OR, constraints: [{ value: null, matchMode: FilterMatchMode.DATE_IS }] }\n initialFilters[column.attrs.name] = { value: null, matchMode: FilterMatchMode.EQUALS }\n }\n else if (['relation', 'selectionStatic', 'selectionDynamic'].includes(fieldMetadata.type)) {\n initialFilters[column.attrs.name] = { value: null, matchMode: FilterMatchMode.IN }\n }\n else {\n // initialFilters[column.attrs.name] = { operator: FilterOperator.OR, constraints: [{ value: null, matchMode: FilterMatchMode.STARTS_WITH }] }\n initialFilters[column.attrs.name] = { value: null, matchMode: FilterMatchMode.STARTS_WITH }\n }\n\n if (column.attrs.name === 'id') {\n initialFilters[column.attrs.name] = { value: null, matchMode: FilterMatchMode.IN }\n }\n\n // Form the \"toPopulate\" array. \n if (fieldMetadata.type === 'relation') {\n toPopulate.push(fieldMetadata.name);\n }\n if (fieldMetadata.type === 'mediaSingle' || fieldMetadata.type === 'mediaMultiple') {\n toPopulateMedia.push(fieldMetadata.name);\n }\n }\n }\n\n // setFilters(initialFilters);\n const recordsInSwimlane = solidKanbanViewMetaData?.data?.solidView?.layout?.attrs?.recordsInSwimlane ? solidKanbanViewMetaData?.data?.solidView?.layout?.attrs?.recordsInSwimlane : 10;\n // setToPopulate(toPopulate);\n // setToPopulateMedia(toPopulateMedia);\n // setRecordsInSwimlane(recordsInSwimlane);\n // setToPopulate(toPopulate);\n // setToPopulateMedia(toPopulateMedia);\n return { recordsInSwimlane, toPopulate, toPopulateMedia }\n }\n\n\n // Initial Filter data \n useEffect(() => {\n\n if (solidKanbanViewMetaData) {\n setKanbanViewMetaData(solidKanbanViewMetaData);\n // const viewModes = solidKanbanViewMetaData?.data?.solidView?.layout?.attrs?.allowedViews && solidKanbanViewMetaData?.data?.solidView?.layout?.attrs?.allowedViews.length > 0 && solidKanbanViewMetaData?.data?.solidView?.layout?.attrs?.allowedViews.map((view: any) => { return { label: capitalize(view), value: view } });\n setViewModes(solidKanbanViewMetaData?.data?.viewModes);\n // setViewModes(viewModes);\n if (solidKanbanViewMetaData?.data?.solidView?.layout?.attrs?.grouped !== false) {\n setGroupByFieldName(solidKanbanViewMetaData?.data?.solidView?.layout?.attrs?.groupBy)\n } else {\n setGroupByFieldName(\"deletedTracker\");\n setGroupedView(false);\n }\n }\n }, [solidKanbanViewMetaData]);\n\n // All kanban view state.\n const [kanbanViewData, setKanbanViewData] = useState<any>([]);\n const [kanbanLoadMoreData, setKanbanLoadMoreData] = useState<any>({});\n const [recordsInSwimlane, setRecordsInSwimlane] = useState(10);\n const [selectedRecords, setSelectedRecords] = useState<any[]>([]);\n const [loading, setLoading] = useState<boolean>(true);\n const [isDialogVisible, setDialogVisible] = useState(false);\n const [createButtonUrl, setCreateButtonUrl] = useState<string>();\n const [editButtonUrl, setEditButtonUrl] = useState<string>();\n const [createActionQueryParams, setCreateActionQueryParams] = useState<Record<string, string>>({});\n const [editActionQueryParams, setEditActionQueryParams] = useState<Record<string, string>>({});\n const [columnsCount, setColumnsCount] = useState(5);\n const [swimLaneCurrentPageNumber, setSwimLaneCurrentPageNumber] = useState(1);\n const [queryDataLoaded, setQueryDataLoaded] = useState(false);\n const [showSaveFilterPopup, setShowSaveFilterPopup] = useState<boolean>(false);\n const [maxSwimLanesCount, setMaxSwimLanesCount] = useState<number>(0);\n // @ts-ignore\n const editBaseUrl = normalizeSolidListTreeKanbanActionPath(pathname, editButtonUrl || \"form\");\n // Get the kanban view data.\n // const [triggerGetSolidEntitiesForKanban, { data: solidEntityKanbanViewData, isLoading, error }] = useLazyGetSolidKanbanEntitiesQuery();\n const [triggerGetSolidEntities, { data: solidEntityKanbanViewData }] = useLazyGetSolidEntitiesQuery();\n\n // Delete mutation \n const [\n deleteManySolidEntities,\n {\n isSuccess: isDeleteSolidEntitiesSucess,\n },\n ] = useDeleteMultipleSolidEntitiesMutation();\n const [\n patchKanbanView,\n ] = usePatchUpdateSolidEntityMutation();\n\n // After data is fetched populate the kanban view state so as to be able to render the data. \n useEffect(() => {\n if (solidEntityKanbanViewData) {\n // Merge groupRecords by groupName: update existing, add new\n setMaxSwimLanesCount(solidEntityKanbanViewData?.meta?.totalRecords || 0);\n const groupRecords = solidEntityKanbanViewData?.groupRecords || [];\n const groupMap = new Map((kanbanViewData || []).map((g: any) => [g.groupName, g]));\n groupRecords.forEach((newGroup: any) => {\n groupMap.set(newGroup.groupName, newGroup);\n });\n const latestKanbanGroupData = Array.from(groupMap.values());\n setKanbanViewData(latestKanbanGroupData);\n const loadmoredata = Object.entries(latestKanbanGroupData).reduce((acc: any, [, value]: any) => {\n acc[value.groupName] = {\n offset: (value.groupData.meta.currentPage - 1) * value.groupData.meta.perPage,\n limit: value.groupData.meta.perPage,\n count: value.groupData.meta.totalRecords\n };\n return acc;\n }, {});\n\n setKanbanLoadMoreData(loadmoredata)\n setLoading(false);\n }\n }, [solidEntityKanbanViewData]);\n\n useEffect(() => {\n if (solidKanbanViewMetaData) {\n const kanbanViewLayoutAttrs = solidKanbanViewMetaData?.data?.solidView?.layout?.attrs;\n const createActionUrl = kanbanViewLayoutAttrs?.createAction && kanbanViewLayoutAttrs?.createAction?.type === \"custom\" ? kanbanViewLayoutAttrs?.createAction?.customComponent : \"form/new\";\n const editActionUrl = kanbanViewLayoutAttrs?.editAction && kanbanViewLayoutAttrs?.editAction?.type === \"custom\" ? kanbanViewLayoutAttrs?.editAction?.customComponent : \"form\";\n\n if (kanbanViewLayoutAttrs?.createAction) {\n setCreateActionQueryParams({\n actionName: kanbanViewLayoutAttrs.createAction.name,\n actionType: kanbanViewLayoutAttrs.createAction.type,\n actionContext: kanbanViewLayoutAttrs.createAction.context,\n });\n }\n if (kanbanViewLayoutAttrs?.editAction) {\n setEditActionQueryParams({\n actionName: kanbanViewLayoutAttrs.editAction.name,\n actionType: kanbanViewLayoutAttrs.editAction.type,\n actionContext: kanbanViewLayoutAttrs.editAction.context,\n });\n }\n\n if (createActionUrl) {\n setCreateButtonUrl(createActionUrl)\n }\n if (editActionUrl) {\n setEditButtonUrl(editActionUrl)\n }\n }\n }, [solidKanbanViewMetaData])\n\n // Fetch data after toPopulate has been populated...\n useEffect(() => {\n\n if (solidKanbanViewMetaData) {\n\n const swimlanesCount = solidKanbanViewMetaData?.data.solidView?.layout?.attrs?.swimlanesCount || 5;\n if (groupByFieldName) {\n\n const queryObject = getFilterObjectFromLocalStorage();\n let queryString = \"\";\n if (queryObject) {\n const filters = {\n $and: []\n }\n if (queryObject.custom_filter_predicate) {\n // @ts-ignore\n filters.$and.push(queryObject.custom_filter_predicate);\n }\n if (queryObject.search_predicate) {\n // @ts-ignore\n filters.$and.push(queryObject.search_predicate);\n }\n // if (queryObject.saved_filter_predicate) {\n // filters.$and.push(queryObject.saved_filter_predicate);\n // }\n // if (queryObject.predefined_search_predicate) {\n // filters.$and.push(queryObject.predefined_search_predicate);\n // }\n\n const queryData = {\n offset: 0,\n limit: Number(queryObject.limit) + Number(queryObject.offset),\n // fields: queryObject.fields || [`${groupByFieldName}`, `count(${groupByFieldName})`],\n groupBy: queryObject.groupBy || groupByFieldName,\n // @ts-ignore\n populateMedia: queryObject.populateMedia || toPopulateMedia,\n populateGroup: queryObject.populateGroup || true,\n groupFilter: {\n limit: Number(queryObject.groupFilter.limit) + Number(queryObject.groupFilter.offset) || kanbanViewMetaData?.data?.solidView?.layout?.attrs?.recordsInSwimlane,\n offset: 0,\n filters: filters,\n // @ts-ignore\n populate: queryObject.groupFilter.populate || toPopulate,\n // @ts-ignore\n populateMedia: queryObject.groupFilter.populateMedia || toPopulateMedia\n }\n // sort: [`id:desc`],\n };\n\n\n const { recordsInSwimlane, toPopulate, toPopulateMedia } = initialFilterMethod();\n setToPopulate(toPopulate);\n setToPopulateMedia(toPopulateMedia);\n setRecordsInSwimlane(recordsInSwimlane);\n // setFilters(filters);\n setQueryDataLoaded(true);\n\n queryString = qs.stringify(queryData, {\n encodeValuesOnly: true\n });\n\n } else {\n const { recordsInSwimlane, toPopulate, toPopulateMedia } = initialFilterMethod();\n const queryData = {\n offset: 0,\n limit: swimlanesCount,\n // fields: [`${groupByFieldName}`, `count(${groupByFieldName})`],\n groupBy: groupByFieldName,\n populateMedia: toPopulateMedia,\n populateGroup: true,\n groupFilter: {\n limit: kanbanViewMetaData?.data?.solidView?.layout?.attrs?.recordsInSwimlane || 10,\n offset: 0,\n filters: filters,\n populate: toPopulate,\n populateMedia: toPopulateMedia\n }\n // sort: [`id:desc`],\n };\n setRecordsInSwimlane(recordsInSwimlane);\n setToPopulate(toPopulate);\n setToPopulateMedia(toPopulateMedia);\n\n // fields=status&groupBy=status&fields=count(status)&populateGroup=true\n queryString = qs.stringify(queryData, {\n encodeValuesOnly: true\n });\n\n setQueryDataLoaded(true)\n }\n\n // triggerGetSolidEntities(queryString);\n setSelectedRecords([]);\n }\n }\n }, [isDeleteSolidEntitiesSucess, groupByFieldName, solidKanbanViewMetaData]);\n\n // clickable link allowing one to open the detail / form view.\n\n // handle bulk deletion\n const deleteBulk = () => {\n let deleteList: any = [];\n selectedRecords.forEach((element: any) => {\n deleteList.push(element.id);\n });\n deleteManySolidEntities(deleteList);\n setDialogVisible(false);\n };\n\n // handle closing of the delete dialog...\n const onDeleteClose = () => {\n setDialogVisible(false);\n setSelectedRecords([]);\n }\n\n\n // Individual Swimlane Load More\n const handleLoadMore = async (groupByField: string) => {\n const { offset, limit } = kanbanLoadMoreData[groupByField];\n kanbanLoadMoreData[groupByField].offset = offset + limit;\n try {\n const queryData = {\n offset: offset + limit,\n limit: limit,\n populate: toPopulate,\n populateMedia: toPopulateMedia,\n populateGroup: true,\n filters: {\n [groupByFieldName]: {\n $in: [groupByField],\n },\n ...filters\n }\n }\n\n\n const queryString = qs.stringify(queryData, {\n encodeValuesOnly: true\n });\n // router.push(`?${queryString}`);\n const data: any = await triggerGetSolidEntities(queryString);\n const newRecords = data.data.records;\n const mergeData = (\n kanbanViewData: any[],\n newRecords: any[],\n groupByField: string\n ) => {\n // Find the group matching the specified groupByField\n const originalData = structuredClone(kanbanViewData);\n const targetGroup = originalData.find(\n (group: any) => group.groupName === groupByField\n );\n if (targetGroup) {\n const { groupData } = targetGroup;\n\n if (targetGroup.groupData) {\n // Extract existing records\n const existingRecords = targetGroup.groupData.records;\n const updatedRecords = [...existingRecords, ...newRecords];\n targetGroup.groupData.records = updatedRecords\n\n\n // Update the meta data (you can adjust this logic as needed)\n groupData.meta.prevPage = groupData.meta.currentPage\n groupData.meta.currentPage = groupData.meta.currentPage + 1\n groupData.meta.nextPage = groupData.meta.currentPage + 1\n }\n }\n return originalData;\n };\n\n\n const updatedData = mergeData(kanbanViewData, newRecords, groupByField);\n setKanbanViewData(updatedData);\n const loadmoredata = Object.entries(updatedData).reduce((acc: any, [, value]: any) => {\n acc[value.groupName] = {\n offset: (value.groupData.meta.currentPage - 1) * value.groupData.meta.perPage,\n limit: value.groupData.meta.perPage,\n count: value.groupData.meta.totalRecords\n };\n return acc;\n }, {});\n setKanbanLoadMoreData(loadmoredata)\n\n } catch (error) {\n console.error(ERROR_MESSAGES.LOAD_MORE_DATA, error);\n }\n };\n\n\n // Handle drag-and-drop functionality\n // @ts-ignore\n const onDragEnd = async (result: DropResult): void => {\n const { source, destination } = result;\n if (!destination) return;\n\n const sourceGroupName = source.droppableId;\n const destinationGroupName = destination.droppableId;\n\n // Find the source and destination groups\n const sourceGroupIndex = kanbanViewData.findIndex((group: any) => group.groupName === sourceGroupName);\n const destinationGroupIndex = kanbanViewData.findIndex((group: any) => group.groupName === destinationGroupName);\n\n if (sourceGroupIndex === -1 || destinationGroupIndex === -1) return;\n\n // If dragging within the same group\n if (sourceGroupName === destinationGroupName) {\n setKanbanViewData((prevData: typeof kanbanViewData) =>\n prevData.map((group: any) => {\n if (group.groupName === sourceGroupName) {\n const updatedRecords = [...group.groupData.records];\n const [movedItem] = updatedRecords.splice(source.index, 1); // Remove the item\n updatedRecords.splice(destination.index, 0, movedItem); // Insert at the new position\n\n return {\n ...group,\n groupData: {\n ...group.groupData,\n records: updatedRecords,\n },\n };\n }\n return group;\n })\n );\n return;\n }\n\n // Deep clone the source and destination groups\n const sourceGroup = JSON.parse(JSON.stringify(kanbanViewData[sourceGroupIndex]));\n const destinationGroup = JSON.parse(JSON.stringify(kanbanViewData[destinationGroupIndex]));\n\n // Clone the records for immutability\n const sourceRecords = [...sourceGroup.groupData.records];\n const destinationRecords = [...destinationGroup.groupData.records];\n\n // Remove the item from the source\n const [movedItem] = sourceRecords.splice(source.index, 1);\n\n // Create a mutable copy of the moved item\n const updatedItem = { ...movedItem, status: destinationGroupName };\n\n // Add the updated item to the destination\n destinationRecords.splice(destination.index, 0, updatedItem);\n\n // Update the group data\n sourceGroup.groupData.records = sourceRecords;\n destinationGroup.groupData.records = destinationRecords;\n\n // Update the kanbanViewData state\n const oldkanbanViewData = structuredClone(kanbanViewData);\n try {\n const formData = new FormData();\n formData.append(groupByFieldName, destinationGroupName);\n // Update the kanbanViewData state\n setKanbanViewData((prevData: typeof kanbanViewData) =>\n prevData.map((group: any) => {\n if (group.groupName === sourceGroupName) {\n return sourceGroup;\n }\n if (group.groupName === destinationGroupName) {\n return destinationGroup;\n }\n return group;\n })\n );\n const kanbanUpdateResponse = await patchKanbanView({ id: +movedItem.id, data: formData }).unwrap();\n\n if (kanbanUpdateResponse?.statusCode === 200) {\n showToast(toast, \"success\", ERROR_MESSAGES.IS_SUCCESS, ERROR_MESSAGES.KANBAN_UPDATED);\n } else {\n showToast(toast, \"error\", ERROR_MESSAGES.DUPLICATE_KEY, kanbanUpdateResponse?.error);\n // Update the kanbanViewData state\n setKanbanViewData(oldkanbanViewData);\n }\n } catch (error: any) {\n // 6. Handle 500 or network errors\n console.error(ERROR_MESSAGES.API_ERROR, error);\n showToast(toast, \"error\", ERROR_MESSAGES.SOMETHING_WRONG, error?.data?.message || ERROR_MESSAGES.SOMETHING_WRONG);\n setKanbanViewData(oldkanbanViewData);\n }\n };\n\n\n // Handle SwimLane Pagination\n const handleSwimLanePagination = async () => {\n\n if (solidKanbanViewMetaData) {\n\n const swimlanesCount = solidKanbanViewMetaData?.data.solidView?.layout?.attrs?.swimlanesCount || 5;\n const queryData = {\n offset: swimLaneCurrentPageNumber * swimlanesCount,\n limit: swimlanesCount,\n // fields: [`${groupByFieldName}`, `count(${groupByFieldName})`],\n groupBy: groupByFieldName,\n populateMedia: toPopulateMedia,\n populate: toPopulate,\n populateGroup: true,\n groupFilter: {\n limit: recordsInSwimlane,\n offset: 0,\n filters: filters,\n populate: toPopulate,\n populateMedia: toPopulateMedia\n\n }\n // sort: [`id:desc`],\n };\n // fields=status&groupBy=status&fields=count(status)&populateGroup=true\n const queryString = qs.stringify(queryData, {\n encodeValuesOnly: true\n });\n\n const data: any = await triggerGetSolidEntities(queryString);\n if (data && data?.data?.groupRecords.length > 0) {\n const updatedData = [...kanbanViewData, ...data.data.groupRecords];\n setKanbanViewData(updatedData);\n }\n setSwimLaneCurrentPageNumber(swimLaneCurrentPageNumber + 1)\n }\n }\n\n\n // Handle the custom filter and Search Filter\n const handleApplyCustomFilter = async (filterPredicates: any, persistFilter: boolean = false) => {\n\n if (solidKanbanViewMetaData) {\n const queryfilter = {\n $and: [\n ]\n }\n\n if (filterPredicates.custom_filter_predicate) {\n // @ts-ignore\n queryfilter.$and.push(filterPredicates.custom_filter_predicate);\n }\n if (filterPredicates.search_predicate) {\n // @ts-ignore\n queryfilter.$and.push(filterPredicates.search_predicate);\n }\n if (filterPredicates.saved_filter_predicate) {\n // @ts-ignore\n queryfilter.$and.push(filterPredicates.saved_filter_predicate);\n }\n if (filterPredicates.predefined_search_predicate) {\n // @ts-ignore\n queryfilter.$and.push(filterPredicates.predefined_search_predicate);\n }\n\n const customFilter = filterPredicates;\n const updatedFilter = { ...(filters || {}), ...(queryfilter || {}) };\n\n // Then update state\n setFilters(updatedFilter);\n\n\n const swimlanesCount = solidKanbanViewMetaData?.data.solidView?.layout?.attrs?.swimlanesCount || 5;\n // const { toPopulate, toPopulateMedia } = initialFilterMethod();\n\n const queryData = {\n offset: 0,\n limit: swimlanesCount,\n // fields: [`${groupByFieldName}`, `count(${groupByFieldName})`],\n groupBy: groupByFieldName,\n populateMedia: toPopulateMedia,\n populateGroup: true,\n groupFilter: {\n limit: recordsInSwimlane,\n offset: 0,\n filters: updatedFilter,\n populate: toPopulate,\n populateMedia: toPopulateMedia\n }\n }\n const queryString = qs.stringify(queryData, {\n encodeValuesOnly: true\n });\n\n // s_filter and c_filter format that needs to be passed to the router\n // only present if handleCustomFilter is applied\n if (customFilter) {\n const urlData = structuredClone(queryData);\n // @ts-ignore\n delete urlData.filters;\n // urlData.s_filter = customFilter.s_filter || {};\n // urlData.c_filter = customFilter.c_filter || {};\n // @ts-ignore\n urlData.custom_filter_predicate = customFilter.custom_filter_predicate || {};\n // @ts-ignore\n urlData.search_predicate = customFilter.search_predicate || {};\n // @ts-ignore\n setFilterObjectToLocalStorage(urlData);\n }\n\n\n const data: any = await triggerGetSolidEntities(queryString);\n\n // Update the kanban view data with the new data based on filter\n setSwimLaneCurrentPageNumber(1);\n if (data && data?.data?.groupRecords.length > 0) {\n const updatedData = [...data.data.groupRecords];\n setKanbanViewData(updatedData);\n }\n setSelectedRecords([]);\n\n\n }\n\n }\n\n useEffect(() => {\n if (solidKanbanViewMetaData) {\n const createActionUrl = solidKanbanViewMetaData?.data?.solidView?.layout?.attrs?.createAction && solidKanbanViewMetaData?.data?.solidView?.layout?.attrs?.createAction?.type === \"custom\" ? solidKanbanViewMetaData?.data?.solidView?.layout?.attrs?.createAction?.customComponent : \"form/new\";\n const editActionUrl = solidKanbanViewMetaData?.data?.solidView?.layout?.attrs?.editAction && solidKanbanViewMetaData?.data?.solidView?.layout?.attrs?.editAction?.type === \"custom\" ? solidKanbanViewMetaData?.data?.solidView?.layout?.attrs?.editAction?.customComponent : \"form\";\n const viewModes = solidKanbanViewMetaData?.data?.solidView?.layout?.attrs?.allowedViews && solidKanbanViewMetaData?.data?.solidView?.layout?.attrs?.allowedViews.length > 0 && solidKanbanViewMetaData?.data?.solidView?.layout?.attrs?.allowedViews.map((view: any) => { return { label: capitalize(view), value: view } });\n setViewModes(viewModes);\n if (createActionUrl) {\n setCreateButtonUrl(createActionUrl)\n }\n if (editActionUrl) {\n setEditButtonUrl(editActionUrl)\n }\n }\n }, [solidKanbanViewMetaData])\n\n const kanbanViewTitle = solidKanbanViewMetaData?.data?.solidView?.displayName\n\n\n const toggleBothSidebars = () => {\n if (visibleNavbar) {\n dispatch(toggleNavbar()); // close both\n } else {\n dispatch(showNavbar()); // open both\n }\n };\n\n return (\n <div className=\"page-parent-wrapper\">\n <Toast ref={toast} />\n <div className=\"page-header flex-column lg:flex-row\">\n <div className=\"flex justify-content-between w-full \">\n\n <div className=\"flex align-items-center solid-header-buttons-wrapper\">\n {params.embeded !== true &&\n <div className=\"apps-icon block md:hidden cursor-pointer\" onClick={toggleBothSidebars}>\n <i className=\"pi pi-th-large\"></i>\n </div>\n }\n\n <p className=\"m-0 view-title solid-text-wrapper\">{kanbanViewTitle}</p>\n {solidKanbanViewMetaData?.data?.solidView?.layout?.attrs.enableGlobalSearch === true &&\n // <SolidGlobalSearchElement viewData={solidKanbanViewMetaData} handleApplyCustomFilter={handleApplyCustomFilter} ></SolidGlobalSearchElement>\n <div className=\"hidden lg:flex\">\n <SolidGlobalSearchElement viewType=\"kanban\" showSaveFilterPopup={showSaveFilterPopup} setShowSaveFilterPopup={setShowSaveFilterPopup} ref={solidGlobalSearchElementRef} viewData={solidKanbanViewMetaData} handleApplyCustomFilter={handleApplyCustomFilter} ></SolidGlobalSearchElement>\n </div>\n }\n </div>\n\n <div className=\"flex align-items-center solid-header-buttons-wrapper\">\n {solidKanbanViewMetaData?.data?.solidView?.layout?.attrs.enableGlobalSearch === true &&\n <div className=\"flex lg:hidden\">\n <Button\n type=\"button\"\n size=\"small\"\n icon=\"pi pi-search\"\n severity=\"secondary\"\n outlined\n className=\"solid-icon-button\"\n onClick={() => setShowGlobalSearchElement(!showGlobalSearchElement)}>\n </Button>\n </div>\n }\n\n {actionsAllowed.includes(`${permissionExpression(params.modelName, 'create')}`) && solidKanbanViewMetaData?.data?.solidView?.layout?.attrs.create !== false &&\n <SolidCreateButton createButtonUrl={createButtonUrl} createActionQueryParams={createActionQueryParams} responsiveIconOnly={true} />\n }\n\n {actionsAllowed.includes(`${permissionExpression(params.modelName, 'delete')}`) && solidKanbanViewMetaData?.data?.solidView?.layout?.attrs.delete !== false && selectedRecords.length > 0 && <Button\n type=\"button\"\n label=\"Delete\"\n size=\"small\"\n onClick={() => setDialogVisible(true)}\n className=\"small-button \"\n severity=\"danger\"\n />}\n <Button\n type=\"button\"\n size=\"small\"\n icon=\"pi pi-refresh\"\n severity=\"secondary\"\n className=\"solid-icon-button\"\n outlined\n onClick={() => {\n window.location.reload()\n }}\n />\n <SolidKanbanViewConfigure\n solidKanbanViewMetaData={solidKanbanViewMetaData}\n actionsAllowed={actionsAllowed}\n viewModes={viewModes}\n setLayoutDialogVisible={setLayoutDialogVisible}\n setShowSaveFilterPopup={setShowSaveFilterPopup}\n />\n {/* <SolidConfigureLayoutElement></SolidConfigureLayoutElement> */}\n </div>\n </div>\n {/* </div> */}\n {solidKanbanViewMetaData?.data?.solidView?.layout?.attrs.enableGlobalSearch === true && showGlobalSearchElement && (\n <div className=\"flex lg:hidden\">\n <SolidGlobalSearchElement viewType=\"kanban\" showSaveFilterPopup={showSaveFilterPopup} setShowSaveFilterPopup={setShowSaveFilterPopup} ref={solidGlobalSearchElementRef} viewData={solidKanbanViewMetaData} handleApplyCustomFilter={handleApplyCustomFilter} ></SolidGlobalSearchElement>\n </div>\n )}\n </div>\n\n <style>{`.p-datatable .p-datatable-loading-overlay {background-color: rgba(0, 0, 0, 0.0);}`}</style>\n {solidKanbanViewMetaData && kanbanViewData &&\n <KanbanBoard groupByFieldName={groupByFieldName} groupedView={groupedView} kanbanViewData={kanbanViewData} maxSwimLanesCount={maxSwimLanesCount} solidKanbanViewMetaData={solidKanbanViewMetaData?.data} setKanbanViewData={setKanbanViewData} handleLoadMore={handleLoadMore} onDragEnd={onDragEnd} handleSwimLanePagination={handleSwimLanePagination} setLightboxUrls={setLightboxUrls} setOpenLightbox={setOpenLightbox} editButtonUrl={editBaseUrl}></KanbanBoard>\n }\n\n <Dialog\n visible={isDialogVisible}\n header=\"Confirm Delete\"\n modal\n className=\"solid-confirm-dialog\"\n footer={() => (\n <div className=\"flex justify-content-center\">\n <Button label=\"Yes\" icon=\"pi pi-check\" className='small-button' severity=\"danger\" autoFocus onClick={deleteBulk} />\n <Button label=\"No\" icon=\"pi pi-times\" className='small-button' onClick={onDeleteClose} />\n </div>\n )}\n onHide={() => setDialogVisible(false)}\n >\n <p>Are you sure you want to delete the selected records?</p>\n </Dialog>\n {openLightbox &&\n <Lightbox\n open={openLightbox}\n plugins={[Counter, Download]}\n close={() => setOpenLightbox(false)}\n // @ts-ignore\n slides={lightboxUrls}\n />\n }\n <Dialog\n visible={isLayoutDialogVisible}\n header=\"Change Kanban Layout\"\n modal\n onHide={() => setLayoutDialogVisible(false)}\n // contentStyle={{\n // width: 800\n // }}\n style={{ width: '800px' }}\n breakpoints={{\n '1024px': '75vw', '991px': '86vw', '767px': '92vw', '250px': '96vw'\n }}\n\n >\n <KanbanUserViewLayout solidKanbanViewMetaData={solidKanbanViewMetaData} setLayoutDialogVisible={setLayoutDialogVisible} />\n </Dialog>\n </div>\n );\n};\n"]}
@@ -28,7 +28,7 @@ import { setFilterObjectToLocalStorage, getFilterObjectFromLocalStorage } from "
28
28
  import { Toast } from "primereact/toast";
29
29
  import { ERROR_MESSAGES } from "../../../constants/error-messages";
30
30
  import { showNavbar, toggleNavbar } from "../../../redux/features/navbarSlice";
31
- import { normalizeSolidListKanbanActionPath } from "../../../helpers/routePaths";
31
+ import { normalizeSolidListTreeKanbanActionPath } from "../../../helpers/routePaths";
32
32
  import showToast from "../../../helpers/showToast";
33
33
 
34
34
 
@@ -224,7 +224,7 @@ export const SolidKanbanView = (params: SolidKanbanViewParams) => {
224
224
  const [showSaveFilterPopup, setShowSaveFilterPopup] = useState<boolean>(false);
225
225
  const [maxSwimLanesCount, setMaxSwimLanesCount] = useState<number>(0);
226
226
  // @ts-ignore
227
- const editBaseUrl = normalizeSolidListKanbanActionPath(pathname, editButtonUrl || "form");
227
+ const editBaseUrl = normalizeSolidListTreeKanbanActionPath(pathname, editButtonUrl || "form");
228
228
  // Get the kanban view data.
229
229
  // const [triggerGetSolidEntitiesForKanban, { data: solidEntityKanbanViewData, isLoading, error }] = useLazyGetSolidKanbanEntitiesQuery();
230
230
  const [triggerGetSolidEntities, { data: solidEntityKanbanViewData }] = useLazyGetSolidEntitiesQuery();
@@ -102,7 +102,7 @@ import { ERROR_MESSAGES } from "../../../constants/error-messages";
102
102
  import { SolidAiMainWrapper } from "../solid-ai/SolidAiMainWrapper";
103
103
  import { showNavbar, toggleNavbar } from "../../../redux/features/navbarSlice";
104
104
  import { useLazyGetMcpUrlQuery, useLazyGetSolidSettingsQuery } from "../../../redux/api/solidSettingsApi";
105
- import { normalizeSolidListKanbanActionPath } from "../../../helpers/routePaths";
105
+ import { normalizeSolidListTreeKanbanActionPath } from "../../../helpers/routePaths";
106
106
  // import { ERROR_MESSAGES } from "../../../constants/error-messages";
107
107
  var getRandomInt = function (min, max) {
108
108
  return Math.floor(Math.random() * (max - min + 1)) + min;
@@ -206,7 +206,7 @@ export var SolidListView = forwardRef(function (params, ref) {
206
206
  useEffect(function () {
207
207
  trigger(""); // Fetch settings on mount
208
208
  }, []);
209
- var editBaseUrl = useMemo(function () { return normalizeSolidListKanbanActionPath(pathname, editButtonUrl || "form"); }, [editButtonUrl, pathname]);
209
+ var editBaseUrl = useMemo(function () { return normalizeSolidListTreeKanbanActionPath(pathname, editButtonUrl || "form"); }, [editButtonUrl, pathname]);
210
210
  useEffect(function () {
211
211
  var _a, _b;
212
212
  if (((_a = solidSettingsData === null || solidSettingsData === void 0 ? void 0 : solidSettingsData.data) === null || _a === void 0 ? void 0 : _a.mcpEnabled) && ((_b = solidSettingsData === null || solidSettingsData === void 0 ? void 0 : solidSettingsData.data) === null || _b === void 0 ? void 0 : _b.mcpServerUrl)) {