Skip to content

chore(common-ui): align shared library with Angular 21 compatibility requirements#48

Open
IndAlok wants to merge 1 commit into
PSMRI:mainfrom
IndAlok:main
Open

chore(common-ui): align shared library with Angular 21 compatibility requirements#48
IndAlok wants to merge 1 commit into
PSMRI:mainfrom
IndAlok:main

Conversation

@IndAlok
Copy link
Copy Markdown

@IndAlok IndAlok commented May 14, 2026

📋 Description

JIRA ID: N/A

Related umbrella issues:

This PR updates Common-UI compatibility required by the Angular 21 upgrade work across the dependent PSMRI UI applications.

Summary of changes:

  • Added explicit standalone: false metadata for NgModule-declared Common-UI components to preserve existing module-based behavior under newer Angular compiler semantics.
  • Updated the RD device service jQuery import to default import syntax so it remains compatible with the upgraded TypeScript and jQuery typings.
  • Kept the shared UI behavior unchanged while making Common-UI consumable by the upgraded parent applications.

Motivation:

  • The dependent UI applications are being upgraded to the latest compatible Angular and package dependency stack.
  • Common-UI is shared across those applications, so its Angular metadata and TypeScript interop need to be aligned with the upgraded compiler/toolchain.

Related application PRs:


