Shailesh Parmar a53b294d5f
Revamp: Data quality Page UI (#21766)
* Revamp: Data quality UI

* added pie chart as per new mock

* added pie chart component in test case page.

* updated test case list table UI

* updated pie chart with new mock

* Refactor Data Quality Summary Panel to use SummaryPieChartCard component

- Replaced inline pie chart implementations with a new reusable SummaryPieChartCard component for better code organization and reusability.
- Introduced new ChartData and SummaryPieChartCardProps interfaces for type safety.
- Updated styles for the new component and adjusted the layout in the DataQuality page.
- Added GREY_200 color constant for improved color management in pie charts.
- Enhanced percentage calculation utility for better precision and safety in division.

* Update DataQualityPage styles and button dimensions

- Removed unnecessary tab background class from DataQualityPage.
- Adjusted button styles for .ant-btn-default and .ant-btn-sm, changing dimensions and SVG sizes for improved UI consistency.

* Update DataQualityPage tests and component layout to reflect changes in tab selection and column span

* Enhance DateTimeDisplay component with license information and update localization files to include new "Bundle Suites" and "Table Suites" entries across multiple languages.

* fixed migration issue

* used new widget in place of old one

* Add TestCaseFormV1 component and related styles for Data Quality tests

- Introduced TestCaseFormV1 component for selecting test levels (Table/Column).
- Added SelectionCardGroup component for displaying selection options.
- Created associated LESS styles for both components.
- Updated DataQualityPage to include the new TestCaseFormV1 in a drawer format.
- Modified ic-format-table.svg to adjust icon dimensions.

* Enhance Data Quality Test Case Form UI

- Improved layout and styling for the Test Case Form, including margin adjustments and label styling.
- Added functionality for selecting tables and columns with dynamic fetching and caching.
- Implemented test type selection with corresponding parameter forms based on selected definitions.
- Updated AsyncSelect component to handle disabled state correctly.
- Adjusted SelectionCardGroup styles for better visual consistency.

* Enhance Test Case Form with New Features and Improved UI

- Added new fields for test name, description, tags, and glossary terms to the Test Case Form.
- Implemented loading state management for form submission and cancellation.
- Introduced reusable action buttons for better user interaction.
- Enhanced styling for fixed action buttons and drawer mode adjustments.
- Updated form layout to accommodate new fields and improve overall user experience.

* Enhance Test Case Form Functionality and UI

- Added dynamic assertion toggle and validation for test case names to prevent duplicates.
- Improved form initialization with default values and enhanced parameter handling.
- Integrated existing test case fetching based on selected tables and columns.
- Updated form submission logic to create test cases and display success/error messages.
- Enhanced overall user experience with better state management and UI adjustments.

* Add Data Quality Test Case Form Enhancements and New Schedule Component

- Introduced a new interface for TestCaseFormV1 to define props and form values, enhancing type safety.
- Added a ScheduleIntervalV1 component for managing scheduling options, including cron expressions and on-demand triggers.
- Updated TestCaseFormV1 to integrate the new scheduling functionality, allowing users to configure test case execution schedules.
- Enhanced UI with new styling for scheduler options and improved layout for better user experience.
- Implemented state management for dynamic form fields based on user selections, improving interactivity and usability.

* Enhance Test Case Form with Dynamic Name Generation and UI Improvements

- Added functionality for dynamic test name generation based on selected table and test type, ensuring unique and descriptive names.
- Introduced state management for manual test name editing to prevent overwriting user input.
- Updated styles for the block editor to improve visual consistency and usability.
- Enhanced form initialization and auto-generation logic for test names, improving user experience during test case creation.

* Add Bundle Suite Form and Integrate with Data Quality Page

- Introduced a new BundleSuiteForm component for creating and managing test suites, including form fields for name, description, and test case selection.
- Implemented styling for the Bundle Suite Form to enhance user experience and visual consistency.
- Integrated the BundleSuiteForm into the DataQualityPage, allowing users to open the form as a modal for adding new test suites.
- Added state management for modal visibility and handlers for opening and closing the Bundle Suite modal.
- Enhanced the overall layout and functionality of the Data Quality page to accommodate the new test suite feature.

* Enhance styling for Data Quality test case forms

- Added padding to the last paragraph of the block editor in both TestCaseFormV1 and BundleSuiteForm components to improve layout and visual consistency.

* Enhance Data Quality UI with new components and styling

- Added a PageHeader and Searchbar to the TestCases component for improved user navigation and search functionality.
- Introduced a new stylesheet for TestSuites to enhance layout and visual consistency.
- Refactored TestSuites component to include a styled header and integrated Searchbar.
- Updated DataQualityTab to accept a tableHeader prop for better customization.
- Enhanced styling for Data Quality tab and table components to improve overall user experience.

* Refactor DataQualityTab to enhance test case status management

- Removed unused imports and streamlined component structure for better readability.
- Introduced a new handleStatusSubmit function to manage test case status updates.
- Replaced the previous status display with a TestCaseIncidentManagerStatus component for improved functionality and user interaction.
- Adjusted the width of the incident column for better layout consistency.

* Add test case insight translations and update styles

- Added translations for "test-case-insight-plural" and "test-case-insight-description" in multiple languages to enhance localization support.
- Updated the stylesheet for TestSuites to include a copyright notice for compliance and clarity.

* Remove deprecated Data Quality chart widgets and associated styles

- Deleted unused components including DataAssetsCoveragePieChartWidget, DataStatisticWidget, EntityHealthStatusPieChartWidget, IncidentTimeChartWidget, IncidentTypeAreaChartWidget, StatusByDimensionCardWidget, and TestCaseStatusAreaChartWidget to streamline the codebase.
- Removed corresponding LESS styles and test files to ensure a clean and maintainable project structure.
- Updated CustomPieChart component for improved rendering and styling consistency.

* Remove StatusCardWidget interface file to streamline Data Quality components

* Add showLegends prop to CustomPieChart and update styles

- Introduced a new `showLegends` prop in the `CustomPieChart` component to conditionally render legends.
- Enhanced the component's layout with a new wrapper class for better styling.
- Updated associated LESS styles to support the new legend display functionality.

* Enhance Data Quality UI with new Bundle Suite functionality

- Added "Bundle Suite" and "Bundle Suites" entries to the English locale file for improved user interface.
- Refactored DataQualityClassBase to remove the unused getManageExtraOptions method and introduced getExportDataQualityDashboardButton method.
- Updated DataQualityPage to include a dropdown menu for adding test cases and bundle suites, enhancing user interaction and functionality.

* Enhance query parameter handling in Data Quality components

- Updated the `TestCases` component to use brackets for array formatting in query strings.
- Improved `useTableFilters` hook to handle both array format and comma-separated strings for filter values.
- Removed unnecessary array-to-string conversion to maintain array format in query parameters.

* Enhance Data Quality UI with custom gradient drawer and filter bar

- Added a custom gradient header style for the drawer in the TestCaseFormV1 and BundleSuiteForm components.
- Updated the DataQualityPage to include a new class for the data quality filters bar, improving layout and styling.
- Refactored TestCases and TestSuites components to utilize Card components for better organization of filter elements.

* Enhance TestCaseIncidentManagerStatus component and update locale files

- Refactored the TestCaseIncidentManagerStatus component to improve the edit icon button functionality, including permission checks and translation support.
- Added "Bundle Suite" entries to multiple locale files (de-de, es-es, fr-fr, gl-es, he-he, ja-jp, ko-kr, mr-in, nl-nl, pr-pr, pt-br, pt-pt, ru-ru, th-th, tr-tr, zh-cn) for improved internationalization.

* Add EditTestCaseModalV1 component and associated tests

- Introduced the EditTestCaseModalV1 component for editing data quality test cases, featuring a comprehensive form with validation and dynamic fields.
- Implemented unit tests for the EditTestCaseModalV1 component to ensure proper rendering, functionality, and interaction with mock data.
- Updated styles for the new modal and integrated it into the DataQualityTab for seamless user experience.
- Enhanced the TestCaseFormV1 with additional styling and functionality to support the new modal integration.

* Refactor Data Quality components for improved functionality and localization

- Updated the success toast message in BundleSuiteForm to use a more descriptive translation key.
- Enhanced the Severity component to display permission messages correctly when editing severity.
- Improved the TestCaseIncidentManagerStatus component to provide clearer edit button titles based on permissions.
- Refactored the SummaryPieChartCard component to streamline the PieChart rendering process.
- Updated test cases for TestCases and TestSuites components to ensure proper rendering and functionality with mocked components.
- Enhanced DataQualityPage tests to cover modal functionality and tab integration, ensuring a comprehensive testing approach.

* Refactor Data Quality UI components for improved test suite functionality

- Updated TestSuite.spec.ts to streamline test suite creation and navigation.
- Enhanced TestCaseFormV1, BundleSuiteForm, and TestSuites.component.tsx with data-testid attributes for better testability.
- Modified DataQualityTab to conditionally set data-testid for delete buttons based on context.
- Adjusted TestSuiteDetailsPage to incorporate DataQualitySubTabs for improved routing and navigation.

* Refactor test cases and UI components for improved functionality and consistency

- Updated IncidentManager.spec.ts to check for 'Failed' status using data-testid attributes.
- Modified Permission.spec.ts to enhance test case editing with updated button identifiers.
- Refactored Table.spec.ts to standardize test case selection by updating data-testid values.
- Enhanced DataQualityAndProfiler.spec.ts and TestCases.spec.ts to improve test case editing and validation.
- Updated EditTestCaseModalV1 to use a data-testid for the modal title for better testability.
- Adjusted DataQualityTab to include data-testid for status badges, improving test reliability.

* Add new SVG icons and enhance AlertBar component styles

- Introduced new SVG icons: ic-table-test.svg and ic-tag-new.svg for improved UI representation.
- Enhanced AlertBar styles with a new grey-info type for better visual distinction.
- Updated AlertBar interface to support the new grey-info type and added a className prop for customization.
- Refactored AlertBar component to utilize the new className prop for dynamic styling.
- Improved TestCaseFormV1 layout and integrated AlertBar for displaying contextual messages.
- Updated various components to support new styling conventions and improve overall UI consistency.

* Add calendar SVG icon and refactor Data Quality UI components

- Introduced a new calendar SVG icon for enhanced visual representation.
- Refactored EditTestCaseModalV1 and TestCaseFormV1 components to improve layout and styling consistency.
- Updated form item classes and button types for better UX.
- Enhanced BundleSuiteForm with improved card sections and integrated AlertBar for contextual messaging.
- Removed unused BundleSuiteForm styles to streamline the codebase.

* Enhance Data Quality UI with error handling and styling improvements

- Added floating error alert functionality in EditTestCaseModalV1, TestCaseFormV1, and BundleSuiteForm for better user feedback.
- Introduced error message state management to display relevant error messages inline.
- Updated styles for floating error alerts to ensure visibility and consistency across components.
- Enhanced form submission error handling to provide clearer user guidance.
- Updated translations to include pipeline information for various languages.

* Enhance Data Quality UI with new icons and layout improvements

- Added new SVG icons for data assets coverage and health check to improve visual representation in the UI.
- Updated the PieChartSummaryPanel to include icons for better context in summary cards.
- Refactored form components to improve layout consistency and user experience.
- Introduced a new constant for maximum name length to enforce validation across forms.
- Enhanced styling for form switch containers to improve visual clarity and usability.

* Update translations for various languages to include new terms related to column and table levels, test application, and selection prompts. This enhances the user interface by providing clearer context in multiple languages.

* Update translations for various languages to improve clarity and consistency in user interface terms related to bundle suites, column levels, and scheduling descriptions. This enhances the overall user experience across multiple languages.

* Refactor BundleSuiteForm tests to improve clarity and functionality

- Updated imports to include React for better compatibility.
- Enhanced mock implementations for translation and alert handling.
- Improved test assertions for rendering components in different modes.
- Clarified comments regarding API availability for form submission.

* Enhance BundleSuiteForm with Scheduler Functionality

- Added 'enableScheduler' option to the BundleSuiteForm interface.
- Updated tests to verify rendering and functionality of scheduler fields based on the toggle state.
- Refactored form to conditionally display scheduler-related fields when the scheduler is enabled.
- Ensured proper handling of form submission based on the scheduler's state.

* Refactor Data Quality Test Components and Remove Unused Code

- Removed the AddDataQualityTestV1 component and its associated tests.
- Updated AuthenticatedAppRouter to eliminate references to removed components.
- Refactored TestCaseFormV1 and BundleSuiteForm to remove the isDrawer prop and adjust related tests.
- Enhanced the integration of TestCaseFormV1 within the TableProfiler context for better drawer management.
- Cleaned up unused routes and constants related to data quality tests.
- Updated styles and tests to reflect the changes in component structure and functionality.

* Enhance TestCaseFormV1 with Permission Checks and Cleanup

- Integrated permission checking for creating test cases based on table access.
- Added loading state for permission checks to improve user experience.
- Cleaned up unused state variables and effects in TestCaseFormV1.
- Updated AddTestCaseList component to include necessary dependencies in hooks.
- Added new localization string for permission error messages.

* Enhance Permission Handling in Data Quality Components

- Integrated permission checks for creating and editing test cases in TestCaseFormV1 and BundleSuiteForm.
- Updated state management to reflect permission-based conditions for enabling features like pipeline creation and scheduler options.
- Refactored related components to ensure proper dependency handling in hooks.
- Improved test coverage for permission-related functionalities across affected components.

* Refactor Data Quality Test Cases and Improve UI Interactions

- Updated test case creation and editing flows in various spec files to enhance user experience and reliability.
- Replaced deprecated selectors and improved response handling for API calls.
- Streamlined pagination functionality in test cases list to ensure proper visibility and interaction.
- Enhanced permission checks in DataQualityPage and TestCaseFormV1 to ensure proper access control.
- Improved loading states and notifications for better user feedback during test case operations.

* fixed failing playwright

* Add new Playwright test for Data Quality Test Case creation flow

- Implemented a comprehensive test suite for adding table and column-level test cases in the Data Quality feature.
- Included permission checks to ensure non-owner users cannot create test cases.
- Enhanced user interactions and response handling for improved reliability and feedback during test case operations.

* address review  comment
2025-07-17 10:48:52 +05:30
2025-07-15 11:34:40 +02:00
2025-07-08 16:06:55 -07:00
2025-07-08 13:28:13 -07:00
2025-06-24 15:28:59 +05:30
2025-05-22 14:45:54 -07:00



Logo

Empower your Data Journey with OpenMetadata

Commit Activity Release

What is OpenMetadata?

OpenMetadata is a unified metadata platform for data discovery, data observability, and data governance powered by a central metadata repository, in-depth column level lineage, and seamless team collaboration. It is one of the fastest-growing open-source projects with a vibrant community and adoption by a diverse set of companies in a variety of industry verticals. Based on Open Metadata Standards and APIs, supporting connectors to a wide range of data services, OpenMetadata enables end-to-end metadata management, giving you the freedom to unlock the value of your data assets.


Contents:

OpenMetadata Consists of Four Main Components:

  • Metadata Schemas: These are the core definitions and vocabulary for metadata based on common abstractions and types. They also allow for custom extensions and properties to suit different use cases and domains.
  • Metadata Store: This is the central repository for storing and managing the metadata graph, which connects data assets, users, and tool-generated metadata in a unified way.
  • Metadata APIs: These are the interfaces for producing and consuming metadata, built on top of the metadata schemas. They enable seamless integration of user interfaces and tools, systems, and services with the metadata store.
  • Ingestion Framework: This is a pluggable framework for ingesting metadata from various sources and tools to the metadata store. It supports about 84+ connectors for data warehouses, databases, dashboard services, messaging services, pipeline services, and more.

Key Features of OpenMetadata

Data Discovery: Find and explore all your data assets in a single place using various strategies, such as keyword search, data associations, and advanced queries. You can search across tables, topics, dashboards, pipelines, and services.

12


Data Collaboration: Communicate, converse, and cooperate with other users and teams on data assets. You can get event notifications, send alerts, add announcements, create tasks, and use conversation threads.

11


Data Quality and Profiler: Measure and monitor the quality with no-code to build trust in your data. You can define and run data quality tests, group them into test suites, and view the results in an interactive dashboard. With powerful collaboration, make data quality a shared responsibility in your organization.

8


Data Governance: Enforce data policies and standards across your organization. You can define data domains and data products, assign owners and stakeholders, and classify data assets using tags and terms. Use powerful automation features to auto-classify your data.

10


Data Insights and KPIs: Use reports and platform analytics to understand how your organization's data is doing. Data Insights provides a single-pane view of all the key metrics to reflect the state of your data best. Define the Key Performance Indicators (KPIs) and set goals within OpenMetadata to work towards better documentation, ownership, and tiering. Alerts can be set against the KPIs to be received on a specified schedule.

9


Data Lineage: Track and visualize the origin and transformation of your data assets end-to-end. You can view column-level lineage, filter queries, and edit lineage manually using a no-code editor.

Data Documentation: Document your data assets and metadata entities using rich text, images, and links. You can also add comments and annotations and generate data dictionaries and data catalogs.

Data Observability: Monitor the health and performance of your data assets and pipelines. You can view metrics such as data freshness, data volume, data quality, and data latency. You can also set up alerts and notifications for any anomalies or failures.

Data Security: Secure your data and metadata using various authentication and authorization mechanisms. You can integrate with different identity providers for single sign-on and define roles and policies for access control.

Webhooks: Integrate with external applications and services using webhooks. You can register URLs to receive metadata event notifications and integrate with Slack, Microsoft Teams, and Google Chat.

Connectors: Ingest metadata from various sources and tools using connectors. OpenMetadata supports about 84+ connectors for data warehouses, databases, dashboard services, messaging services, pipeline services, and more.

Try our Sandbox

Take a look and play with sample data at http://sandbox.open-metadata.org

Install and Run OpenMetadata

Get up and running in a few minutes. See the OpenMetadata documentation for installation instructions.

Documentation and Support

We're here to help and make OpenMetadata even better! Check out OpenMetadata documentation for a complete description of OpenMetadata's features. Join our Slack Community to get in touch with us if you want to chat, need help, or discuss new feature requirements.

Contributors

We ❤️ all contributions, big and small! Check out our CONTRIBUTING guide to get started, and let us know how we can help.

Don't want to miss anything? Give the project a 🚀

A HUGE THANK YOU to all our supporters!

Stargazers

Stargazers of @open-metadata/OpenMetadata repo

License

OpenMetadata is released under Apache License, Version 2.0

Description
OpenMetadata is a unified metadata platform for data discovery, data observability, and data governance powered by a central metadata repository, in-depth column level lineage, and seamless team collaboration.
Readme Apache-2.0 2.9 GiB
Languages
TypeScript 47.1%
Java 29.5%
Python 20.9%
Less 1.7%
CSS 0.3%
Other 0.3%