Skip to content

Conversation

@gabriellsh
Copy link
Member

@gabriellsh gabriellsh commented Sep 25, 2025

Proposed changes (including videos or screenshots)

Issue(s)

VGA-6

Steps to test or reproduce

Further comments

Summary by CodeRabbit

  • Refactor
    • Removed in-app VoIP experience: call popups (incoming/outgoing/ongoing/error), dialer, action buttons, contact info display, timer/status, transfer modal, and device settings.
    • Updated Navigation: Omnichannel menu only; VoIP toggle and dialpad removed.
    • User interactions: Voice call options removed from room toolboxes and user info panels.
  • Tests
    • Removed Storybook stories and test suites related to VoIP components and flows.

@dionisio-bot
Copy link
Contributor

dionisio-bot bot commented Sep 25, 2025

Looks like this PR is not ready to merge, because of the following issues:

  • This PR is targeting the wrong base branch. It should target 7.12.0, but it targets 7.11.0

Please fix the issues and try again

If you have any trouble, please check the PR guidelines

@changeset-bot
Copy link

changeset-bot bot commented Sep 25, 2025

⚠️ No Changeset found

Latest commit: 29b569e

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@gabriellsh gabriellsh added this to the 7.12.0 milestone Sep 25, 2025
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Sep 25, 2025

Walkthrough

This PR removes legacy VoIP UI, hooks, context, client, and related utilities across packages/ui-voip and Meteor client usage. NavBar controls are simplified to only omnichannel items; all VoIP toggler/dialer logic, components, stories, tests, and provider/context are deleted. Root exports are updated to expose MediaCallProvider instead.

Changes

