5 Commits

Author SHA1 Message Date
satish
1a3339453b Domain, Sub-domain, Data Product listing (#23374)
* Domain, Sub-domain, Data Product listing

* feat: implement atomic design architecture with micro hooks for entity listings

This commit introduces a comprehensive atomic design system that eliminates code duplication while providing maximum flexibility through composable micro hooks.

## Key Features

### Atomic Design Structure
- Created `src/components/common/atoms/` with feature-based organization
- Implemented micro hooks (5-15 lines each) with single responsibilities
- Added comprehensive JSDoc documentation for each micro hook

### Entity Listing Improvements
- Refactored domain, subdomain, and data product listings
- Simplified entity-specific hooks using shared domain atoms
- Implemented flexible `useDataTable({ listing })` interface

### Performance & Stability
- Fixed infinite API calls and re-render loops
- Implemented proper useCallback/useMemo patterns with stable dependencies
- Added error boundaries and proper error handling

### UX Improvements
- Fixed search to trigger on Enter key (eliminated race conditions)
- Updated sidebar navigation to use singular forms for sub-menu items
- Fixed navigation paths for data product details
- Added proper translation keys and removed hardcoded strings

### Bug Fixes
- Fixed filter field mappings to use `.keyword` for exact matching
- Fixed data product navigation paths (`/dataProduct` vs `/data-product`)
- Fixed filter styling to use original SearchDropdown components
- Temporarily disabled problematic domainType filter due to API errors

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>

* fix(ui): add i18n support and enhance atomic hooks for entity listings

- Add useDelete hook with proper i18n for entity deletion with confirmation modal
- Add useCardView hook for flexible card layout rendering
- Add useViewToggle hook for table/card view switching
- Add useDomainCardTemplates for domain and data product card layouts
- Add TagsCell component for rendering glossary and classification tags
- Refactor useTableRow to use composition with useCellRenderer
- Fix i18n translations for delete confirmation messages
- Update Domain, DataProduct, and SubDomains pages to use new atomic hooks
- Add missing translation keys to en-us.json

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>

* feat(ui): implement MUI-based tree select components and atomic design patterns

- Add MUIAsyncTreeSelect component with lazy loading and keyboard navigation
- Implement MUIGlossaryTagSuggestion for hierarchical glossary term selection
- Add MUITagSuggestion for improved tag selection experience
- Create reusable TagChip component for consistent tag display
- Implement atomic drawer hooks for form handling
- Update domain and data product listing pages with new components
- Add comprehensive tree selection hooks (data, expansion, selection, search)
- Enhance form utilities with MUI field types

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>

* feat(ui): enhance drawer styling and add MUI form components

- Add gradient background image to drawer header with 30% opacity
- Apply rounded top corners (16px) to drawer for modern appearance
- Add box shadow to drawer footer for visual hierarchy
- Introduce MUIFormItemLabel component for consistent form labels
- Fix TypeScript any type warning in AddDomainForm
- Enhance domain listing pages with improved drawer integration

🤖 Generated with Claude Code

Co-Authored-By: Claude <noreply@anthropic.com>

* feat(ui): implement MUI-based user/team selection component with atomic design

- Add MUIUserTeamSelect component with atomic design patterns
- Create ProfilePicture atomic component for consistent avatar rendering
- Update AddDomainForm to use new MUI components instead of legacy selectors
- Enhance useCellRenderer to use ProfilePicture for owner display
- Add support for user-only, team-only, and mixed selection modes
- Implement smart selection logic preventing user/team conflicts
- Add internationalization support for new selection component

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>

* feat(ui): add MUI domain select component and fix drawer close functionality

- Implement MUIDomainSelect component using MUIAsyncTreeSelect for hierarchical domain selection
- Fix drawer close/cancel button functionality with proper onBeforeClose pattern
- Standardize form submission patterns across domain and data product forms
- Enhance MUIAsyncTreeSelect with keyboard navigation and scroll-to-view
- Clean EntityReference objects to match API schema requirements
- Remove duplicate onSubmit handlers in drawer forms

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>

* feat(ui): implement MUI-based color and icon picker components for domain forms

- Add MUIColorPicker component with predefined color palette and accessibility features
- Add MUIIconPicker component with icon selection and URL input capabilities
- Update AddDomainForm to use new MUI components with improved layout and responsive design
- Create IconUtils for centralized icon rendering functionality
- Update cell renderer to handle icons properly with fallback support
- Enhance form styling with backdrop blur adjustments and form label theming
- Add missing translation keys for icon-plural and url labels
- Standardize drawer widths across domain and data product forms

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>

---------

Co-authored-by: Satish <satish@Satishs-MacBook-Pro.local>
Co-authored-by: Claude <noreply@anthropic.com>
2025-09-23 13:40:10 +05:30
Chirag Madlani
88f4fa8d79
chore(ui): update sourcemap for openmetadata-core-ui-components (#23426)
* chore(ui): add node memory limit to build

* remove source map for build

* revert node options

* update node version
2025-09-18 16:45:13 +00:00
Teddy
b2225311cc
fix: added mui to external rollupOptions (#23464) 2025-09-18 21:16:00 +05:30
Karan Hotchandani
717320c03a
update terser to esbuild (#23420) 2025-09-16 17:38:47 +05:30
satish
4767826b40
Theme setup (#23171)
* Theme setup

* Update colors and shadows

* Use theme colors

* Add colors types

* Colors update

* Consistent outline

* Theme separate module

* Add colors and dep version update

* Theme module as library

* Revert preinstall script

* Update types in theme configs

* Same typescript version for core components

* Fix type errors

* Temp build core component in preinstall

* Fix color string type error

* Remove component examples

* Exclude vite config in build

---------

Co-authored-by: Satish <satish@Satishs-MacBook-Pro.local>
Co-authored-by: Chirag Madlani <12962843+chirag-madlani@users.noreply.github.com>
2025-09-10 16:42:02 +05:30