Skip to content

WEB-954: Performance, Subscription management migration#3590

Open
alberto-art3ch wants to merge 1 commit into
openMF:devfrom
alberto-art3ch:WEB-954/migrate-subscription-management
Open

WEB-954: Performance, Subscription management migration#3590
alberto-art3ch wants to merge 1 commit into
openMF:devfrom
alberto-art3ch:WEB-954/migrate-subscription-management

Conversation

@alberto-art3ch
Copy link
Copy Markdown
Collaborator

@alberto-art3ch alberto-art3ch commented May 19, 2026

Description

Migrate subscription management from Subject / takeUntil to DestroyRef / takeUntilDestroyed across the application

Refactor to replace the manual subscription cleanup pattern (Subject<void> + takeUntil(this.destroy$) + ngOnDestroy) with Angular's built-in DestroyRef token and the takeUntilDestroyed() operator.

Related issues and discussion

WEB-954

Screenshots, if any

Checklist

Please make sure these boxes are checked before submitting your pull request - thanks!

  • If you have multiple commits please combine them into one commit by squashing them.

  • Read and understood the contribution guidelines at web-app/.github/CONTRIBUTING.md.

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 19, 2026

Important

Review skipped

Too many files!

This PR contains 182 files, which is 32 over the limit of 150.

To get a review, narrow the scope:
• coderabbit review --type committed # exclude uncommitted changes
• coderabbit review --dir # limit to a subdirectory
• coderabbit review --base # compare against a closer base

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 6b696919-37d5-487e-ae78-b7e22a50b1ab

📥 Commits

Reviewing files that changed from the base of the PR and between d3a4a99 and 1289e44.

