Skip to content

Claudio/fix frameworks and requirements - #242

Merged
claudfuen merged 3 commits into
mainfrom
claudio/fix-frameworks-and-requirements
Apr 3, 2025
Merged

claudfuen merged 3 commits into
mainfrom
claudio/fix-frameworks-and-requirements

Conversation

@claudfuen

@claudfuen claudfuen commented Apr 3, 2025 •

Copy link
Copy Markdown
Contributor

Summary by CodeRabbit

  • New Features

    • Introduced a clickable requirement row displaying ID, name, and description for easier navigation to detailed views.
    • Added a description column header in the requirements table.
    • Enhanced pages with breadcrumb navigation, improving contextual awareness on framework and requirement screens.
  • Refactor

    • Updated URL paths for consistent linking.
    • Streamlined the layout by removing an outdated navigation element, resulting in a cleaner interface.

…Control; add loading and requirement detail components for improved framework requirements management
…ved framework data retrieval and integrate PageWithBreadcrumb for enhanced navigation in framework pages
…mb functionality in framework pages for improved navigation
@vercel

vercel Bot commented Apr 3, 2025

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
app ❌ Failed (Inspect) Apr 3, 2025 3:25pm
1 Skipped Deployment
Name Status Preview Comments Updated (UTC)
comp-portal ⬜️ Skipped (Inspect) Apr 3, 2025 3:25pm

@CLAassistant

CLAassistant commented Apr 3, 2025 •

Copy link
Copy Markdown

CLA assistant check
All committers have signed the CLA.

@claudfuen
claudfuen merged commit 70d1fce into main Apr 3, 2025
@coderabbitai

coderabbitai Bot commented Apr 3, 2025 •

Copy link
Copy Markdown

Caution

Review failed

The pull request is closed.

Walkthrough

This pull request introduces a new RequirementRow React component to display requirement details in a dashboard table and updates the SingleControl component to use it. Several components across the framework area have been modified to replace the deprecated getFrameworkName with a new getFrameworkDetails function. Additionally, URL paths in framework requirements have been updated from singular to plural. New breadcrumb navigation is added via a PageWithBreadcrumb component on both framework and requirement pages, and the deprecated SecondaryMenu is removed from the layout with minor import and structural cleanups.

Changes

File(s) Change Summary
.../controls/[controlId]/components/RequirementRow.tsx
.../controls/[controlId]/components/SingleControl.tsx
Introduced a new RequirementRow component and updated SingleControl to render requirement details (including ID, name, and description) using it.
.../frameworks/[frameworkInstanceId]/components/FrameworkOverview.tsx
.../frameworks/components/FrameworkCard.tsx
Updated framework components to use getFrameworkDetails (accessing the framework’s name via .name) in place of the removed getFrameworkName.
.../frameworks/[frameworkInstanceId]/components/FrameworkRequirements.tsx Modified Link components by changing URL paths from singular "requirement" to plural "requirements".
.../frameworks/page.tsx
.../frameworks/[frameworkInstanceId]/requirements/[requirementKey]/page.tsx
.../components/pages/PageWithBreadcrumb.tsx
Added and integrated the PageWithBreadcrumb component to wrap page content and provide dynamic breadcrumb navigation (including dropdown for collapsed items).
.../frameworks/layout.tsx Removed the SecondaryMenu component and its associated props, with a slight reordering of import statements.
.../frameworks/lib/getFrameworkDetails.ts
.../frameworks/lib/getRequirementDetails.ts
.../frameworks/lib/getFrameworkName.ts
Added new utility functions: getFrameworkDetails and getRequirementDetails, and completely removed the outdated getFrameworkName function.
.../frameworks/components/FrameworkList.tsx
.../frameworks/components/FrameworksOverview.tsx
Performed minor cleanup by removing unused imports (e.g., useI18n) and streamlining the layout structure (removing extra wrapper div and adding full-width classes).

Sequence Diagram(s)

sequenceDiagram
    participant U as User
    participant RR as RequirementRow
    participant GRD as getRequirementDetails
    participant Router as Next.js Router
    U->>RR: Click on requirement row
    RR->>GRD: Call to fetch requirement details using frameworkId & requirementId
    GRD-->>RR: Return requirement details
    RR->>Router: Navigate to constructed URL
