Skip to content

HDDS-14520. Add shared components for service UIs#10787

Merged
spacemonkd merged 3 commits into
apache:HDDS-11541from
spacemonkd:HDDS-14520
Jul 20, 2026
Merged

HDDS-14520. Add shared components for service UIs#10787
spacemonkd merged 3 commits into
apache:HDDS-11541from
spacemonkd:HDDS-14520

Conversation

@spacemonkd

@spacemonkd spacemonkd commented Jul 17, 2026

Copy link
Copy Markdown
Contributor

What changes were proposed in this pull request?

HDDS-14520. Add shared components for service UIs

Please describe your PR in detail:
There are some components which are commonly used across various UIs, for example Cards, Chips, Sidebar etc.
This PR adds those components in a shared folder from which we can reuse them for all the UIs.

It also simplifies the directory structure and I used Claude Haiku 4.5 to clean up the README file for the module.

What is the link to the Apache JIRA

https://issues.apache.org/jira/browse/HDDS-14520

How was this patch tested?

Patch was tested manually by creating a test page using the card component and the common theme.

@spacemonkd

Copy link
Copy Markdown
Contributor Author

@jshukla01 could you take a look at this PR as well?

@spacemonkd
spacemonkd marked this pull request as ready for review July 17, 2026 06:32
@spacemonkd

Copy link
Copy Markdown
Contributor Author

@ivandika3 @ArafatKhan2198 I know this is a very large patch but mostly it is safe code that is not being referenced anywhere for now.
We are adding common components, and it is targeted for the feature branch, so it should be good to merge!

@arunsarin85 could you also take a look at this PR?

@ArafatKhan2198 ArafatKhan2198 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for putting the shared component foundation together. Centralising the design tokens, theme and recurring UI elements is the right direction.

I found a few issues that could be addressed before these components become shared contracts:

  1. The Sidebar logo points to /shared/icons/favicon.ico, but that asset is not emitted by the current shared-package or Vite build configuration.
  2. The shared Sidebar still hardcodes application routes, branding and header state, so it is not reusable across OM, SCM and Recon.
  3. Sidebar imports react-router-dom, but the shared package does not declare it as a dependency or peer dependency.
  4. The directory move deletes the UI .gitignore, leaving node_modules and dist unignored.
  5. TextLink allows callers to override the safe attributes added by external={true}.
  6. The workspace root uses Vite 6 while the application packages continue using Vite

Please let me know if any of the comments are wrong, or If I have missed out on a few things.

Comment thread ozone-ui/packages/shared/src/components/AppLayout/AppLayout.tsx
Comment thread ozone-ui/packages/shared/src/components/AppLayout/AppLayout.tsx
Comment thread ozone-ui/packages/shared/package.json
Comment thread ozone-ui/src/.gitignore
Comment thread ozone-ui/packages/shared/src/components/TextLink/TextLink.tsx
Comment thread ozone-ui/README.md

@ArafatKhan2198 ArafatKhan2198 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for addressing the review comments @spacemonkd
I verified the latest changes, and the previously reported issues have been resolved
Changed LGTM +1

@spacemonkd
spacemonkd merged commit d07c8ac into apache:HDDS-11541 Jul 20, 2026
15 checks passed
@spacemonkd

Copy link
Copy Markdown
Contributor Author

Thanks @ArafatKhan2198 for the review, merging this.

@spacemonkd
spacemonkd deleted the HDDS-14520 branch July 20, 2026 15:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants