Brijesh619 opened a new pull request, #656:
URL: https://github.com/apache/atlas/pull/656
Here is the technical list of exact code changes made in
TypeSystemTreeView.tsx for each issue, which you can use for your Jira
descriptions:
**1. Fix filter dropdown options disappearing upon selection**
Changes: Modified the renderFilterSearch function. Instead of deriving the
dropdown options from lineageHelperRef?.current?.getNodes() (which shrinks when
the graph is filtered), the options are now built by iterating directly over
the raw entityDefs array.
**2. Add visual highlight for selected values in search and filter
dropdowns**
Changes:
Added isOptionEqualToValue={(option: any, value: any) => option?.value ===
value?.value} to both the Filter and Search Material UI <Autocomplete>
components.
Fixed the value prop in the Search <Autocomplete> to look up the correct
object using renderTypeSearch().find((opt: any) => opt?.label ===
searchTypeValue) || null.
**3. Implement optional chaining to prevent UI crashes on undefined values**
Changes: Added optional chaining (?.) comprehensively throughout the file.
This includes data mapping functions inside renderFilterSearch and
renderTypeSearch, object property references, and all invocations of library
methods (e.g., lineageMethods?.refresh?.(), lineageMethods?.searchNode?.()).
**4. Fix search dropdown double clear button and ensure lineage graph
refreshes on clear**
Changes:
Removed disableClearable from the Search <Autocomplete> to enable the
Material UI clear button.
Removed type: "search" from the nested <TextField>'s InputProps to prevent
the browser from rendering a duplicate native clear button.
Updated handleSearchChange to destructure newValue gracefully (accounting
for null when cleared).
Added an else condition in handleSearchChange to call filterData(typeValue)
when the input is cleared, ensuring the graph refreshes properly while
preserving any active filters.
**5. Fix toolbar overlapping/disappearing issue in full-screen mode**
Changes: Moved the className={${isFullscreen ? "fullscreen" : ""}} property
out of the individual toolbar <Stack> and graph <Stack> components, placing it
exclusively on their shared root <Stack> parent. This ensures the entire
component scales together instead of overlapping.
**6. Fix lineage graph container layout to prevent off-screen vertical
centering and scrolling issues**
Changes: Removed the hardcoded minHeight="650px" from the lineage <Stack>
wrapper and adjusted the flex layout so that the container dynamically
calculates its height based on the remaining screen space.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]