Loading
sequenceDiagram
    participant P as Page Component
    participant PWB as PageWithBreadcrumb
    participant UI as Breadcrumb UI Components
    P->>PWB: Pass breadcrumbs & child content
    PWB->>UI: Determine visible items and dropdown items
    UI-->>PWB: Render breadcrumbs with dropdown if needed
    PWB-->>P: Display page content wrapped in breadcrumb navigation
Loading

Possibly related PRs

  • Mariano/cleanup #131: Involves the introduction and utilization of the RequirementRow component within the SingleControl component.
  • Overview fully SSR #175: Modifies the SingleControl component to incorporate the new RequirementRow, directly affecting how requirement details are rendered.
  • Clean up (metadata) + fixes #51: Connects to the new getRequirementDetails function used by the RequirementRow component for requirement-specific navigation.

Poem

I'm a rabbit with hops so light,
Coding through day and into night,
New rows and breadcrumbs now trail the way,
Requirements clear as carrots on display,
With each little change, my heart sings bright—
Leaping with joy at our code's delight!


📜 Recent review details

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

📥 Commits

Reviewing files that changed from the base of the PR and between 6822147 and 2fba57c.

📒 Files selected for processing (15)
  • apps/app/src/app/[locale]/(app)/(dashboard)/[orgId]/controls/[controlId]/components/RequirementRow.tsx (1 hunks)
  • apps/app/src/app/[locale]/(app)/(dashboard)/[orgId]/controls/[controlId]/components/SingleControl.tsx (2 hunks)
  • apps/app/src/app/[locale]/(app)/(dashboard)/[orgId]/frameworks/[frameworkInstanceId]/components/FrameworkOverview.tsx (2 hunks)
  • apps/app/src/app/[locale]/(app)/(dashboard)/[orgId]/frameworks/[frameworkInstanceId]/components/FrameworkRequirements.tsx (2 hunks)
  • apps/app/src/app/[locale]/(app)/(dashboard)/[orgId]/frameworks/[frameworkInstanceId]/page.tsx (2 hunks)
  • apps/app/src/app/[locale]/(app)/(dashboard)/[orgId]/frameworks/[frameworkInstanceId]/requirements/[requirementKey]/page.tsx (2 hunks)
  • apps/app/src/app/[locale]/(app)/(dashboard)/[orgId]/frameworks/components/FrameworkCard.tsx (2 hunks)
  • apps/app/src/app/[locale]/(app)/(dashboard)/[orgId]/frameworks/components/FrameworkList.tsx (1 hunks)
  • apps/app/src/app/[locale]/(app)/(dashboard)/[orgId]/frameworks/components/FrameworksOverview.tsx (1 hunks)
  • apps/app/src/app/[locale]/(app)/(dashboard)/[orgId]/frameworks/layout.tsx (1 hunks)
  • apps/app/src/app/[locale]/(app)/(dashboard)/[orgId]/frameworks/lib/getFrameworkDetails.ts (1 hunks)
  • apps/app/src/app/[locale]/(app)/(dashboard)/[orgId]/frameworks/lib/getFrameworkName.ts (0 hunks)
  • apps/app/src/app/[locale]/(app)/(dashboard)/[orgId]/frameworks/lib/getRequirementDetails.ts (1 hunks)
  • apps/app/src/app/[locale]/(app)/(dashboard)/[orgId]/frameworks/page.tsx (2 hunks)
  • apps/app/src/components/pages/PageWithBreadcrumb.tsx (1 hunks)
✨ Finishing Touches
  • 📝 Generate Docstrings

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ 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.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai plan to trigger planning for file edits and PR creation.
  • @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.

@coderabbitai coderabbitai Bot mentioned this pull request Apr 4, 2025

This branch had an error being deployed

1 failed and 1 inactive deployments
Preview – app — 2fba57cd Deployed Apr 3, 2025 by vercel[bot]
Preview – comp-portal — 2fba57cd Deployed Apr 3, 2025 by vercel[bot]
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