✅ Type of Change

  • 🛠 Refactor (change that is neither a fix nor a new feature)
  • ⚙️ Config change (configuration file or build script updates)
  • 🧹 Chore (miscellaneous changes that don't modify src or test files)

ℹ️ Additional Information

Validation:

  • Verified through the dependent Angular 21 application builds.
  • Relevant application PRs are linked above for downstream validation context.

Summary by CodeRabbit

  • Refactor

    • Updated component configuration across the application for improved internal consistency.
  • Chores

    • Updated import statement in a service module for better code standards.

Note: These are internal updates with no impact on end-user functionality or features.

Review Change Stack

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 14, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 4e54c38b-b1ed-4c4d-94d1-5fc69722e5d6

📥 Commits

Reviewing files that changed from the base of the PR and between 5b6fe40 and cf6d5f7.

📒 Files selected for processing (28)
  • src/feedback/pages/feedback-public-page/feedback-public-page-component.ts
  • src/feedback/shared/feedback-dialog/feedback-dialog.component.ts
  • src/registrar/abha-components/abha-consent-form/abha-consent-form.component.ts
  • src/registrar/abha-components/abha-enter-mobile-otp-component/abha-enter-mobile-otp-component.component.ts
  • src/registrar/abha-components/abha-enter-otp-component/abha-enter-otp-component.component.ts
  • src/registrar/abha-components/abha-generation-success-component/abha-generation-success-component.component.ts
  • src/registrar/abha-components/abha-mobile-component/abha-mobile-component.component.ts
  • src/registrar/abha-components/abha-verify-success-component/abha-verify-success-component.component.ts
  • src/registrar/abha-components/biometric-authentication/biometric-authentication.component.ts
  • src/registrar/abha-components/display-abha-card/display-abha-card.component.ts
  • src/registrar/abha-components/download-search-abha/download-search-abha.component.ts
  • src/registrar/abha-components/generate-abha-component/generate-abha-component.component.ts
  • src/registrar/abha-components/health-id-display-modal/health-id-display-modal.component.ts
  • src/registrar/beneficiary-details/beneficiary-details.component.ts
  • src/registrar/dashboard/dashboard.component.ts
  • src/registrar/family-tagging/create-family-tagging/create-family-tagging.component.ts
  • src/registrar/family-tagging/edit-family-tagging/edit-family-tagging.component.ts
  • src/registrar/family-tagging/family-tagging-details/family-tagging-details.component.ts
  • src/registrar/registration/abha-information/abha-information.component.ts
  • src/registrar/registration/consent-form/consent-form.component.ts
  • src/registrar/registration/location-information/location-information.component.ts
  • src/registrar/registration/other-information/other-information.component.ts
  • src/registrar/registration/personal-information/personal-information.component.ts
  • src/registrar/registration/registration.component.ts
  • src/registrar/search-dialog/search-dialog.component.ts
  • src/registrar/search-family/search-family.component.ts
  • src/registrar/search/search.component.ts
  • src/registrar/services/rddevice.service.ts

📝 Walkthrough

Walkthrough

This PR updates 27 Angular components across the feedback and registrar modules to explicitly set standalone: false in their @Component decorators, standardizing component compilation behavior. Additionally, a jQuery import in the rddevice service is modernized from namespace to default import syntax. No runtime logic or component behavior is modified.

Changes

Component Standalone Configuration

Layer / File(s) Summary
Feedback module components
src/feedback/pages/feedback-public-page/feedback-public-page-component.ts, src/feedback/shared/feedback-dialog/feedback-dialog.component.ts
FeedbackPublicPageComponent and FeedbackDialogComponent are updated to explicitly set standalone: false in their @Component metadata.
ABHA component suite
src/registrar/abha-components/abha-consent-form/abha-consent-form.component.ts, src/registrar/abha-components/abha-enter-mobile-otp-component/abha-enter-mobile-otp-component.component.ts, src/registrar/abha-components/abha-enter-otp-component/abha-enter-otp-component.component.ts, src/registrar/abha-components/abha-generation-success-component/abha-generation-success-component.component.ts, src/registrar/abha-components/abha-mobile-component/abha-mobile-component.component.ts, src/registrar/abha-components/abha-verify-success-component/abha-verify-success-component.component.ts, src/registrar/abha-components/biometric-authentication/biometric-authentication.component.ts, src/registrar/abha-components/display-abha-card/display-abha-card.component.ts, src/registrar/abha-components/download-search-abha/download-search-abha.component.ts, src/registrar/abha-components/generate-abha-component/generate-abha-component.component.ts, src/registrar/abha-components/health-id-display-modal/health-id-display-modal.component.ts
Eleven ABHA-related components across biometric authentication, consent, OTP entry, card display, and success/verification features are updated to explicitly set standalone: false, with several also reformatting styleUrls entries into consistent multiline arrays with trailing commas.
Registration module form components
src/registrar/registration/abha-information/abha-information.component.ts, src/registrar/registration/consent-form/consent-form.component.ts, src/registrar/registration/location-information/location-information.component.ts, src/registrar/registration/other-information/other-information.component.ts, src/registrar/registration/personal-information/personal-information.component.ts, src/registrar/registration/registration.component.ts
Six registration form components spanning ABHA information, consent, location, other details, personal information, and main registration are configured with explicit standalone: false, with the registration component also adjusting styleUrls formatting.
Dashboard and family-tagging components
src/registrar/dashboard/dashboard.component.ts, src/registrar/beneficiary-details/beneficiary-details.component.ts, src/registrar/family-tagging/create-family-tagging/create-family-tagging.component.ts, src/registrar/family-tagging/edit-family-tagging/edit-family-tagging.component.ts, src/registrar/family-tagging/family-tagging-details/family-tagging-details.component.ts, src/registrar/search-dialog/search-dialog.component.ts, src/registrar/search-family/search-family.component.ts, src/registrar/search/search.component.ts
Eight utility components including dashboard, beneficiary details, three family-tagging variants, and search variants are updated with explicit standalone: false metadata in their decorators.

Import Modernization

Layer / File(s) Summary
jQuery import style update
src/registrar/services/rddevice.service.ts
jQuery import pattern is modernized from namespace import (import * as $ from 'jquery') to default import (import $ from 'jquery'), simplifying the module dependency syntax.

🎯 2 (Simple) | ⏱️ ~10 minutes

🐰 A rabbit hops through the codebase with glee,
Setting standalone to false, don't you see?
Components aligned from feedback to ABHA's care,
jQuery defaults imported with style to spare!

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and accurately describes the main change: updating Angular components with standalone: false metadata and jQuery imports to align with Angular 21 compatibility requirements.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Tip

💬 Introducing Slack Agent: The best way for teams to turn conversations into code.

Slack Agent is built on CodeRabbit's deep understanding of your code, so your team can collaborate across the entire SDLC without losing context.

  • Generate code and open pull requests
  • Plan features and break down work
  • Investigate incidents and troubleshoot customer tickets together
  • Automate recurring tasks and respond to alerts with triggers
  • Summarize progress and report instantly

Built for teams:

  • Shared memory across your entire org—no repeating context
  • Per-thread sandboxes to safely plan and execute work
  • Governance built-in—scoped access, auditability, and budget controls

One agent for your entire SDLC. Right inside Slack.

👉 Get started


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

Comment @coderabbitai help to get the list of available commands and usage tips.

@sonarqubecloud
Copy link
Copy Markdown

Quality Gate Failed Quality Gate failed

Failed conditions
4.0% Duplication on New Code (required ≤ 3%)

See analysis details on SonarQube Cloud

@IndAlok
Copy link
Copy Markdown
Author

IndAlok commented May 14, 2026

@drtechie Can you please review? Will be glad to take up any suggestions/feedback about the same, though pretty simple changes :)

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.

1 participant