Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
32634d9
ATLAS-5324: Enhance Collapsed Sidebar with Module Icons, Interactive …
Brijesh619 Jun 19, 2026
0003f34
ATLAS-5324: Enhance Collapsed Sidebar with Module Icons, Interactive …
Brijesh619 Jul 8, 2026
6c1c328
ATLAS-5324: Enhance Collapsed Sidebar with Module Icons, Interactive …
Brijesh619 Jul 15, 2026
63d84be
ATLAS-5324: Enhance Collapsed Sidebar with Module Icons, Interactive …
Brijesh619 Jul 27, 2026
78b11f2
ATLAS-5324: Enhance Collapsed Sidebar with Module Icons, Interactive …
Brijesh619 Jul 31, 2026
54a4ae6
ATLAS-5324: Enhance Collapsed Sidebar with Module Icons, Interactive …
Brijesh619 Aug 5, 2026
29fd42b
ATLAS-5324: Enhance Collapsed Sidebar with Module Icons, Interactive …
Brijesh619 Aug 11, 2026
8e6ff09
ATLAS-5324: Enhance Collapsed Sidebar with Module Icons, Interactive …
Brijesh619 Aug 13, 2026
156a79e
ATLAS-5324: Enhance Collapsed Sidebar with Module Icons, Interactive …
Brijesh619 Aug 14, 2026
9a2531c
ATLAS-5324: Enhance Collapsed Sidebar with Module Icons, Interactive …
Brijesh619 Aug 17, 2026
1d56746
ATLAS-5324: Enhance Collapsed Sidebar with Module Icons, Interactive …
Brijesh619 Aug 20, 2026
a66002e
ATLAS-5324: Enhance Collapsed Sidebar with Module Icons, Interactive …
Brijesh619 Aug 21, 2026
662cafa
ATLAS-5324: Enhance Collapsed Sidebar with Module Icons, Interactive …
Brijesh619 Aug 24, 2026
d8a888b
ATLAS-5324: Enhance Collapsed Sidebar with Module Icons, Interactive …
Brijesh619 Aug 24, 2026
b42657d
ATLAS-5324: Enhance Collapsed Sidebar with Module Icons, Interactive …
Brijesh619 Aug 26, 2026
13ff5d8
ATLAS-5324: Enhance Collapsed Sidebar with Module Icons, Interactive …
Brijesh619 Aug 26, 2026
8c698d4
ATLAS-5324: Enhance Collapsed Sidebar with Module Icons, Interactive …
Brijesh619 Aug 27, 2026
f05c4f8
ATLAS-5324: Enhance Collapsed Sidebar with Module Icons, Interactive …
Brijesh619 Sep 3, 2026
a3daeb4
ATLAS-5324: Enhance Collapsed Sidebar with Module Icons, Interactive …
Brijesh619 Sep 4, 2026
2ffa08a
ATLAS-5324: Enhance Collapsed Sidebar with Module Icons, Interactive …
Brijesh619 Sep 9, 2026
c7e90f8
ATLAS-5324: Enhance Collapsed Sidebar with Module Icons, Interactive …
Brijesh619 Sep 10, 2026
66fe8f3
ATLAS-5324: Enhance Collapsed Sidebar with Module Icons, Interactive …
Brijesh619 Sep 10, 2026
7082f7c
ATLAS-5324: Enhance Collapsed Sidebar with Module Icons, Interactive …
Brijesh619 Sep 11, 2026
a23e5d1
ATLAS-5324: Enhance Collapsed Sidebar with Module Icons, Interactive …
Brijesh619 Sep 16, 2026
c93a30f
ATLAS-5324: Enhance Collapsed Sidebar with Module Icons, Interactive …
Brijesh619 Sep 17, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 19 additions & 0 deletions dashboard/public/img/sidebar-icons/icon-business-metadata.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
19 changes: 19 additions & 0 deletions dashboard/public/img/sidebar-icons/icon-classifications.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
19 changes: 19 additions & 0 deletions dashboard/public/img/sidebar-icons/icon-custom-filters.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
19 changes: 19 additions & 0 deletions dashboard/public/img/sidebar-icons/icon-entities.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
19 changes: 19 additions & 0 deletions dashboard/public/img/sidebar-icons/icon-glossary.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
19 changes: 19 additions & 0 deletions dashboard/public/img/sidebar-icons/icon-relationships.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
19 changes: 19 additions & 0 deletions dashboard/public/img/sidebar-icons/icon-search.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
95 changes: 35 additions & 60 deletions dashboard/src/components/EntityDisplayImage.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -15,89 +15,64 @@
* limitations under the License.
*/

import { useEffect, useState } from "react";
import { Avatar, Skeleton } from "@mui/material";
import { useState, useEffect } from "react";
import { Avatar } from "@mui/material";
import { getEntityIconPath } from "../utils/Utils";
import axios from "axios";

interface DisplayImageProps {
entity: Record<string, unknown>;
width?: string | number;
height?: string | number;
avatarDisplay?: boolean;
isProcess?: boolean;
}

