Backport Domain and Glossary lazy-loading updates to 1.13#30129
Conversation
…attern (#29065) * feat(ui): update Domain & Glossary components for lazy-load utility pattern Updates Domain and Glossary components to import from extracted pure utility modules. Updates DomainUtils, GlossaryUtils, ClassificationUtils, TagsUtils imports. Updates Tag components and pages for consistent utility usage. Ref: open-metadata/openmetadata-collate#4230 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix build and unit tests * fix checkstyle * Fix conflicts * fix test, build, checkstyle * fix checkstyle --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
|
Too many files changed for review. ( Bypass the limit by tagging |
| import { | ||
| AddDomainFormProps, | ||
| DomainFormSelectItem, | ||
| DomainFormValues, | ||
| } from './AddDomainForm.interface'; |
There was a problem hiding this comment.
🚨 Bug: AddDomainForm imports types not exported by interface file
AddDomainForm.component.tsx (lines 67-71) imports DomainFormSelectItem and DomainFormValues from ./AddDomainForm.interface, but that file only exports AddDomainFormProps — neither type is defined or exported anywhere in the codebase (grep confirms they are referenced only in this component). This causes a TypeScript compile error (TS2305 'Module has no exported member'), breaking the build. The type definitions were apparently dropped during backport conflict resolution. Fix by adding the missing type definitions to AddDomainForm.interface.ts (they back DOMAIN_FORM_DEFAULTS, isFormSelectItem, and transformDomainFormData).
Add the missing DomainFormSelectItem and DomainFormValues type definitions to AddDomainForm.interface.ts (adjust field types to match the original PR #29065).:
import { EntityReference } from '../../../generated/entity/type';
import { TagLabel } from '../../../generated/type/tagLabel';
export interface DomainFormSelectItem {
id: string;
label?: string;
value: unknown;
name?: string;
}
export interface DomainFormValues {
name: string;
displayName: string;
description: string;
color: string;
iconURL: string;
coverImage: File | null;
tags: DomainFormSelectItem[];
glossaryTerms: TagLabel[];
owners: DomainFormSelectItem[];
experts: DomainFormSelectItem[];
reviewers: DomainFormSelectItem[];
domainType: DomainFormSelectItem | null;
domains?: DomainFormSelectItem;
dataProductType: DomainFormSelectItem | null;
visibility: DomainFormSelectItem | null;
portfolioPriority: DomainFormSelectItem | null;
extension: Record<string, unknown>;
}
- Apply fix
Check the box to apply the fix or reply for a change | Was this helpful? React with 👍 / 👎
Code Review 🚫 Blocked 0 resolved / 1 findingsBackports Domain and Glossary lazy-loading components but is blocked by a critical issue where AddDomainForm imports types that are not exported by the interface file. 🚨 Bug: AddDomainForm imports types not exported by interface file📄 openmetadata-ui/src/main/resources/ui/src/components/Domain/AddDomainForm/AddDomainForm.component.tsx:67-71 📄 openmetadata-ui/src/main/resources/ui/src/components/Domain/AddDomainForm/AddDomainForm.component.tsx:73-87 📄 openmetadata-ui/src/main/resources/ui/src/components/Domain/AddDomainForm/AddDomainForm.component.tsx:102-116
Add the missing DomainFormSelectItem and DomainFormValues type definitions to AddDomainForm.interface.ts (adjust field types to match the original PR #29065).🤖 Prompt for agentsOptionsDisplay: compact → Showing less information. Comment with these commands to change the behavior for this request:
Was this helpful? React with 👍 / 👎 | Gitar |
Summary
Stack
Testing