chatwoot/app/javascript/widget/components
Sivin Varghese 6386eec5e7
fix: regex validation not applied for custom text attributes in UI (#14110)
# Pull Request Template

## Description

This PR fixes multiple issues related to regex patterns and validation
for custom attributes.
1. Fixed regex patterns being double-escaped when saving from Add and
Edit flows
2. Fixed regex validation not being enforced in the widget pre-chat form
3. Minor UI improvements in the Add/Edit custom attribute dialog


Fixes
[CW-6625](https://linear.app/chatwoot/issue/CW-6625/bug-report-custom-attribute-regex-validation-not-working-in-ui),
https://github.com/chatwoot/chatwoot/issues/13771

## 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/14f1983a8bc84f9fabc3663afd83cd50

**After**
https://www.loom.com/share/867c0484741140c1944fcbd43914c9c0

## 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
- [x] 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
2026-05-05 12:55:53 +05:30
..
Availability fix: Widget shows 'away' on initial load despite agents being online (#12869) 2025-11-20 20:27:44 +05:30
Form feat: Add RTL Support to Widget (#11022) 2025-03-21 09:39:03 -07:00
layouts feat: Support customizable welcome text, availability messages, and UI toggles (#11891) 2025-07-08 14:26:00 -07:00
pageComponents/Home/Article fix: TypeError: Cannot read properties of null (reading 'config') (#12356) 2025-09-03 17:07:34 +05:30
PreChat fix: regex validation not applied for custom text attributes in UI (#14110) 2026-05-05 12:55:53 +05:30
template chore: Remove older UI (#11720) 2025-07-01 09:43:44 +05:30
AgentMessage.vue fix(slack): Show correct sender name and avatar for Slack replies (#13624) 2026-02-26 16:15:15 +05:30
AgentMessageBubble.vue feat: Improve CSAT responses (#11485) 2025-05-16 14:18:52 +05:30
AgentTypingBubble.vue feat: Add RTL Support to Widget (#11022) 2025-03-21 09:39:03 -07:00
Banner.vue feat: Add RTL Support to Widget (#11022) 2025-03-21 09:39:03 -07:00
ChatAttachment.vue fix: Prioritize SDK enableFileUpload flag when explicitly set (#13091) 2025-12-17 19:03:54 +05:30
ChatFooter.vue feat: Migrate availability mixins to composable and helper (#11596) 2025-08-22 00:43:34 +05:30
ChatHeader.vue feat: Migrate availability mixins to composable and helper (#11596) 2025-08-22 00:43:34 +05:30
ChatHeaderExpanded.vue feat: Support customizable welcome text, availability messages, and UI toggles (#11891) 2025-07-08 14:26:00 -07:00
ChatInputWrap.vue chore: Use widget color for chat input focus state (#13214) 2026-01-14 14:33:56 +05:30
ChatMessage.vue feat: Add RTL Support to Widget (#11022) 2025-03-21 09:39:03 -07:00
ChatSendButton.vue feat: Add RTL Support to Widget (#11022) 2025-03-21 09:39:03 -07:00
ConversationWrap.vue feat: Add RTL Support to Widget (#11022) 2025-03-21 09:39:03 -07:00
DragWrapper.vue style: apply fixes for eslint issues [cw-3590] (#10210) 2024-10-03 15:02:12 +05:30
FileBubble.vue feat: Add RTL Support to Widget (#11022) 2025-03-21 09:39:03 -07:00
FooterReplyTo.vue chore: Remove older UI (#11720) 2025-07-01 09:43:44 +05:30
GroupedAvatars.vue chore: Replace Thumbnail with Avatar (#12119) 2025-08-11 15:47:17 +05:30
HeaderActions.vue feat: Support customizable welcome text, availability messages, and UI toggles (#11891) 2025-07-08 14:26:00 -07:00
ImageBubble.vue feat: Add RTL Support to Widget (#11022) 2025-03-21 09:39:03 -07:00
MessageReplyButton.vue chore: Remove older UI (#11720) 2025-07-01 09:43:44 +05:30
ReplyToChip.vue chore: Remove older UI (#11720) 2025-07-01 09:43:44 +05:30
TeamAvailability.vue feat: Migrate availability mixins to composable and helper (#11596) 2025-08-22 00:43:34 +05:30
UnreadMessage.vue fix: show agent name in unread bubble for Captain replies (#13876) 2026-03-23 20:03:31 +05:30
UnreadMessageList.vue chore: Remove older UI (#11720) 2025-07-01 09:43:44 +05:30
UserMessage.vue fix(widget): Queue SDK-set conversation attributes and labels for first message (#13912) 2026-04-02 12:09:24 +04:00
UserMessageBubble.vue feat: Add RTL Support to Widget (#11022) 2025-03-21 09:39:03 -07:00
VideoBubble.vue feat: Eslint rules (#9839) 2024-08-05 14:02:16 +05:30