Cohort / File(s) Summary
Meteor NavBar controls
apps/meteor/client/NavBarV2/NavBarControls/NavBarControlsMenu.tsx, .../NavBarControlsWithCall.tsx, .../NavBarControlsWithData.tsx
Remove voipItems prop/usage; menus now consider only omnichannelItems; pressed/disabled logic simplified; augmented omnichannel items used where call is enabled.
Meteor NavBar VoIP group (toggles/hooks)
apps/meteor/client/NavBarV2/NavBarVoipGroup/NavBarItemVoipToggler.tsx, .../hooks/useVoipDialerAction.ts, .../hooks/useVoipTogglerAction.ts
Delete VoIP toggler component and associated action hooks.
Meteor room/user actions and sidebar
apps/meteor/client/hooks/roomActions/useVoiceCallRoomAction.tsx, apps/meteor/client/views/room/hooks/useUserInfoActions/actions/useVoipCallAction.tsx, apps/meteor/client/sidebar/header/hooks/useVoipItemsSection.tsx
Remove room/user VoIP actions and sidebar VoIP items section.
UI VoIP components (stories/tests included)
packages/ui-voip/src/components/VoipActionButton/*, .../VoipActions/*, .../VoipContactId/*, .../VoipDialPad/*, .../VoipPopup/**, .../VoipPopupDraggable/*, .../VoipPopupPortal/*, .../VoipSettingsButton/**, .../VoipStatus/*, .../VoipTimer/*, .../VoipTransferModal/*, .../components/index.ts
Remove components, stories, specs, and barrel re-exports for all legacy VoIP UI elements (buttons, actions, contact display, dial pad, popup, draggable, portal, settings button, status, timer, transfer modal).
UI VoIP context/definitions/hooks
packages/ui-voip/src/contexts/VoipContext.tsx, .../definitions/VoipSession.ts, .../definitions/index.ts, .../hooks/index.ts, .../hooks/useVoip*.tsx
Delete VoIP React context, session types/guards, hook re-exports, and all VoIP hooks (state, session, API, client, dialer, events, effect, contact/details, transfer modal). Adjust index barrels accordingly.
UI VoIP core library
packages/ui-voip/src/lib/VoipClient.ts, .../LocalStream.ts, .../RemoteStream.ts, .../Stream.ts, .../getMainInviteRejectionReason.ts, .../parseInviteRejectionReasons.ts, .../utils/setPreciseInterval.ts, related specs
Remove SIP/VoIP client and media stream abstractions, invite-rejection utilities, and precise interval helper; delete corresponding tests.
UI VoIP provider and tests infra
packages/ui-voip/src/providers/VoipProvider.tsx, packages/ui-voip/src/tests/mocks/index.tsx, packages/ui-voip/src/tests/utils/replaceReactAriaIds.ts
Remove legacy VoIP provider, test mocks/providers, and testing utility.
UI VoIP package entrypoint
packages/ui-voip/src/index.ts
Drop VoipProvider and legacy exports; add export for v2/MediaCallProvider.

Sequence Diagram(s)

sequenceDiagram
  participant User
  participant NavBarControlsWithData
  participant NavBarControlsWithCall
  participant NavBarControlsMenu

  User->>NavBarControlsWithData: Open controls
  NavBarControlsWithData->>NavBarControlsWithCall: Pass omnichannelItems (no VoIP)
  NavBarControlsWithCall->>NavBarControlsMenu: omnichannelItemsOnly, isPressed
  NavBarControlsMenu->>User: Render Omnichannel section
Loading

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~60 minutes

Possibly related PRs

  • feat: Media Call Client #36717 — Introduces Media Call v2 API and provider; aligns with removal of legacy VoIP provider/components and new export of MediaCallProvider.

Suggested labels

stat: ready to merge, stat: QA assured

Suggested reviewers

  • tassoevan
  • MartinSchoeler
  • KevLehman

Poem

A rabbit once dialed with a bop and a beep,
Now hops through menus tidy and neat.
The phones all hushed, old wires at rest—
Omnichannel only, lean is best.
With ears up high, I thump with glee:
“Onward to v2—carrots for me!” 🥕📴

Pre-merge checks and finishing touches

✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title Check ✅ Passed The title clearly and concisely indicates that this PR is a chore to remove outdated VoIP files and references, which aligns with the substantial deletion of VoIP-related components, hooks, and tests observed in the changeset.
Docstring Coverage ✅ Passed No functions found in the changes. Docstring coverage check skipped.
✨ Finishing touches
  • 📝 Generate Docstrings
🧪 Generate unit tests
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch chore/removeVoip

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

Disabled knowledge base sources:

  • Jira integration is disabled by default for public repositories

You can enable these sources in your CodeRabbit configuration.

📥 Commits

Reviewing files that changed from the base of the PR and between c124c49 and 6afa0de.

⛔ Files ignored due to path filters (4)
  • packages/ui-voip/src/components/VoipActionButton/__snapshots__/VoipActionButton.spec.tsx.snap is excluded by !**/*.snap
  • packages/ui-voip/src/components/VoipActions/__snapshots__/VoipActions.spec.tsx.snap is excluded by !**/*.snap
  • packages/ui-voip/src/components/VoipContactId/__snapshots__/VoipContactId.spec.tsx.snap is excluded by !**/*.snap
  • packages/ui-voip/src/components/VoipPopup/__snapshots__/VoipPopup.spec.tsx.snap is excluded by !**/*.snap
📒 Files selected for processing (95)
  • apps/meteor/client/NavBarV2/NavBarControls/NavBarControlsMenu.tsx (1 hunks)
  • apps/meteor/client/NavBarV2/NavBarControls/NavBarControlsWithCall.tsx (2 hunks)
  • apps/meteor/client/NavBarV2/NavBarControls/NavBarControlsWithData.tsx (1 hunks)
  • apps/meteor/client/NavBarV2/NavBarVoipGroup/NavBarItemVoipToggler.tsx (0 hunks)
  • apps/meteor/client/NavBarV2/NavBarVoipGroup/hooks/useVoipDialerAction.ts (0 hunks)
  • apps/meteor/client/NavBarV2/NavBarVoipGroup/hooks/useVoipTogglerAction.ts (0 hunks)
  • apps/meteor/client/hooks/roomActions/useVoiceCallRoomAction.tsx (0 hunks)
  • apps/meteor/client/sidebar/header/hooks/useVoipItemsSection.tsx (0 hunks)
  • apps/meteor/client/views/room/hooks/useUserInfoActions/actions/useVoipCallAction.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipActionButton/VoipActionButton.spec.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipActionButton/VoipActionButton.stories.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipActionButton/VoipActionButton.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipActionButton/index.ts (0 hunks)
  • packages/ui-voip/src/components/VoipActions/VoipActions.spec.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipActions/VoipActions.stories.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipActions/VoipActions.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipActions/index.ts (0 hunks)
  • packages/ui-voip/src/components/VoipContactId/VoipContactId.spec.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipContactId/VoipContactId.stories.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipContactId/VoipContactId.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipContactId/index.ts (0 hunks)
  • packages/ui-voip/src/components/VoipDialPad/VoipDialPad.spec.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipDialPad/VoipDialPad.stories.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipDialPad/VoipDialPad.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipDialPad/components/VoipDialPadButton.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipDialPad/components/VoipDialPadInput.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipDialPad/index.ts (0 hunks)
  • packages/ui-voip/src/components/VoipPopup/VoipPopup.spec.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipPopup/VoipPopup.stories.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipPopup/VoipPopup.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipPopup/components/VoipPopupContainer.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipPopup/components/VoipPopupContent.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipPopup/components/VoipPopupDragHandle.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipPopup/components/VoipPopupFooter.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipPopup/components/VoipPopupHeader.spec.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipPopup/components/VoipPopupHeader.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipPopup/index.ts (0 hunks)
  • packages/ui-voip/src/components/VoipPopup/views/VoipDialerView.spec.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipPopup/views/VoipDialerView.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipPopup/views/VoipErrorView.spec.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipPopup/views/VoipErrorView.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipPopup/views/VoipIncomingView.spec.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipPopup/views/VoipIncomingView.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipPopup/views/VoipOngoingView.spec.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipPopup/views/VoipOngoingView.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipPopup/views/VoipOutgoingView.spec.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipPopup/views/VoipOutgoingView.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipPopupDraggable/VoipPopupDraggable.stories.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipPopupDraggable/VoipPopupDraggable.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipPopupDraggable/index.ts (0 hunks)
  • packages/ui-voip/src/components/VoipPopupDraggable/useDraggable.stories.tsx (2 hunks)
  • packages/ui-voip/src/components/VoipPopupPortal/VoipPopupPortal.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipPopupPortal/index.ts (0 hunks)
  • packages/ui-voip/src/components/VoipSettingsButton/VoipSettingsButton.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipSettingsButton/hooks/useVoipDeviceSettings.spec.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipSettingsButton/hooks/useVoipDeviceSettings.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipSettingsButton/index.ts (0 hunks)
  • packages/ui-voip/src/components/VoipStatus/VoipStatus.spec.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipStatus/VoipStatus.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipStatus/index.ts (0 hunks)
  • packages/ui-voip/src/components/VoipTimer/VoipTimer.spec.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipTimer/VoipTimer.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipTimer/index.ts (0 hunks)
  • packages/ui-voip/src/components/VoipTransferModal/VoipTransferModal.spec.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipTransferModal/VoipTransferModal.tsx (0 hunks)
  • packages/ui-voip/src/components/VoipTransferModal/index.ts (0 hunks)
  • packages/ui-voip/src/components/index.ts (0 hunks)
  • packages/ui-voip/src/contexts/VoipContext.tsx (0 hunks)
  • packages/ui-voip/src/definitions/VoipSession.ts (0 hunks)
  • packages/ui-voip/src/definitions/index.ts (0 hunks)
  • packages/ui-voip/src/hooks/index.ts (0 hunks)
  • packages/ui-voip/src/hooks/useVoip.tsx (0 hunks)
  • packages/ui-voip/src/hooks/useVoipAPI.tsx (0 hunks)
  • packages/ui-voip/src/hooks/useVoipClient.tsx (0 hunks)
  • packages/ui-voip/src/hooks/useVoipContactId.tsx (0 hunks)
  • packages/ui-voip/src/hooks/useVoipDialer.tsx (0 hunks)
  • packages/ui-voip/src/hooks/useVoipEffect.tsx (0 hunks)
  • packages/ui-voip/src/hooks/useVoipEvent.tsx (0 hunks)
  • packages/ui-voip/src/hooks/useVoipExtensionDetails.tsx (0 hunks)
  • packages/ui-voip/src/hooks/useVoipSession.tsx (0 hunks)
  • packages/ui-voip/src/hooks/useVoipState.tsx (0 hunks)
  • packages/ui-voip/src/hooks/useVoipTransferModal.tsx (0 hunks)
  • packages/ui-voip/src/index.ts (0 hunks)
  • packages/ui-voip/src/lib/LocalStream.ts (0 hunks)
  • packages/ui-voip/src/lib/RemoteStream.ts (0 hunks)
  • packages/ui-voip/src/lib/Stream.ts (0 hunks)
  • packages/ui-voip/src/lib/VoipClient.ts (0 hunks)
  • packages/ui-voip/src/lib/getMainInviteRejectionReason.spec.ts (0 hunks)
  • packages/ui-voip/src/lib/getMainInviteRejectionReason.ts (0 hunks)
  • packages/ui-voip/src/lib/parseInviteRejectionReasons.spec.ts (0 hunks)
  • packages/ui-voip/src/lib/parseInviteRejectionReasons.ts (0 hunks)
  • packages/ui-voip/src/providers/VoipProvider.tsx (0 hunks)
  • packages/ui-voip/src/tests/mocks/index.tsx (0 hunks)
  • packages/ui-voip/src/tests/utils/replaceReactAriaIds.ts (0 hunks)
  • packages/ui-voip/src/utils/setPreciseInterval.ts (0 hunks)
💤 Files with no reviewable changes (91)
  • packages/ui-voip/src/hooks/useVoipSession.tsx
  • packages/ui-voip/src/components/VoipContactId/index.ts
  • packages/ui-voip/src/components/VoipPopup/components/VoipPopupHeader.spec.tsx
  • apps/meteor/client/NavBarV2/NavBarVoipGroup/hooks/useVoipTogglerAction.ts
  • packages/ui-voip/src/components/VoipPopup/views/VoipDialerView.spec.tsx
  • apps/meteor/client/NavBarV2/NavBarVoipGroup/NavBarItemVoipToggler.tsx
  • packages/ui-voip/src/components/VoipPopup/views/VoipIncomingView.tsx
  • packages/ui-voip/src/components/VoipDialPad/index.ts
  • packages/ui-voip/src/components/VoipTimer/index.ts
  • packages/ui-voip/src/components/VoipActions/index.ts
  • packages/ui-voip/src/hooks/useVoipClient.tsx
  • packages/ui-voip/src/definitions/index.ts
  • packages/ui-voip/src/components/VoipPopup/views/VoipDialerView.tsx
  • packages/ui-voip/src/contexts/VoipContext.tsx
  • packages/ui-voip/src/definitions/VoipSession.ts
  • packages/ui-voip/src/hooks/useVoipExtensionDetails.tsx
  • packages/ui-voip/src/components/VoipPopupPortal/index.ts
  • packages/ui-voip/src/components/VoipTransferModal/VoipTransferModal.spec.tsx
  • packages/ui-voip/src/lib/parseInviteRejectionReasons.spec.ts
  • packages/ui-voip/src/components/VoipPopupDraggable/VoipPopupDraggable.stories.tsx
  • packages/ui-voip/src/hooks/useVoipContactId.tsx
  • apps/meteor/client/hooks/roomActions/useVoiceCallRoomAction.tsx
  • packages/ui-voip/src/lib/VoipClient.ts
  • packages/ui-voip/src/components/VoipPopup/views/VoipOngoingView.tsx
  • packages/ui-voip/src/components/VoipDialPad/VoipDialPad.stories.tsx
  • packages/ui-voip/src/hooks/useVoipAPI.tsx
  • apps/meteor/client/views/room/hooks/useUserInfoActions/actions/useVoipCallAction.tsx
  • packages/ui-voip/src/components/VoipPopup/views/VoipIncomingView.spec.tsx
  • packages/ui-voip/src/lib/LocalStream.ts
  • packages/ui-voip/src/lib/RemoteStream.ts
  • packages/ui-voip/src/components/VoipStatus/VoipStatus.spec.tsx
  • packages/ui-voip/src/components/VoipPopup/VoipPopup.spec.tsx
  • packages/ui-voip/src/components/VoipActions/VoipActions.spec.tsx
  • packages/ui-voip/src/components/VoipContactId/VoipContactId.spec.tsx
  • packages/ui-voip/src/components/VoipPopup/index.ts
  • packages/ui-voip/src/components/VoipDialPad/components/VoipDialPadButton.tsx
  • packages/ui-voip/src/components/VoipStatus/index.ts
  • apps/meteor/client/NavBarV2/NavBarVoipGroup/hooks/useVoipDialerAction.ts
  • packages/ui-voip/src/lib/getMainInviteRejectionReason.spec.ts
  • packages/ui-voip/src/components/VoipPopupPortal/VoipPopupPortal.tsx
  • packages/ui-voip/src/providers/VoipProvider.tsx
  • packages/ui-voip/src/components/VoipSettingsButton/VoipSettingsButton.tsx
  • packages/ui-voip/src/hooks/useVoipDialer.tsx
  • packages/ui-voip/src/hooks/useVoipState.tsx
  • packages/ui-voip/src/tests/utils/replaceReactAriaIds.ts
  • packages/ui-voip/src/hooks/useVoipTransferModal.tsx
  • packages/ui-voip/src/components/VoipSettingsButton/hooks/useVoipDeviceSettings.spec.tsx
  • packages/ui-voip/src/components/VoipActions/VoipActions.tsx
  • packages/ui-voip/src/components/VoipPopup/views/VoipOutgoingView.spec.tsx
  • packages/ui-voip/src/hooks/useVoipEvent.tsx
  • packages/ui-voip/src/components/VoipPopup/components/VoipPopupFooter.tsx
  • apps/meteor/client/sidebar/header/hooks/useVoipItemsSection.tsx
  • packages/ui-voip/src/components/index.ts
  • packages/ui-voip/src/components/VoipPopupDraggable/VoipPopupDraggable.tsx
  • packages/ui-voip/src/utils/setPreciseInterval.ts
  • packages/ui-voip/src/components/VoipActions/VoipActions.stories.tsx
  • packages/ui-voip/src/components/VoipPopupDraggable/index.ts
  • packages/ui-voip/src/components/VoipSettingsButton/hooks/useVoipDeviceSettings.tsx
  • packages/ui-voip/src/components/VoipDialPad/components/VoipDialPadInput.tsx
  • packages/ui-voip/src/components/VoipPopup/views/VoipErrorView.tsx
  • packages/ui-voip/src/components/VoipTransferModal/index.ts
  • packages/ui-voip/src/components/VoipPopup/components/VoipPopupContainer.tsx
  • packages/ui-voip/src/components/VoipTransferModal/VoipTransferModal.tsx
  • packages/ui-voip/src/components/VoipPopup/components/VoipPopupContent.tsx
  • packages/ui-voip/src/hooks/useVoip.tsx
  • packages/ui-voip/src/components/VoipSettingsButton/index.ts
  • packages/ui-voip/src/components/VoipActionButton/VoipActionButton.tsx
  • packages/ui-voip/src/lib/Stream.ts
  • packages/ui-voip/src/components/VoipDialPad/VoipDialPad.tsx
  • packages/ui-voip/src/lib/getMainInviteRejectionReason.ts
  • packages/ui-voip/src/components/VoipPopup/views/VoipErrorView.spec.tsx
  • packages/ui-voip/src/components/VoipActionButton/VoipActionButton.stories.tsx
  • packages/ui-voip/src/components/VoipActionButton/index.ts
  • packages/ui-voip/src/hooks/index.ts
  • packages/ui-voip/src/index.ts
  • packages/ui-voip/src/components/VoipTimer/VoipTimer.spec.tsx
  • packages/ui-voip/src/components/VoipPopup/views/VoipOutgoingView.tsx
  • packages/ui-voip/src/lib/parseInviteRejectionReasons.ts
  • packages/ui-voip/src/components/VoipDialPad/VoipDialPad.spec.tsx
  • packages/ui-voip/src/components/VoipStatus/VoipStatus.tsx
  • packages/ui-voip/src/components/VoipPopup/VoipPopup.stories.tsx
  • packages/ui-voip/src/components/VoipTimer/VoipTimer.tsx
  • packages/ui-voip/src/components/VoipPopup/views/VoipOngoingView.spec.tsx
  • packages/ui-voip/src/components/VoipContactId/VoipContactId.tsx
  • packages/ui-voip/src/components/VoipPopup/VoipPopup.tsx
  • packages/ui-voip/src/components/VoipPopup/components/VoipPopupDragHandle.tsx
  • packages/ui-voip/src/components/VoipActionButton/VoipActionButton.spec.tsx
  • packages/ui-voip/src/components/VoipContactId/VoipContactId.stories.tsx
  • packages/ui-voip/src/tests/mocks/index.tsx
  • packages/ui-voip/src/hooks/useVoipEffect.tsx
  • packages/ui-voip/src/components/VoipPopup/components/VoipPopupHeader.tsx
🔇 Additional comments (9)
apps/meteor/client/NavBarV2/NavBarControls/NavBarControlsWithData.tsx (2)

58-58: LGTM! Simplified pressed state calculation.

The removal of VoIP-related pressed state aligns with the PR objective to remove old VoIP references.


60-65: LGTM! Props unified across both render branches.

Both NavbarControlsWithCall and NavBarControlsMenu now receive the same prop structure (omnichannelItems, isPressed), simplifying the interface and removing VoIP-specific props.

apps/meteor/client/NavBarV2/NavBarControls/NavBarControlsMenu.tsx (3)

9-14: LGTM! VoIP props successfully removed.

The component signature and type definition correctly remove voipItems, aligning with the PR objective.


18-27: LGTM! Sections simplified to omnichannel only.

The VoIP section has been correctly removed, and the component properly handles the case when no sections are available.


32-32: Menu title is accurate; retain ‘Voice_and_omnichannel’. The NavBar still provides voice call controls (dial pad and call toggler in NavBarControlsWithCall.tsx) alongside other Omnichannel features, and the VoIP/UI-voip packages remain in the codebase—so the translation key correctly reflects current functionality.

Likely an incorrect or invalid review comment.

apps/meteor/client/NavBarV2/NavBarControls/NavBarControlsWithCall.tsx (2)

8-13: LGTM! VoIP props removed from component signature.

The component type and signature correctly remove voipItems, consistent with the broader VoIP removal effort.


28-47: LGTM! Call functionality migrated to omnichannel items.

The component correctly augments omnichannelItems with call-related actions (DialPad and Toggler), effectively migrating call functionality from the legacy VoIP system to the omnichannel framework.

packages/ui-voip/src/components/VoipPopupDraggable/useDraggable.stories.tsx (2)

2-2: LGTM: Legacy VoipPopupPortal references removed; AnchorPortal import is valid.
All occurrences of VoipPopupPortal have been cleared, and AnchorPortal is properly exported from @rocket.chat/ui-client. Approving changes.


472-474: AnchorPortal ID handling is correct.

AnchorPortal’s ensureAnchorElement creates and appends a <div> with the provided ID to document.body and its ref-counting hooks manage cleanup, so no manual anchor setup is needed.


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.

@codecov
Copy link

codecov bot commented Sep 25, 2025

Codecov Report

❌ Patch coverage is 66.66667% with 2 lines in your changes missing coverage. Please review.
✅ Project coverage is 67.34%. Comparing base (287f302) to head (29b569e).
⚠️ Report is 1 commits behind head on develop.

Additional details and impacted files

Impacted file tree graph

@@             Coverage Diff             @@
##           develop   #37060      +/-   ##
===========================================
- Coverage    67.41%   67.34%   -0.07%     
===========================================
  Files         3334     3275      -59     
  Lines       113698   111858    -1840     
  Branches     20622    20277     -345     
===========================================
- Hits         76648    75333    -1315     
+ Misses       34440    33930     -510     
+ Partials      2610     2595      -15     
Flag Coverage Δ
e2e 57.34% <66.66%> (+0.02%) ⬆️
unit 71.12% <ø> (-0.07%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@gabriellsh gabriellsh marked this pull request as ready for review October 1, 2025 14:37
@gabriellsh gabriellsh requested a review from a team as a code owner October 1, 2025 14:37
Copy link
Member

@dougfabris dougfabris left a comment

Choose a reason for hiding this comment

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

@dougfabris
Copy link
Member

are you going to remove the v2 folder you had to create in a separated PR?

@gabriellsh
Copy link
Member Author

are you going to remove the v2 folder you had to create in a separated PR?

yeah 😏

@gabriellsh gabriellsh added the stat: QA assured Means it has been tested and approved by a company insider label Oct 6, 2025
@dionisio-bot dionisio-bot bot added the stat: ready to merge PR tested and approved waiting for merge label Oct 6, 2025
@kodiakhq kodiakhq bot merged commit 46f8110 into develop Oct 6, 2025
49 checks passed
@kodiakhq kodiakhq bot deleted the chore/removeVoip branch October 6, 2025 21:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

stat: QA assured Means it has been tested and approved by a company insider stat: ready to merge PR tested and approved waiting for merge

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants