iachat/app/javascript/dashboard/components/widgets/conversation
Sivin Varghese 137c6f8a75
fix: Context menu and its submenu boundary overflow (#10729)
# Pull Request Template

## Description

This PR adds smart positioning to prevent context menu and submenu from
overflowing screen boundaries. The context menu and its submenu now
dynamically adjust their position when there isn't enough space.


Fixes
https://linear.app/chatwoot/issue/CW-3936/assign-to-agent-ui-element-is-drawn-off-canvas
https://github.com/chatwoot/chatwoot/issues/10727

## Type of change

- [x] Bug fix (non-breaking change which fixes an issue)

## How Has This Been Tested?
**Loom video**

**Before**

https://www.loom.com/share/6c267dde103c4f2281ed5b4d006a43b1?sid=047966f5-d6d3-4de6-ade8-270141e6e215

**After**

https://www.loom.com/share/5599c6061bb74c3ea527dd06960d3189?sid=ffb01149-bb7a-449e-b0ec-02cc191f472b


## Checklist:

- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my code
- [x] I have commented on my code, particularly in hard-to-understand
areas
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [x] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged and published in downstream
modules
2025-01-22 17:56:43 +05:30
..
advancedFilterItems chore: RTL configuration (#6521) 2023-02-23 17:50:44 +05:30
bubble fix: Import for vue-letter (#10246) 2024-10-08 09:40:37 -07:00
components fix: Download button opens URL instead of downloading (#10710) 2025-01-17 14:34:44 +05:30
contextMenu fix: Context menu and its submenu boundary overflow (#10729) 2025-01-22 17:56:43 +05:30
conversation style: apply fixes for eslint issues [cw-3590] (#10210) 2024-10-03 15:02:12 +05:30
conversationBulkActions chore(v4): Update colors (#10700) 2025-01-16 15:27:23 +05:30
conversationCardComponents chore(v4): Update colors (#10700) 2025-01-16 15:27:23 +05:30
EmptyState feat: update colors for v4 (#10660) 2025-01-15 17:13:03 +05:30
helpers chore: Migrate all instances of old vuelidate to new v2 syntax [CW-3274] (#9623) 2024-07-30 15:08:22 +05:30
linear style: apply fixes for eslint issues [cw-3590] (#10210) 2024-10-03 15:02:12 +05:30
specs chore: fix circleci on vite build (#10214) 2024-10-07 15:27:41 +05:30
WhatsappTemplates fix: vue 3 followup fixes (#10213) 2024-10-03 19:59:07 +05:30
AvailabilityStatusBadge.vue feat: Eslint rules (#9839) 2024-08-05 14:02:16 +05:30
CannedResponse.vue style: apply fixes for eslint issues [cw-3590] (#10210) 2024-10-03 15:02:12 +05:30
ChatFilter.vue feat: Dark Mode (#7471) 2023-07-21 22:10:25 +05:30
ConversationBasicFilter.vue chore: Update chat list header UI (#10573) 2024-12-12 10:12:07 +05:30
ConversationBox.vue feat: update colors for v4 (#10660) 2025-01-15 17:13:03 +05:30
ConversationCard.vue chore(v4): Update colors (#10700) 2025-01-16 15:27:23 +05:30
ConversationHeader.vue feat: update colors for v4 (#10660) 2025-01-15 17:13:03 +05:30
ConversationSidebar.vue feat: update colors for v4 (#10660) 2025-01-15 17:13:03 +05:30
EmailTranscriptModal.vue fix: vue 3 followup fixes (#10213) 2024-10-03 19:59:07 +05:30
FilterItem.vue chore: Update chat list header UI (#10573) 2024-12-12 10:12:07 +05:30
Message.vue fix: Modal in the context menu disappears unless hovered (#10333) 2024-10-22 13:26:56 +05:30
MessagePreview.vue chore: Repalce message formatter mixin with useMessageFormatter [CW-3470] (#9986) 2024-08-27 08:06:51 +05:30
MessageSignatureMissingAlert.vue feat: Eslint rules (#9839) 2024-08-05 14:02:16 +05:30
MessagesView.vue feat: update colors for v4 (#10660) 2025-01-15 17:13:03 +05:30
MoreActions.vue feat: update colors for v4 (#10660) 2025-01-15 17:13:03 +05:30
OnboardingFeatureCard.vue feat: Vite + vue 3 💚 (#10047) 2024-10-02 00:36:30 -07:00
OnboardingView.vue feat: Vite + vue 3 💚 (#10047) 2024-10-02 00:36:30 -07:00
PriorityMark.vue chore(v4): Update colors (#10700) 2025-01-16 15:27:23 +05:30
ReplyBox.vue feat: update colors for v4 (#10660) 2025-01-15 17:13:03 +05:30
ReplyEmailHead.vue feat: update colors for v4 (#10660) 2025-01-15 17:13:03 +05:30
ReplyToMessage.vue style: apply fixes for eslint issues [cw-3590] (#10210) 2024-10-03 15:02:12 +05:30
TagAgents.vue feat: update colors for v4 (#10660) 2025-01-15 17:13:03 +05:30
VariableList.vue style: apply fixes for eslint issues [cw-3590] (#10210) 2024-10-03 15:02:12 +05:30