Skip to content

fix(rental-agreement): Conditionally rendered input connected to wrong field #18973

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

Merged
merged 1 commit into from
May 12, 2025

Conversation

hebaulf
Copy link
Contributor

@hebaulf hebaulf commented May 12, 2025

Conditionally rendered input connected to wrong field

What

  • Fix an issue where a conditionally rendered input was not being rendered as expected and was accidentally connected to an option of a different dropdown element.
  • Removed options for "index type", should only be one option as is.

Checklist:

  • I have performed a self-review of my own code
  • I have made corresponding changes to the documentation
  • My changes generate no new warnings
  • I have added tests that prove my fix is effective or that my feature works
  • Formatting passes locally with my changes
  • I have rebased against main before asking for a review

Summary by CodeRabbit

  • New Features
    • Improved form logic for rental payment date and method options, providing clearer field visibility based on user selections.
  • Refactor
    • Updated and clarified internal logic for handling rental payment method and date options.
  • Chores
    • Removed obsolete rental amount index options, now only supporting the consumer price index.

@hebaulf hebaulf requested a review from a team as a code owner May 12, 2025 11:28
Copy link
Contributor

coderabbitai bot commented May 12, 2025

Walkthrough

The changes update utility functions and enums related to rental payment methods and index types in the rental agreement module. Function names and logic are corrected for clarity, a new utility for payment date options is added, and two rental amount index types are removed from both the enum and related utility function.

Changes

File(s) Change Summary
libs/application/templates/rental-agreement/src/forms/draft/rentalPeriodSubsections/rentalPeriodAmount.ts Updated imports and usage of utility functions for payment method and date options to use new names and corrected logic.
libs/application/templates/rental-agreement/src/utils/rentalPeriodUtils.ts Added rentalPaymentDateIsOther; renamed and corrected logic for rentalPaymentMethodIsBankTransfer and rentalPaymentMethodIsOther.
libs/application/templates/rental-agreement/src/utils/enums.ts Removed CONSTRUCTION_COST_INDEX and WAGE_INDEX from the RentalAmountIndexTypes enum.
libs/application/templates/rental-agreement/src/utils/utils.ts Removed CONSTRUCTION_COST_INDEX and WAGE_INDEX options from the getRentalAmountIndexTypes function's returned array.

Sequence Diagram(s)

sequenceDiagram
    participant Form as RentalPeriodAmount Form
    participant Utils as rentalPeriodUtils
    participant Enums as enums/utils

    Form->>Utils: rentalPaymentMethodIsBankTransfer(answers)
    Form->>Utils: rentalPaymentMethodIsOther(answers)
    Form->>Utils: rentalPaymentDateIsOther(answers)
    Form->>Enums: getRentalAmountIndexTypes()
    Utils->>Enums: Use RentalAmountIndexTypes (CONSUMER_PRICE_INDEX only)
Loading

Tip

⚡️ Faster reviews with caching
  • CodeRabbit now supports caching for code and dependencies, helping speed up reviews. This means quicker feedback, reduced wait times, and a smoother review experience overall. Cached data is encrypted and stored securely. This feature will be automatically enabled for all accounts on May 16th. To opt out, configure Review - Disable Cache at either the organization or repository level. If you prefer to disable all data retention across your organization, simply turn off the Data Retention setting under your Organization Settings.

Enjoy the performance boost—your workflow just got faster.

✨ 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.

Support

Need help? Create a ticket on our support page for assistance with any issues or questions.

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 generate sequence diagram to generate a sequence diagram of the changes in this PR.
  • @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.

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.

@hebaulf hebaulf changed the title Fix(rental-agreement): Conditionally rendered input connected to wrong field fix(rental-agreement): Conditionally rendered input connected to wrong field May 12, 2025
Copy link

nx-cloud bot commented May 12, 2025

View your CI Pipeline Execution ↗ for commit f505380.

Command Status Duration Result
nx run-many --projects application-system-api -... ✅ Succeeded 9m 7s View ↗
nx run-many --target=build --projects=api --par... ✅ Succeeded 5m 26s View ↗
nx run-many --target=build --projects=applicati... ✅ Succeeded 3m 46s View ↗
nx run-many --projects application-system-form,... ✅ Succeeded 1m 20s View ↗
nx run-many --target=build --projects=applicati... ✅ Succeeded 1m 31s View ↗
nx run-many -t lint --output-style=static --pro... ✅ Succeeded 1s View ↗
nx run-many --projects api,api-domains-applicat... ✅ Succeeded 6s View ↗
nx run-many --target=codegen/frontend-client --... ✅ Succeeded 13s View ↗
Additional runs (3) ✅ Succeeded ... View ↗

