From 7d4ad6ba72c77275f2bb370ebf0a2b4a0aa6dfd3 Mon Sep 17 00:00:00 2001 From: Shailesh Parmar Date: Wed, 28 Jun 2023 19:01:36 +0530 Subject: [PATCH] ui: updated glossary layout to sync with new layout (#12200) * ui: updated glossary layout to sync with new layout * fixed failing unit test * updated row-id for test suite * fixed 404 page * addressing comment --- .../TestSuites/TestSuites.component.tsx | 3 +- .../GlossaryTermTab.component.tsx | 3 +- .../GlossaryTermTab.interface.ts | 1 + .../ImportGlossary/ImportGlossary.tsx | 2 +- .../GlossaryDetails.component.tsx | 13 +- .../GlossaryDetailsRightPanel.component.tsx | 185 +++++++++--------- .../GlossaryTermsV1.component.tsx | 5 +- .../tabs/AssetsTabs.component.tsx | 2 +- .../tabs/GlossaryOverviewTab.component.tsx | 127 ++++++------ .../MyDataWidget/MyDataWidget.component.tsx | 74 +++---- .../MyData/MyDataWidget/MyDataWidget.test.tsx | 2 +- .../component/DataQualityTab.tsx | 2 +- .../src/components/TableQueries/QueryCard.tsx | 2 +- .../ui/src/locale/languages/en-us.json | 2 +- .../ui/src/locale/languages/es-es.json | 2 +- .../ui/src/locale/languages/fr-fr.json | 2 +- .../ui/src/locale/languages/ja-jp.json | 2 +- .../ui/src/locale/languages/pt-br.json | 2 +- .../ui/src/locale/languages/zh-cn.json | 2 +- .../GlossaryPage/GlossaryPage.component.tsx | 29 ++- .../src/main/resources/ui/src/styles/app.less | 5 - .../ui/src/styles/components/glossary.less | 15 ++ .../resources/ui/src/styles/variables.less | 3 + .../main/resources/ui/src/styles/x-master.css | 2 +- 24 files changed, 251 insertions(+), 236 deletions(-) diff --git a/openmetadata-ui/src/main/resources/ui/src/components/DataQuality/TestSuites/TestSuites.component.tsx b/openmetadata-ui/src/main/resources/ui/src/components/DataQuality/TestSuites/TestSuites.component.tsx index 93befd3f30e..923544a260d 100644 --- a/openmetadata-ui/src/main/resources/ui/src/components/DataQuality/TestSuites/TestSuites.component.tsx +++ b/openmetadata-ui/src/main/resources/ui/src/components/DataQuality/TestSuites/TestSuites.component.tsx @@ -82,7 +82,8 @@ export const TestSuites = () => { activeTab: TableProfilerTab.DATA_QUALITY, }), }}> - {getEntityName(record.executableEntityReference)} + {record.executableEntityReference?.fullyQualifiedName ?? + record.executableEntityReference?.name} ) : ( { const { t } = useTranslation(); const [isLoading, setIsLoading] = useState(true); @@ -264,7 +265,7 @@ const GlossaryTermTab = ({ } return ( - +
- - - {getUserNames(selectedData)} - - - {!selectedData.owner && - (permissions.EditOwner || permissions.EditAll) && ( + + +
+ + {t('label.owner')} + + {(permissions.EditOwner || permissions.EditAll) && + selectedData.owner && ( - } - label={t('label.add')} - tooltip="" +
-
- +
- {hasEditReviewerAccess && noReviewersSelected && ( + + {getUserNames(selectedData)} + + + {!selectedData.owner && (permissions.EditOwner || permissions.EditAll) && ( + + } + label={t('label.add')} + tooltip="" + /> + + )} + + +
0 + ? 'm-b-xss' + : '' + }`}> + + {t('label.reviewer-plural')} + + {hasEditReviewerAccess && + selectedData.reviewers && + selectedData.reviewers.length > 0 && ( - } - label={t('label.add')} - tooltip="" +
- - -
- {isGlossary && ( - +
+ + + {hasEditReviewerAccess && noReviewersSelected && ( + + } + label={t('label.add')} + tooltip="" /> - )} -
- - - + + )} +
+ + +
+ {isGlossary && ( + + )} +
+ +
); }; diff --git a/openmetadata-ui/src/main/resources/ui/src/components/GlossaryTerms/GlossaryTermsV1.component.tsx b/openmetadata-ui/src/main/resources/ui/src/components/GlossaryTerms/GlossaryTermsV1.component.tsx index 9db0edfd1c6..e8789fac40e 100644 --- a/openmetadata-ui/src/main/resources/ui/src/components/GlossaryTerms/GlossaryTermsV1.component.tsx +++ b/openmetadata-ui/src/main/resources/ui/src/components/GlossaryTerms/GlossaryTermsV1.component.tsx @@ -117,6 +117,7 @@ const GlossaryTermsV1 = ({ children: ( - + diff --git a/openmetadata-ui/src/main/resources/ui/src/components/GlossaryTerms/tabs/AssetsTabs.component.tsx b/openmetadata-ui/src/main/resources/ui/src/components/GlossaryTerms/tabs/AssetsTabs.component.tsx index e34b8c4cef1..16386483029 100644 --- a/openmetadata-ui/src/main/resources/ui/src/components/GlossaryTerms/tabs/AssetsTabs.component.tsx +++ b/openmetadata-ui/src/main/resources/ui/src/components/GlossaryTerms/tabs/AssetsTabs.component.tsx @@ -219,7 +219,7 @@ const AssetsTabs = forwardRef( } return ( -
+
{AssetsFilterOptions.map((option) => { const buttonStyle = activeFilter === option.value diff --git a/openmetadata-ui/src/main/resources/ui/src/components/GlossaryTerms/tabs/GlossaryOverviewTab.component.tsx b/openmetadata-ui/src/main/resources/ui/src/components/GlossaryTerms/tabs/GlossaryOverviewTab.component.tsx index ad417efc04a..646ba8b26c8 100644 --- a/openmetadata-ui/src/main/resources/ui/src/components/GlossaryTerms/tabs/GlossaryOverviewTab.component.tsx +++ b/openmetadata-ui/src/main/resources/ui/src/components/GlossaryTerms/tabs/GlossaryOverviewTab.component.tsx @@ -10,7 +10,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -import { Card, Col, Row, Space } from 'antd'; +import { Col, Row, Space } from 'antd'; import DescriptionV1 from 'components/common/description/DescriptionV1'; import GlossaryDetailsRightPanel from 'components/GlossaryDetailsRightPanel/GlossaryDetailsRightPanel.component'; import { OperationPermission } from 'components/PermissionProvider/PermissionProvider.interface'; @@ -99,72 +99,71 @@ const GlossaryOverviewTab = ({ ); return ( - - - - - - setIsDescriptionEditable(false)} - onDescriptionEdit={() => setIsDescriptionEditable(true)} - onDescriptionUpdate={onDescriptionUpdate} - /> - - - - {!isGlossary && ( - <> - - - - - - - - - - - )} - - - - + + + + setIsDescriptionEditable(false)} + onDescriptionEdit={() => setIsDescriptionEditable(true)} + onDescriptionUpdate={onDescriptionUpdate} + /> + + + + {!isGlossary && ( + <> + + - - - - - - + + + + + + + + + )} + + + + + + + + + - + { loading={Boolean(isLoading)}> <>
- {data.length - ? data.map((item, index) => { - return ( -
-
- -
- } - type="text"> - - {getEntityName(item)} - - - -
+ {data.length ? ( + data.map((item, index) => { + return ( +
+
+ +
+ } + type="text"> + + {getEntityName(item)} + + +
- ); - }) - : t('message.no-owned-data')} +
+ ); + }) + ) : ( + } + /> + )}
diff --git a/openmetadata-ui/src/main/resources/ui/src/components/MyData/MyDataWidget/MyDataWidget.test.tsx b/openmetadata-ui/src/main/resources/ui/src/components/MyData/MyDataWidget/MyDataWidget.test.tsx index 76c257a1e93..29d2ca35feb 100644 --- a/openmetadata-ui/src/main/resources/ui/src/components/MyData/MyDataWidget/MyDataWidget.test.tsx +++ b/openmetadata-ui/src/main/resources/ui/src/components/MyData/MyDataWidget/MyDataWidget.test.tsx @@ -53,7 +53,7 @@ jest.mock( describe('MyDataWidget component', () => { it('should fetch data', () => { act(() => { - render(); + render(, { wrapper: MemoryRouter }); }); expect(getUserById).toHaveBeenCalledWith('123', 'owns'); diff --git a/openmetadata-ui/src/main/resources/ui/src/components/ProfilerDashboard/component/DataQualityTab.tsx b/openmetadata-ui/src/main/resources/ui/src/components/ProfilerDashboard/component/DataQualityTab.tsx index f773364f528..ad0666ef0b6 100644 --- a/openmetadata-ui/src/main/resources/ui/src/components/ProfilerDashboard/component/DataQualityTab.tsx +++ b/openmetadata-ui/src/main/resources/ui/src/components/ProfilerDashboard/component/DataQualityTab.tsx @@ -420,7 +420,7 @@ const DataQualityTab: React.FC = ({ emptyText: , }} pagination={false} - rowKey="name" + rowKey="id" size="small" /> diff --git a/openmetadata-ui/src/main/resources/ui/src/components/TableQueries/QueryCard.tsx b/openmetadata-ui/src/main/resources/ui/src/components/TableQueries/QueryCard.tsx index ee57628fb72..f6013f52cfb 100644 --- a/openmetadata-ui/src/main/resources/ui/src/components/TableQueries/QueryCard.tsx +++ b/openmetadata-ui/src/main/resources/ui/src/components/TableQueries/QueryCard.tsx @@ -215,7 +215,7 @@ const QueryCard: FC = ({ onChange={handleQueryChange} />
- + diff --git a/openmetadata-ui/src/main/resources/ui/src/locale/languages/en-us.json b/openmetadata-ui/src/main/resources/ui/src/locale/languages/en-us.json index a0e09bbd21f..6bb16bd2b57 100644 --- a/openmetadata-ui/src/main/resources/ui/src/locale/languages/en-us.json +++ b/openmetadata-ui/src/main/resources/ui/src/locale/languages/en-us.json @@ -1258,7 +1258,7 @@ "no-mentions": "There are no instances where you or your team have been referenced in any activities", "no-notification-found": "No notifications found", "no-open-task": "No Open Tasks", - "no-owned-data": "It appears that you or your team do not have any Data Assets under your ownership. To rectify this, kindly click on the \"Explore\" on your menu to discover.", + "no-owned-data": "It appears that you or your team are not currently data asset owners. To start owning data assets, click on the <0>Explore option to discover and claim assets.", "no-permission-for-action": "You do not have the necessary permissions to perform this action.", "no-permission-to-view": "You do not have the necessary permissions to view this data.", "no-profiler-enabled-summary-message": "Profiler is not enabled for this table.", diff --git a/openmetadata-ui/src/main/resources/ui/src/locale/languages/es-es.json b/openmetadata-ui/src/main/resources/ui/src/locale/languages/es-es.json index 9fa021c77ba..aee4926dc95 100644 --- a/openmetadata-ui/src/main/resources/ui/src/locale/languages/es-es.json +++ b/openmetadata-ui/src/main/resources/ui/src/locale/languages/es-es.json @@ -1258,7 +1258,7 @@ "no-mentions": "There are no instances where you or your team have been referenced in any activities", "no-notification-found": "No se encontraron notificaciones", "no-open-task": "No hay tareas abiertas", - "no-owned-data": "It appears that you or your team do not have any Data Assets under your ownership. To rectify this, kindly click on the \"Explore\" on your menu to discover.", + "no-owned-data": "It appears that you or your team are not currently data asset owners. To start owning data assets, click on the <0>Explore option to discover and claim assets.", "no-permission-for-action": "No tiene los permisos necesarios para realizar esta acción.", "no-permission-to-view": "No tiene los permisos necesarios para ver estos datos.", "no-profiler-enabled-summary-message": "El profiler no está habilitado para esta tabla.", diff --git a/openmetadata-ui/src/main/resources/ui/src/locale/languages/fr-fr.json b/openmetadata-ui/src/main/resources/ui/src/locale/languages/fr-fr.json index a6ac70c09a3..4624561d5a5 100644 --- a/openmetadata-ui/src/main/resources/ui/src/locale/languages/fr-fr.json +++ b/openmetadata-ui/src/main/resources/ui/src/locale/languages/fr-fr.json @@ -1258,7 +1258,7 @@ "no-mentions": "There are no instances where you or your team have been referenced in any activities", "no-notification-found": "Aucune notifiaction trouvé", "no-open-task": "Aucune tâche ouverte", - "no-owned-data": "It appears that you or your team do not have any Data Assets under your ownership. To rectify this, kindly click on the \"Explore\" on your menu to discover.", + "no-owned-data": "It appears that you or your team are not currently data asset owners. To start owning data assets, click on the <0>Explore option to discover and claim assets.", "no-permission-for-action": "Vous n'avez pas les permissions requises pour effectuer cette action.", "no-permission-to-view": "Vous n'avez pas les permissions requises pour voir ces données.", "no-profiler-enabled-summary-message": "Profilage n'est pas activé pour cette table.", diff --git a/openmetadata-ui/src/main/resources/ui/src/locale/languages/ja-jp.json b/openmetadata-ui/src/main/resources/ui/src/locale/languages/ja-jp.json index f23ea7fcb30..9e893290399 100644 --- a/openmetadata-ui/src/main/resources/ui/src/locale/languages/ja-jp.json +++ b/openmetadata-ui/src/main/resources/ui/src/locale/languages/ja-jp.json @@ -1258,7 +1258,7 @@ "no-mentions": "There are no instances where you or your team have been referenced in any activities", "no-notification-found": "No notifications found", "no-open-task": "開いているタスクはありません", - "no-owned-data": "It appears that you or your team do not have any Data Assets under your ownership. To rectify this, kindly click on the \"Explore\" on your menu to discover.", + "no-owned-data": "It appears that you or your team are not currently data asset owners. To start owning data assets, click on the <0>Explore option to discover and claim assets.", "no-permission-for-action": "あなたはこのアクションを実行する権限を持っていません。", "no-permission-to-view": "あなたはこのデータを閲覧する権限を持っていません。", "no-profiler-enabled-summary-message": "Profiler is not enabled for this table.", diff --git a/openmetadata-ui/src/main/resources/ui/src/locale/languages/pt-br.json b/openmetadata-ui/src/main/resources/ui/src/locale/languages/pt-br.json index f590cae1b38..bb338916cff 100644 --- a/openmetadata-ui/src/main/resources/ui/src/locale/languages/pt-br.json +++ b/openmetadata-ui/src/main/resources/ui/src/locale/languages/pt-br.json @@ -1258,7 +1258,7 @@ "no-mentions": "There are no instances where you or your team have been referenced in any activities", "no-notification-found": "Nenhuma notificação encontrada", "no-open-task": "Nenhuma tarefa aberta", - "no-owned-data": "It appears that you or your team do not have any Data Assets under your ownership. To rectify this, kindly click on the \"Explore\" on your menu to discover.", + "no-owned-data": "It appears that you or your team are not currently data asset owners. To start owning data assets, click on the <0>Explore option to discover and claim assets.", "no-permission-for-action": "Você não tem as permissões necessárias para executar esta ação.", "no-permission-to-view": "Você não tem as permissões necessárias para visualizar estes dados.", "no-profiler-enabled-summary-message": "Profiler não está habilitado para esta tabela.", diff --git a/openmetadata-ui/src/main/resources/ui/src/locale/languages/zh-cn.json b/openmetadata-ui/src/main/resources/ui/src/locale/languages/zh-cn.json index 5ccb3b656c2..37c5dd12df0 100644 --- a/openmetadata-ui/src/main/resources/ui/src/locale/languages/zh-cn.json +++ b/openmetadata-ui/src/main/resources/ui/src/locale/languages/zh-cn.json @@ -1258,7 +1258,7 @@ "no-mentions": "There are no instances where you or your team have been referenced in any activities", "no-notification-found": "未找到通知", "no-open-task": "无未完成任务", - "no-owned-data": "It appears that you or your team do not have any Data Assets under your ownership. To rectify this, kindly click on the \"Explore\" on your menu to discover.", + "no-owned-data": "It appears that you or your team are not currently data asset owners. To start owning data assets, click on the <0>Explore option to discover and claim assets.", "no-permission-for-action": "您没有执行此操作所需的必要权限", "no-permission-to-view": "您没有查看此数据所需的必要权限", "no-profiler-enabled-summary-message": "该数据表未启用数据分析工具", diff --git a/openmetadata-ui/src/main/resources/ui/src/pages/Glossary/GlossaryPage/GlossaryPage.component.tsx b/openmetadata-ui/src/main/resources/ui/src/pages/Glossary/GlossaryPage/GlossaryPage.component.tsx index 2b6639e8301..9c075f8c935 100644 --- a/openmetadata-ui/src/main/resources/ui/src/pages/Glossary/GlossaryPage/GlossaryPage.component.tsx +++ b/openmetadata-ui/src/main/resources/ui/src/pages/Glossary/GlossaryPage/GlossaryPage.component.tsx @@ -11,7 +11,6 @@ * limitations under the License. */ -import { Col, Row } from 'antd'; import { AxiosError } from 'axios'; import ErrorPlaceHolder from 'components/common/error-with-placeholder/ErrorPlaceHolder'; import PageLayoutV1 from 'components/containers/PageLayoutV1'; @@ -281,22 +280,18 @@ const GlossaryPage = () => { {isRightPanelLoading ? ( ) : ( - - - - - + )} ); diff --git a/openmetadata-ui/src/main/resources/ui/src/styles/app.less b/openmetadata-ui/src/main/resources/ui/src/styles/app.less index 737311dfcf1..90f8a409aa6 100644 --- a/openmetadata-ui/src/main/resources/ui/src/styles/app.less +++ b/openmetadata-ui/src/main/resources/ui/src/styles/app.less @@ -119,11 +119,6 @@ a[href].link-text-grey, .border-t-0 { border-top-width: 0px; } -.border-t-1 { - border-top-width: 1px; - border-style: solid; - border-color: @border-color; -} .border-main { border-color: @border-color; } diff --git a/openmetadata-ui/src/main/resources/ui/src/styles/components/glossary.less b/openmetadata-ui/src/main/resources/ui/src/styles/components/glossary.less index 7565cd6c5de..f668f07ec15 100644 --- a/openmetadata-ui/src/main/resources/ui/src/styles/components/glossary.less +++ b/openmetadata-ui/src/main/resources/ui/src/styles/components/glossary.less @@ -86,6 +86,12 @@ } .glossary-tabs { + .glossary-overview-tab, + .glossary-term-table-container, + .assets-tab-container { + height: @glossary-term-page-height; + overflow-y: scroll; + } .description-heading { font-size: 16px; font-weight: 500; @@ -150,5 +156,14 @@ border-radius: 0; padding-left: 0; border-top: 0; + + .summary-panel-container { + height: @page-height; + } } } + +.glossary-content-container { + height: @glossary-page-height; + overflow-y: scroll; +} diff --git a/openmetadata-ui/src/main/resources/ui/src/styles/variables.less b/openmetadata-ui/src/main/resources/ui/src/styles/variables.less index 365909ab845..5aa8b67a57f 100644 --- a/openmetadata-ui/src/main/resources/ui/src/styles/variables.less +++ b/openmetadata-ui/src/main/resources/ui/src/styles/variables.less @@ -78,8 +78,11 @@ @btn-shadow: none; // Sizing +@page-height: calc(100vh - 64px); @left-side-panel-width: 230px; @entity-details-tab-height: calc(100vh - 236px); @users-page-tabs-height: calc( 100vh - 122px ); /* navbar+tab_height+padding = 64+46+12 */ +@glossary-page-height: calc(100vh - 165px); +@glossary-term-page-height: calc(100vh - 200px); diff --git a/openmetadata-ui/src/main/resources/ui/src/styles/x-master.css b/openmetadata-ui/src/main/resources/ui/src/styles/x-master.css index aa16d812877..07610eedf90 100644 --- a/openmetadata-ui/src/main/resources/ui/src/styles/x-master.css +++ b/openmetadata-ui/src/main/resources/ui/src/styles/x-master.css @@ -872,7 +872,7 @@ code { .page-not-found-container { width: 100%; - height: calc(100% - 68px); + height: 100vh; display: flex; }