⛔ Files ignored due to path filters (1)
  • package-lock.json is excluded by !**/package-lock.json and included by **/*
📒 Files selected for processing (182)
  • .gitignore
  • .stylelintrc
  • angular.json
  • package.json
  • scripts/check-file-headers.js
  • src/app/account-transfers/create-standing-instructions/create-standing-instructions.component.ts
  • src/app/account-transfers/make-account-transfers/make-account-transfers.component.ts
  • src/app/accounting/accounting-rules/create-rule/create-rule.component.ts
  • src/app/accounting/accounting-rules/edit-rule/edit-rule.component.ts
  • src/app/accounting/chart-of-accounts/create-gl-account/create-gl-account.component.ts
  • src/app/accounting/chart-of-accounts/edit-gl-account/edit-gl-account.component.ts
  • src/app/accounting/closing-entries/closing-entries.component.ts
  • src/app/accounting/financial-activity-mappings/create-financial-activity-mapping/create-financial-activity-mapping.component.ts
  • src/app/accounting/financial-activity-mappings/edit-financial-activity-mapping/edit-financial-activity-mapping.component.ts
  • src/app/accounting/frequent-postings/frequent-postings.component.ts
  • src/app/accounting/migrate-opening-balances/migrate-opening-balances.component.ts
  • src/app/centers/centers-view/center-actions/attach-center-meeting/attach-center-meeting.component.ts
  • src/app/centers/centers-view/center-actions/edit-center-meeting/edit-center-meeting.component.ts
  • src/app/centers/centers-view/center-actions/manage-groups/manage-groups.component.ts
  • src/app/centers/centers-view/centers-view.component.ts
  • src/app/centers/create-center/create-center.component.ts
  • src/app/clients/client-stepper/client-family-members-step/client-family-member-dialog/client-family-member-dialog.component.ts
  • src/app/clients/client-stepper/client-general-step/client-general-step.component.ts
  • src/app/clients/clients-view/client-actions/add-client-charge/add-client-charge.component.ts
  • src/app/clients/clients-view/client-actions/add-client-collateral/add-client-collateral.component.ts
  • src/app/clients/clients-view/clients-view.component.html
  • src/app/clients/clients-view/clients-view.component.scss
  • src/app/clients/clients-view/clients-view.component.ts
  • src/app/clients/clients-view/family-members-tab/add-family-member/add-family-member.component.ts
  • src/app/clients/clients-view/family-members-tab/edit-family-member/edit-family-member.component.ts
  • src/app/clients/clients-view/general-tab/general-tab.component.ts
  • src/app/clients/clients-view/personal-data-tab/personal-data-tab.component.ts
  • src/app/clients/clients.component.ts
  • src/app/clients/edit-client/edit-client.component.ts
  • src/app/clients/services/external-national-id.service.ts
  • src/app/collections/collection-sheet/collection-sheet.component.ts
  • src/app/collections/individual-collection-sheet/individual-collection-sheet.component.ts
  • src/app/core/shell/breadcrumb/breadcrumb.component.ts
  • src/app/core/shell/toolbar/toolbar.component.html
  • src/app/core/shell/toolbar/toolbar.component.scss
  • src/app/deposits/fixed-deposits/fixed-deposit-account-stepper/fixed-deposit-account-details-step/fixed-deposit-account-details-step.component.ts
  • src/app/deposits/fixed-deposits/fixed-deposit-account-stepper/fixed-deposit-account-settings-step/fixed-deposit-account-settings-step.component.ts
  • src/app/deposits/fixed-deposits/fixed-deposits-account-actions/add-charge-fixed-deposits-account/add-charge-fixed-deposits-account.component.ts
  • src/app/deposits/fixed-deposits/fixed-deposits-account-actions/close-fixed-deposits-account/close-fixed-deposits-account.component.ts
  • src/app/deposits/fixed-deposits/fixed-deposits-account-actions/premature-close-fixed-deposits-account/premature-close-fixed-deposits-account.component.ts
  • src/app/deposits/recurring-deposits/recurring-deposits-account-actions/add-charge-recurring-deposits-account/add-charge-recurring-deposits-account.component.ts
  • src/app/deposits/recurring-deposits/recurring-deposits-account-actions/close-recurring-deposits-account/close-recurring-deposits-account.component.ts
  • src/app/deposits/recurring-deposits/recurring-deposits-account-stepper/recurring-deposits-account-details-step/recurring-deposits-account-details-step.component.ts
  • src/app/deposits/recurring-deposits/recurring-deposits-account-stepper/recurring-deposits-account-settings-step/recurring-deposits-account-settings-step.component.ts
  • src/app/groups/create-group/create-group.component.ts
  • src/app/groups/groups-view/group-actions/attach-group-meeting/attach-group-meeting.component.ts
  • src/app/groups/groups-view/group-actions/edit-group-meeting/edit-group-meeting.component.ts
  • src/app/groups/groups-view/group-actions/group-transfer-clients/group-transfer-clients.component.ts
  • src/app/groups/groups-view/group-actions/manage-group-members/manage-group-members.component.ts
  • src/app/groups/groups-view/groups-view.component.ts
  • src/app/home/dashboard/amount-collected-pie/amount-collected-pie.component.ts
  • src/app/home/dashboard/amount-disbursed-pie/amount-disbursed-pie.component.ts
  • src/app/home/home.component.html
  • src/app/home/home.component.scss
  • src/app/home/home.component.ts
  • src/app/home/timeout-dialog/idle-timeout.service.ts
  • src/app/loans/common-resolvers/loans-account-transaction.resolver.ts
  • src/app/loans/custom-dialog/loans-account-add-collateral-dialog/loans-account-add-collateral-dialog.component.ts
  • src/app/loans/loans-account-stepper/loans-account-details-step/loans-account-details-step.component.ts
  • src/app/loans/loans-account-stepper/loans-account-terms-step/loans-account-terms-step.component.ts
  • src/app/loans/loans-view/account-details/account-details.component.html
  • src/app/loans/loans-view/general-tab/general-tab.component.html
  • src/app/loans/loans-view/general-tab/general-tab.component.ts
  • src/app/loans/loans-view/general-tab/loan-summary-balance-component/loan-summary-balance-component.component.html
  • src/app/loans/loans-view/general-tab/loan-summary-balance-component/loan-summary-balance-component.component.scss
  • src/app/loans/loans-view/general-tab/loan-summary-balance-component/loan-summary-balance-component.component.ts
  • src/app/loans/loans-view/loan-account-actions/add-loan-charge/add-loan-charge.component.ts
  • src/app/loans/loans-view/loan-account-actions/create-guarantor/create-guarantor.component.ts
  • src/app/loans/loans-view/loan-account-actions/foreclosure/foreclosure.component.ts
  • src/app/loans/loans-view/loan-account-actions/prepay-loan/prepay-loan.component.ts
  • src/app/loans/loans-view/loans-view.component.html
  • src/app/loans/loans-view/loans-view.component.scss
  • src/app/loans/loans-view/loans-view.component.ts
  • src/app/loans/loans-view/transactions-tab/transactions-tab.component.html
  • src/app/loans/loans-view/transactions-tab/transactions-tab.component.ts
  • src/app/loans/loans-view/transactions/view-transaction/view-transaction.component.html
  • src/app/loans/loans-view/transactions/view-transaction/view-transaction.component.scss
  • src/app/loans/loans-view/transactions/view-transaction/view-transaction.component.ts
  • src/app/loans/loans-view/working-capital/loan-amortization-schedule-tab/loan-amortization-schedule-tab.component.html
  • src/app/loans/loans-view/working-capital/loan-period-payment-rates/loan-period-payment-rates.component.ts
  • src/app/loans/loans.service.ts
  • src/app/loans/models/loan-account.model.ts
  • src/app/navigation/navigation-routing.module.ts
  • src/app/navigation/navigation.component.ts
  • src/app/navigation/offices.resolver.ts
  • src/app/organization/adhoc-query/create-adhoc-query/create-adhoc-query.component.ts
  • src/app/organization/adhoc-query/edit-adhoc-query/edit-adhoc-query.component.ts
  • src/app/organization/bulk-import/view-bulk-import/view-bulk-import.component.ts
  • src/app/organization/currencies/manage-currencies/manage-currencies.component.ts
  • src/app/organization/entity-data-table-checks/create-entity-data-table-checks/create-entity-data-table-checks.component.ts
  • src/app/organization/fund-mapping/fund-mapping.component.ts
  • src/app/organization/holidays/create-holiday/create-holiday.component.ts
  • src/app/organization/holidays/edit-holiday/edit-holiday.component.ts
  • src/app/organization/holidays/holidays.component.ts
  • src/app/organization/offices/common-resolvers/office.resolver.ts
  • src/app/organization/offices/common-resolvers/offices.resolver.ts
  • src/app/organization/organization-routing.module.ts
  • src/app/organization/sms-campaigns/sms-campaign-stepper/edit-sms-campaign-step/edit-business-rule-parameters/edit-business-rule-parameters.component.ts
  • src/app/organization/sms-campaigns/sms-campaign-stepper/sms-campaign-step/business-rule-parameters/business-rule-parameters.component.ts
  • src/app/organization/sms-campaigns/sms-campaign-stepper/sms-campaign-step/sms-campaign-step.component.ts
  • src/app/organization/sms-campaigns/view-campaign/view-campaign.component.ts
  • src/app/organization/standing-instructions-history/standing-instructions-history.component.ts
  • src/app/organization/tellers/cashiers/transactions/transactions.component.ts
  • src/app/pipes/format-number.pipe.ts
  • src/app/products/charges/create-charge/create-charge.component.ts
  • src/app/products/charges/view-charge/view-charge.component.html
  • src/app/products/charges/view-charge/view-charge.component.ts
  • src/app/products/fixed-deposit-products/fixed-deposit-product-stepper/fixed-deposit-product-accounting-step/fixed-deposit-product-accounting-step.component.ts
  • src/app/products/fixed-deposit-products/fixed-deposit-product-stepper/fixed-deposit-product-charges-step/fixed-deposit-product-charges-step.component.ts
  • src/app/products/fixed-deposit-products/fixed-deposit-product-stepper/fixed-deposit-product-interest-rate-chart-step/fixed-deposit-product-interest-rate-chart-step.component.ts
  • src/app/products/fixed-deposit-products/fixed-deposit-product-stepper/fixed-deposit-product-settings-step/fixed-deposit-product-settings-step.component.ts
  • src/app/products/loan-products/common/loan-product-summary/loan-product-summary-adv-accounting/loan-product-summary-adv-accounting.component.ts
  • src/app/products/loan-products/loan-product-stepper/loan-product-accounting-step/loan-product-accounting-step.component.ts
  • src/app/products/loan-products/loan-product-stepper/loan-product-capitalized-income-step/loan-product-deferred-income-recognition-step.component.ts
  • src/app/products/loan-products/loan-product-stepper/loan-product-charges-step/loan-product-charges-step.component.ts
  • src/app/products/loan-products/loan-product-stepper/loan-product-interest-refund-step/loan-product-interest-refund-step.component.ts
  • src/app/products/loan-products/loan-product-stepper/loan-product-payment-strategy-step/advance-payment-allocation-tab/advance-payment-allocation-tab.component.ts
  • src/app/products/loan-products/loan-product-stepper/loan-product-settings-step/loan-product-settings-step.component.ts
  • src/app/products/loan-products/loan-product-stepper/loan-product-terms-step/loan-product-terms-step.component.ts
  • src/app/products/manage-tax-components/create-tax-component/create-tax-component.component.ts
  • src/app/products/products-mix/create-product-mix/create-product-mix.component.ts
  • src/app/products/recurring-deposit-products/recurring-deposit-product-stepper/recurring-deposit-product-accounting-step/recurring-deposit-product-accounting-step.component.ts
  • src/app/products/recurring-deposit-products/recurring-deposit-product-stepper/recurring-deposit-product-charges-step/recurring-deposit-product-charges-step.component.ts
  • src/app/products/recurring-deposit-products/recurring-deposit-product-stepper/recurring-deposit-product-interest-rate-chart-step/recurring-deposit-product-interest-rate-chart-step.component.ts
  • src/app/products/recurring-deposit-products/recurring-deposit-product-stepper/recurring-deposit-product-settings-step/recurring-deposit-product-settings-step.component.ts
  • src/app/products/saving-products/saving-product-stepper/saving-product-accounting-step/saving-product-accounting-step.component.ts
  • src/app/products/saving-products/saving-product-stepper/saving-product-charges-step/saving-product-charges-step.component.ts
  • src/app/products/saving-products/saving-product-stepper/saving-product-settings-step/saving-product-settings-step.component.ts
  • src/app/products/share-products/share-product-stepper/share-product-accounting-step/share-product-accounting-step.component.ts
  • src/app/products/share-products/share-product-stepper/share-product-charges-step/share-product-charges-step.component.ts
  • src/app/reports/run-report/run-report.component.ts
  • src/app/reports/run-report/table-and-sms/table-and-sms.component.ts
  • src/app/savings/saving-account-actions/add-charge-savings-account/add-charge-savings-account.component.ts
  • src/app/savings/saving-account-actions/close-savings-account/close-savings-account.component.ts
  • src/app/savings/savings-account-stepper/savings-account-details-step/savings-account-details-step.component.ts
  • src/app/savings/savings-account-stepper/savings-account-terms-step/savings-account-terms-step.component.ts
  • src/app/settings/settings.component.ts
  • src/app/shared/account-header/account-header.component.html
  • src/app/shared/account-header/account-header.component.scss
  • src/app/shared/account-header/account-header.component.ts
  • src/app/shared/accounting/gl-account-selector/gl-account-selector.component.ts
  • src/app/shared/footer/footer.component.html
  • src/app/shared/footer/footer.component.ts
  • src/app/shared/icons.module.ts
  • src/app/shared/m3-ui/m3-icon/m3-icon.component.scss
  • src/app/shared/shared.module.ts
  • src/app/shared/undo-dialog/undo-dialog.component.ts
  • src/app/shares/shares-account-stepper/shares-account-charges-step/shares-account-charges-step.component.ts
  • src/app/shares/shares-account-stepper/shares-account-details-step/shares-account-details-step.component.ts
  • src/app/system/account-number-preferences/create-account-number-preference/create-account-number-preference.component.ts
  • src/app/system/manage-data-tables/column-dialog/column-dialog.component.ts
  • src/app/system/manage-data-tables/create-data-table/create-data-table.component.ts
  • src/app/system/manage-data-tables/edit-data-table/edit-data-table.component.ts
  • src/app/system/manage-hooks/add-event-dialog/add-event-dialog.component.ts
  • src/app/system/manage-hooks/create-hook/create-hook.component.ts
  • src/app/system/manage-reports/create-report/create-report.component.ts
  • src/app/system/manage-reports/edit-report/edit-report.component.ts
  • src/app/tasks/checker-inbox-and-tasks-tabs/council-approval/council-approval.component.ts
  • src/app/users/create-user/create-user.component.ts
  • src/app/web-app.component.ts
  • src/app/zitadel/shared/change-password-dialog/change-password-dialog.component.ts
  • src/app/zitadel/users/create-user/create-user.component.ts
  • src/assets/translations/cs-CS.json
  • src/assets/translations/de-DE.json
  • src/assets/translations/en-US.json
  • src/assets/translations/es-CL.json
  • src/assets/translations/es-MX.json
  • src/assets/translations/fr-FR.json
  • src/assets/translations/it-IT.json
  • src/assets/translations/ko-KO.json
  • src/assets/translations/lt-LT.json
  • src/assets/translations/lv-LV.json
  • src/assets/translations/ne-NE.json
  • src/assets/translations/pt-PT.json
  • src/assets/translations/sw-SW.json
  • src/environments/.env.ts
  • src/index.html

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Note

.coderabbit.yaml has unrecognized properties

CodeRabbit is using all valid settings from your configuration. Unrecognized properties (listed below) have been ignored and may indicate typos or deprecated fields that can be removed.

⚠️ Parsing warnings (1)
Validation error: Unrecognized key(s) in object: 'pre_merge_checks'
⚙️ Configuration instructions
  • Please see the configuration documentation for more information.
  • You can also validate your configuration using the online YAML validator.
  • 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
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

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.

@alberto-art3ch alberto-art3ch force-pushed the WEB-954/migrate-subscription-management branch from e48ea25 to b0043f5 Compare May 19, 2026 04:19
Copy link
Copy Markdown
Contributor

@IOhacker IOhacker left a comment

Choose a reason for hiding this comment

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

This seems AI generated, too many file changes in a PR to be properly tested

@alberto-art3ch alberto-art3ch force-pushed the WEB-954/migrate-subscription-management branch 3 times, most recently from 066ea2c to 9d054f8 Compare May 22, 2026 18:40
@alberto-art3ch alberto-art3ch force-pushed the WEB-954/migrate-subscription-management branch from 9d054f8 to 1289e44 Compare May 23, 2026 01:21
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