Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix: UI changes in shifting and resources pages #9437

Conversation

SathishAdithiyaaSV
Copy link
Contributor

@SathishAdithiyaaSV SathishAdithiyaaSV commented Dec 15, 2024

Proposed Changes

  • Fixes Minor Changes in Shifitng and Resource Page #9381
  • Adjusted the height of the "List View" button to match the height of the "Advanced Filters" button on both the shifting and resources pages.
  • Ensured consistent alignment of the top section in both list view and block view across the shifting and resources pages.

Video of Solution:

Screencast.from.2024-12-15.13-24-52.webm

@ohcnetwork/care-fe-code-reviewers

Merge Checklist

  • Add specs that demonstrate bug / test a new feature.
  • Update product documentation.
  • Ensure that UI text is kept in I18n files.
  • Prep screenshot or demo video for changelog entry, and attach it to issue.
  • Request for Peer Reviews
  • Completion of QA

Summary by CodeRabbit

  • New Features

    • Introduced a new PageTitle component for improved layout and organization.
    • Added an ExportButton for downloading resource requests in CSV format.
  • Improvements

    • Enhanced styling for buttons and components for better visibility and usability.
    • Improved alignment and spacing of search input and buttons using a flexbox structure.
  • Bug Fixes

    • Preserved existing functionality for data fetching and rendering across components.

@SathishAdithiyaaSV SathishAdithiyaaSV requested a review from a team as a code owner December 15, 2024 08:06
Copy link
Contributor

coderabbitai bot commented Dec 15, 2024

Walkthrough

The pull request introduces consistent UI improvements across Resource and Shifting components, focusing on layout standardization and component restructuring. The changes primarily involve replacing the Page component with PageTitle, integrating ExportButton, and refining the layout of list and board views. The modifications enhance UI consistency by aligning search inputs, adjusting button sizes, and improving overall spacing and alignment across different pages.

Changes

File Change Summary
src/components/Resource/ResourceBoard.tsx Added className to Button, updated onTabChange for boardFilter, integrated ExportButton in PageTitle and KanbanBoard
src/components/Resource/ResourceList.tsx Replaced Page with PageTitle, restructured layout, added ExportButton, improved search input positioning
src/components/Shifting/ShiftingBoard.tsx Added className to Button, maintained existing boardFilter state management
src/components/Shifting/ShiftingList.tsx Replaced Page with div and PageTitle, enhanced layout using flexbox, repositioned search input

Assessment against linked issues