const DisplayImage = ({
entity,
width,
height,
avatarDisplay,
isProcess
}: any) => {
const [imageUrl, setImageUrl] = useState<any>(null);
const [checkEntityImage, setCheckEntityImage] = useState<any>({
[entity.guid]: false
});
isProcess,
}: DisplayImageProps) => {
const entityData = { ...entity, isProcess };

useEffect(() => {
const fetchImagePath = async () => {
let entityData = { ...entity, ...{ isProcess: isProcess } };
let imagePath: any = getEntityIconPath({ entityData: entityData });
try {
const response = await axios.get(imagePath, {
responseType: "blob"
});
const contentType: any = response.headers["content-type"];
const primaryUrl = getEntityIconPath({ entityData }) || "";
const fallbackUrl =
getEntityIconPath({ entityData, errorUrl: primaryUrl }) || "";

if (contentType && contentType.startsWith("image/")) {
let cache = { [entityData.guid]: imagePath };
setCheckEntityImage(cache);
setImageUrl(getEntityIconPath({ entityData: entityData }));
} else {
setImageUrl(
getEntityIconPath({ entityData: entityData, errorUrl: imagePath })
);
}
} catch (_error) {
setImageUrl(
getEntityIconPath({ entityData: entityData, errorUrl: imagePath })
);
}
};
const [imgSrc, setImgSrc] = useState(primaryUrl);

useEffect(() => {
setImgSrc(primaryUrl);
}, [primaryUrl]);

fetchImagePath();
}, []);
const handleError = () => {
if (imgSrc !== fallbackUrl) {
setImgSrc(fallbackUrl);
}
};

return imageUrl != undefined ? (
return (
<div className="search-result-table-name-col" data-cy="entityIcon">
{checkEntityImage[entity.guid] !== false ? (
avatarDisplay == undefined ? (
<img
className="search-result-table-img"
id={entity.guid}
data-cy={entity.guid}
src={checkEntityImage[entity.guid]}
alt="Entity Icon"
/>
) : (
<Avatar
alt="entityImg"
src={checkEntityImage[entity.guid]}
sx={{ width: width, height: height }}
variant="square"
></Avatar>
)
) : avatarDisplay == undefined ? (
{avatarDisplay === undefined ? (
Comment thread
Brijesh619 marked this conversation as resolved.
<img
className="search-result-table-img"
id={entity.guid}
data-cy={entity.guid}
src={imageUrl}
id={entity.guid ? String(entity.guid) : undefined}
Comment thread
Brijesh619 marked this conversation as resolved.
data-cy={entity.guid ? String(entity.guid) : undefined}
src={imgSrc}
alt="Entity Icon"
onError={handleError}
/>
) : (
<Avatar
alt="entityImg"
src={imageUrl}
src={imgSrc}
sx={{ width: width, height: height }}
variant="square"
imgProps={{ onError: handleError }}
></Avatar>
)}
</div>
) : (
<div>{<Skeleton variant="circular" width={22} height={20} />}</div>
);
};

Expand Down
27 changes: 5 additions & 22 deletions dashboard/src/components/GlobalSearch/QuickSearch.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -400,6 +400,7 @@ const QuickSearch = () => {
onChange={handleScopeChange}
aria-label="Search scope"
displayEmpty
className="quick-search-select"
renderValue={(v) => SCOPE_LABELS[v as QuickSearchScope]}
>
<MenuItem value="default">Select All</MenuItem>
Expand Down Expand Up @@ -575,7 +576,7 @@ const QuickSearch = () => {
}
>
{types === "Entities" && !isEmpty(entityObj) && (
<DisplayImage entity={entityObj} />
<DisplayImage entity={entityObj || {}} />
)}
{types === "Entities" && !isEmpty(entityObj)
? parts.map((part, index) => (
Expand Down Expand Up @@ -645,13 +646,8 @@ const QuickSearch = () => {
}}
className="text-black-default"
InputProps={{
style: {
padding: "1px 10px",
borderRadius: "4px",
color: "#1a1a1a",
backgroundColor: "white"
},
...params.InputProps,
className: `quick-search-input ${params.InputProps.className || ""}`,
type: "search",
endAdornment: (
<InputAdornment position="end">
Expand Down Expand Up @@ -682,12 +678,7 @@ const QuickSearch = () => {
<CustomButton
variant="contained"
size="small"
sx={{
backgroundColor: "#4a90e2 !important",
color: "#fff !important",
textTransform: "none",
fontWeight: 600
}}
className="quick-search-btn"
onClick={handleSubmitSearch}
aria-label="Run search"
>
Expand All @@ -697,15 +688,7 @@ const QuickSearch = () => {
<CustomButton
variant="outlined"
size="small"
sx={{
backgroundColor: "white !important",
color: "#4a90e2 !important",
borderColor: "#dddddd !important",
"&:hover": {
backgroundColor: "rgba(74, 144, 226, 0.08) !important",
color: "#4a90e2 !important"
}
}}
className="quick-search-advanced-btn"
onClick={() => {
setOpenAdvanceSearch(true);
}}
Expand Down
Loading
Loading