☁️ Nx Cloud last updated this comment at 2025-05-12 11:51:27 UTC

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: 3

📜 Review details

Configuration used: .coderabbit.yaml
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between ecb67f9 and f505380.

📒 Files selected for processing (4)
  • libs/application/templates/rental-agreement/src/forms/draft/rentalPeriodSubsections/rentalPeriodAmount.ts (3 hunks)
  • libs/application/templates/rental-agreement/src/utils/enums.ts (0 hunks)
  • libs/application/templates/rental-agreement/src/utils/rentalPeriodUtils.ts (2 hunks)
  • libs/application/templates/rental-agreement/src/utils/utils.ts (0 hunks)
💤 Files with no reviewable changes (2)
  • libs/application/templates/rental-agreement/src/utils/enums.ts
  • libs/application/templates/rental-agreement/src/utils/utils.ts
🧰 Additional context used
📓 Path-based instructions (1)
`libs/**/*`: "Confirm that the code adheres to the following: - Reusability of components and hooks across different NextJS apps. - TypeScript usage for defining props and exportin...

libs/**/*: "Confirm that the code adheres to the following:

  • Reusability of components and hooks across different NextJS apps.
  • TypeScript usage for defining props and exporting types.
  • Effective tree-shaking and bundling practices."
  • libs/application/templates/rental-agreement/src/forms/draft/rentalPeriodSubsections/rentalPeriodAmount.ts
  • libs/application/templates/rental-agreement/src/utils/rentalPeriodUtils.ts
🧬 Code Graph Analysis (1)
libs/application/templates/rental-agreement/src/forms/draft/rentalPeriodSubsections/rentalPeriodAmount.ts (2)
libs/application/templates/rental-agreement/src/utils/rentalPeriodUtils.ts (3)
  • rentalPaymentDateIsOther (20-26)
  • rentalPaymentMethodIsBankTransfer (28-34)
  • rentalPaymentMethodIsOther (36-42)
libs/application/core/src/lib/fieldBuilders.ts (1)
  • buildTextField (294-335)
🔇 Additional comments (6)
libs/application/templates/rental-agreement/src/forms/draft/rentalPeriodSubsections/rentalPeriodAmount.ts (4)

25-27: Nice improvement to the import statements.

The renamed utility functions now clearly indicate their purpose - separating payment method checks from payment date checks. This aligns with the corrections made in the utils file.


115-116: Correct condition for bank transfer national ID field.

The field is now properly displayed only when bank transfer is selected as the payment method, using the renamed and fixed utility function.


122-123: Correct condition for bank account number field.

Similar to the national ID field, this now correctly shows only when bank transfer is selected as the payment method.


128-129: Fixed condition for "other" payment method text field.

This field now correctly appears only when "Other" is selected as the payment method, using the appropriately named utility function.

libs/application/templates/rental-agreement/src/utils/rentalPeriodUtils.ts (2)

5-5: Added required import for payment date options.

The import for RentalAmountPaymentDateOptions was added to support the new utility function.


20-26: Added new utility function for payment date option check.

This new function correctly checks if the payment date option is set to "OTHER", following the same pattern as other utility functions. This addition is essential for properly controlling the display of the payment date "other" input field.

@datadog-island-is
Copy link

datadog-island-is bot commented May 12, 2025

Datadog Report

All test runs 81588d3 🔗

3 Total Test Services: 0 Failed, 3 Passed

Test Services
Service Name Failed Known Flaky New Flaky Passed Skipped Total Time Test Service View
api 0 0 0 4 0 2.69s Link
application-system-api 0 0 0 46 0 9m 3.62s Link
application-ui-shell 0 0 0 72 0 1m 10.16s Link

@hebaulf hebaulf added this pull request to the merge queue May 12, 2025
Merged via the queue into main with commit 895fe59 May 12, 2025
31 of 32 checks passed
@hebaulf hebaulf deleted the fix/conflict-of-conditionally-rendered-inputs branch May 12, 2025 13:28
robertaandersen pushed a commit that referenced this pull request May 13, 2025
…g field (#18973)

Fix conditionally rendered input connected to wrong field. Remove two options for index type.
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