Objective Addressed Explanation
Consistent search bar length [#9381]
Consistent button sizes [#9381]
Uniform spacing and alignment [#9381]

Possibly related PRs

Suggested labels

needs review, tested

Suggested reviewers

  • rithviknishad
  • Jacobjeevan
  • shivankacker

Poem

🐰 Hopping through code with glee,
Buttons aligned, views now free!
Spacing perfect, layout neat,
UI changes make my heart beat!
A rabbit's touch of design delight 🎨

Tip

CodeRabbit's docstrings feature is now available as part of our Early Access Program! Simply use the command @coderabbitai generate docstrings to have CodeRabbit automatically generate docstrings for your pull request. This feature will be included in our Pro Plan when released.


Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?

❤️ Share
🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Generate unit testing code for this file.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai generate unit testing code for this file.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and generate unit testing code.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai generate docstrings to generate docstrings for this PR. (Beta)
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

Copy link

netlify bot commented Dec 15, 2024

Deploy Preview for care-ohc ready!

Name Link
🔨 Latest commit d8c81d7
🔍 Latest deploy log https://app.netlify.com/sites/care-ohc/deploys/675e98a996885000089ad32f
😎 Deploy Preview https://deploy-preview-9437--care-ohc.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify site configuration.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 0

🧹 Nitpick comments (2)
src/components/ui/button.tsx (1)

33-33: Consider using standard Tailwind height values

The height value h-10.8 is non-standard in Tailwind CSS. Consider using standard height values like h-11 (44px) or creating a custom height in your Tailwind config if this specific height is required by design.

-        xl: "h-10.8 px-4 py-2",
+        xl: "h-11 px-4 py-2",
src/components/Resource/ResourceList.tsx (1)

222-245: Consider adjusting flex container gap

The current gap between flex items could be more consistent. Consider using the same gap value across all breakpoints.

-        <div className="flex w-full flex-col items-center justify-between gap-2 pt-2 xl:flex-row">
+        <div className="flex w-full flex-col items-center justify-between gap-4 pt-2 xl:flex-row">
📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between f82dfa8 and 69d26d4.

📒 Files selected for processing (5)
  • src/components/Resource/ResourceBoard.tsx (2 hunks)
  • src/components/Resource/ResourceList.tsx (3 hunks)
  • src/components/Shifting/ShiftingBoard.tsx (2 hunks)
  • src/components/Shifting/ShiftingList.tsx (3 hunks)
  • src/components/ui/button.tsx (1 hunks)
🔇 Additional comments (10)
src/components/Shifting/ShiftingList.tsx (3)

52-72: LGTM: Improved layout structure

The new flex layout with proper width constraints provides better organization and alignment of the title section.


73-80: LGTM: Consistent search input styling

The SearchInput component now has consistent width and spacing, improving the overall layout.


82-88: LGTM: Button size consistency

The Button now uses the new xl size variant, matching the height of other buttons as per PR objectives.

src/components/Resource/ResourceBoard.tsx (2)

85-85: LGTM: Consistent search input styling

The SearchInput styling matches the one in ShiftingList.tsx, maintaining consistency across pages.


96-100: LGTM: Consistent button sizing

The Button component uses the same xl size variant as ShiftingList.tsx, achieving the PR's objective of consistent button heights.

src/components/Shifting/ShiftingBoard.tsx (2)

112-112: LGTM: Consistent margin for better vertical spacing

The added margin-bottom helps maintain consistent vertical spacing in the layout.


127-131: LGTM: Button size standardization

The xl size property ensures consistent button heights across the interface, matching the PR objective to align with Advanced Filters button.

src/components/Resource/ResourceList.tsx (3)

197-220: LGTM: Improved page header structure

The new PageTitle implementation provides better organization and consistent layout with other pages.


222-229: LGTM: Consistent search input styling

The SearchInput styling matches the ShiftingBoard component, maintaining UI consistency.


231-237: LGTM: Standardized button sizing

The xl size property ensures consistent button heights across the interface, matching the ShiftingBoard implementation.

src/components/ui/button.tsx Outdated Show resolved Hide resolved
src/components/Shifting/ShiftingBoard.tsx Outdated Show resolved Hide resolved
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🧹 Nitpick comments (1)
src/components/Resource/ResourceList.tsx (1)

223-229: Consider extracting common search input styles

Since both ShiftingList and ResourceList use identical search input styling, consider extracting these common styles into a shared component or utility class.

- className="w-full md:w-60"
+ className={commonStyles.searchInput} // or a utility class like "search-input-base"
📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 69d26d4 and d8c81d7.

📒 Files selected for processing (4)
  • src/components/Resource/ResourceBoard.tsx (1 hunks)
  • src/components/Resource/ResourceList.tsx (3 hunks)
  • src/components/Shifting/ShiftingBoard.tsx (1 hunks)
  • src/components/Shifting/ShiftingList.tsx (3 hunks)
🚧 Files skipped from review as they are similar to previous changes (2)
  • src/components/Shifting/ShiftingBoard.tsx
  • src/components/Resource/ResourceBoard.tsx
🔇 Additional comments (2)
src/components/Shifting/ShiftingList.tsx (1)

52-96: LGTM! Layout structure improvements enhance UI consistency

The new flex layout structure properly aligns components and matches the ResourceList implementation, creating a consistent look across pages.

src/components/Resource/ResourceList.tsx (1)

197-245: LGTM! Layout changes maintain consistency with ShiftingList

The implementation successfully mirrors the layout structure from ShiftingList.tsx, ensuring consistent UI across both pages:

  • Flex container structure matches
  • Button heights are aligned
  • Search input positioning is consistent

Comment on lines +83 to +87
<Button
variant={"primary"}
onClick={onBoardViewBtnClick}
className="h-10.8 px-4 py-2"
>
Copy link
Contributor

Choose a reason for hiding this comment

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

💡 Codebase verification

Button heights are inconsistent

The AdvancedFilterButton uses ButtonV2 component which has a default height defined by padding (py-2) while the button in ShiftingList uses a fixed height class h-10.8. These different approaches to setting height will likely result in inconsistent heights.

  • src/components/Shifting/ShiftingList.tsx: Uses fixed height h-10.8
  • src/CAREUI/interactive/FiltersSlideover.tsx: Uses ButtonV2 with padding-based height
  • src/style/CAREUI.css: Shows ButtonV2 uses py-2 for default size
🔗 Analysis chain

Verify button height matches Advanced Filters

The button height is set to h-10.8 which should match the Advanced Filters button height as per PR objectives.


Let me check the implementation of the AdvancedFilterButton component to verify its height.


Let me check the ButtonV2 component implementation since AdvancedFilterButton uses it.


Let me check the CSS classes that define the button heights.

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Verify consistent button heights across components
# Search for height classes in Advanced Filters button implementations

rg -A 2 "AdvancedFilterButton" 

Length of output: 4835


Script:

#!/bin/bash
# Get the implementation of AdvancedFilterButton to check its height class
ast-grep --pattern 'export const AdvancedFilterButton = ({ onClick }: { onClick: () => void }) => {
  $$$
}'

Length of output: 1201


Script:

#!/bin/bash
# Find ButtonV2 component implementation
fd "ButtonV2" --exec cat {}

Length of output: 7084


Script:

#!/bin/bash
# Search for CSS files that might contain button height definitions
fd -e css -e scss | xargs rg "button-size|h-10.8"

Length of output: 262

@SathishAdithiyaaSV
Copy link
Contributor Author

@bodhish I have now made changes as per your request

@nihal467
Copy link
Member

LGTM

@Jacobjeevan Jacobjeevan added reviewed reviewed by a core member and removed needs review labels Dec 18, 2024
@rithviknishad rithviknishad dismissed bodhish’s stale review December 18, 2024 06:25

changes done as requested

@rithviknishad rithviknishad merged commit 3618853 into ohcnetwork:develop Dec 18, 2024
25 checks passed
Copy link

@SathishAdithiyaaSV Your efforts have helped advance digital healthcare and TeleICU systems. 🚀 Thank you for taking the time out to make CARE better. We hope you continue to innovate and contribute; your impact is immense! 🙌

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
reviewed reviewed by a core member tested
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Minor Changes in Shifitng and Resource Page
5 participants