[
https://issues.apache.org/jira/browse/ATLAS-5260?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Prasad P. Pawar updated ATLAS-5260:
-----------------------------------
Description:
Entity detail relied on `relationshipAttributes.meanings`, which is empty when
the detail API is called with `ignoreRelationships=true`. We enrich terms from
the entity *header* API when appropriate, and align label/UDP behavior with the
classic UI.
*Scope*
*React UI (`dashboard/`)*
- After loading detail, call `GET /v2/entity/guid/\{guid}/header` when
`relationshipAttributes.meanings` is missing/empty and the entity is not
`AtlasGlossary*`.
- Map header term assignments to the shape expected by chips/remove-term
(`guid`, `relationshipGuid`, etc.).
-{*}Labels:{*} normalize save payload to `string[]`, allow saving an empty list
to clear all labels, use explicit POST for `/labels`.
-{*}User-defined properties:{*} omit blank keys from payload; on Cancel, reset
form to current server values (not a single empty row only).
-{*}Classic UI (`dashboardv2/`){*}
- When meanings are missing on the main entity response, fetch the same entity
header and merge meanings, then render terms and update the Backbone model.
*Technical notes*
- Detail GET continues to use `ignoreRelationships=true` for performance;
header GET is the lightweight term supplement.
- Optional: mention unrelated build fix if this ticket includes the whole
branch — export `getLatestEntities` in `searchApiMethod.ts` for
`DashboardOverview` (TypeScript compile).
*Acceptance criteria*
- on-glossary entity with assigned terms shows terms in the header after load
(React).
- Same behavior on classic detail page when meanings were empty on main GET.
- Glossary entity types do not show/require the terms strip in line with
existing UX.
- Labels: add, edit, and remove all labels persist after refresh.
- UDP: save ignores rows with empty keys; Cancel restores the last loaded
properties.
was:
Entity detail relied on `relationshipAttributes.meanings`, which is empty when
the detail API is called with `ignoreRelationships=true`. We enrich terms from
the entity *header* API when appropriate, and align label/UDP behavior with the
classic UI.
*Scope*
*React UI (`dashboard`)*
- After loading detail, call `GET /v2/entity/guid/\{guid}/header` when
`relationshipAttributes.meanings` is missing/empty and the entity is not
`AtlasGlossary*`.
- Map header term assignments to the shape expected by chips/remove-term
(`guid`, `relationshipGuid`, etc.).
-{*}Labels:{*} normalize save payload to `string[]`, allow saving an empty list
to clear all labels, use explicit POST for `/labels`.
-{*}User-defined properties:{*} omit blank keys from payload; on Cancel, reset
form to current server values (not a single empty row only).
-{*}Classic UI (`dashboardv2`){*}
- When meanings are missing on the main entity response, fetch the same entity
header and merge meanings, then render terms and update the Backbone model.
*Technical notes*
- Detail GET continues to use `ignoreRelationships=true` for performance;
header GET is the lightweight term supplement.
- Optional: mention unrelated build fix if this ticket includes the whole
branch — export `getLatestEntities` in `searchApiMethod.ts` for
`DashboardOverview` (TypeScript compile).
*Acceptance criteria*
- on-glossary entity with assigned terms shows terms in the header after load
(React).
- Same behavior on classic detail page when meanings were empty on main GET.
- Glossary entity types do not show/require the terms strip in line with
existing UX.
- Labels: add, edit, and remove all labels persist after refresh.
- UDP: save ignores rows with empty keys; Cancel restores the last loaded
properties.
> ATLAS UI: [UI] Detail page – terms from entity header, labels/UDP save fixes
> (dashboard + dashboardv2)
> ------------------------------------------------------------------------------------------------------
>
> Key: ATLAS-5260
> URL: https://issues.apache.org/jira/browse/ATLAS-5260
> Project: Atlas
> Issue Type: Bug
> Components: atlas-webui
> Affects Versions: 3.0.0
> Reporter: Prasad P. Pawar
> Assignee: Prasad P. Pawar
> Priority: Major
> Labels: Atlas-UI
>
> Entity detail relied on `relationshipAttributes.meanings`, which is empty
> when the detail API is called with `ignoreRelationships=true`. We enrich
> terms from the entity *header* API when appropriate, and align label/UDP
> behavior with the classic UI.
> *Scope*
> *React UI (`dashboard/`)*
> - After loading detail, call `GET /v2/entity/guid/\{guid}/header` when
> `relationshipAttributes.meanings` is missing/empty and the entity is not
> `AtlasGlossary*`.
> - Map header term assignments to the shape expected by chips/remove-term
> (`guid`, `relationshipGuid`, etc.).
> -{*}Labels:{*} normalize save payload to `string[]`, allow saving an empty
> list to clear all labels, use explicit POST for `/labels`.
> -{*}User-defined properties:{*} omit blank keys from payload; on Cancel,
> reset form to current server values (not a single empty row only).
>
> -{*}Classic UI (`dashboardv2/`){*}
> - When meanings are missing on the main entity response, fetch the same
> entity header and merge meanings, then render terms and update the Backbone
> model.
>
> *Technical notes*
> - Detail GET continues to use `ignoreRelationships=true` for performance;
> header GET is the lightweight term supplement.
> - Optional: mention unrelated build fix if this ticket includes the whole
> branch — export `getLatestEntities` in `searchApiMethod.ts` for
> `DashboardOverview` (TypeScript compile).
>
> *Acceptance criteria*
> - on-glossary entity with assigned terms shows terms in the header after
> load (React).
> - Same behavior on classic detail page when meanings were empty on main GET.
> - Glossary entity types do not show/require the terms strip in line with
> existing UX.
> - Labels: add, edit, and remove all labels persist after refresh.
> - UDP: save ignores rows with empty keys; Cancel restores the last loaded
> properties.
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)