iachat/app/javascript/dashboard/components/widgets/conversation
Cayo P. R. Oliveira c6f9e814c2
feat: add customizable signature position and separator options (#78)
* feat: add customizable signature position and separator options

* fix: correct default value note for signatureSeparator and ensure reactivity

* fix: correct watcher boolean conversion and add immediate ui_settings updates

- Fix watchers to convert string props to boolean values for reactive refs
- Add immediate event handlers for switch changes to update ui_settings in real-time
- Ensure proper synchronization between switch states and user.ui_settings

Co-Authored-By: cayo@fazer.ai <cayoproliveira@gmail.com>

* fix: split signature content and ui_settings updates to resolve persistence bug

- Use updateUISettings store action for signature_position and signature_separator
- Keep updateProfile for message_signature content only
- Fixes FormData serialization issue that corrupted nested ui_settings object
- Add diagnostic logging to verify data flow

Co-Authored-By: cayo@fazer.ai <cayoproliveira@gmail.com>

* clean: remove diagnostic console logging from updateSignature method

- Remove temporary console.log statements added for verification
- Keep core implementation that splits signature content and ui_settings updates
- Keep console.error for proper error handling with eslint-disable comment
- Implementation now ready for production use

Co-Authored-By: cayo@fazer.ai <cayoproliveira@gmail.com>

* fix: updateUISettings call in updateSignature method

* chore: move signature application to send-time and add button highlighting (#79)

* fix: move signature application from editor manipulation to send-time

- Remove addSignature/removeSignature/toggleSignatureInEditor from WootWriter
- Remove signature logic from draft handling and canned response insertion
- Apply signatures only in getMessagePayload during message sending
- Add button highlighting for signature toggle when activated
- Prevents signature duplication and persistence in editor content
- Fixes signature position toggle bug

Co-Authored-By: cayo@fazer.ai <cayoproliveira@gmail.com>

* fix: escape signature separator to prevent markdown setext heading interpretation

- Escape '--' separator as '\--' in appendSignature to prevent H2 heading creation
- Update removeSignature to handle escaped separators correctly
- Fixes signature separator being rendered as markdown instead of plain text
- Refactor nested ternary to fix ESLint error

Co-Authored-By: cayo@fazer.ai <cayoproliveira@gmail.com>

* fix: prevent signature separator markdown interpretation in message processing

- Add fix_signature_separator_markdown method to escape '--' separators
- Update ensure_processed_message_content to fix separators before saving
- Prevents signature separators from being interpreted as setext headings
- Ensures correct message display in channels and email notifications

Co-Authored-By: cayo@fazer.ai <cayoproliveira@gmail.com>

* fix: update separator format to use \n--\n instead of escaping

- Change separator delimiter from '\--' to '\n--\n' format
- Update removeSignature function to handle new separator format correctly
- Simplify message processing since separators are already properly formatted
- Ensures consistent separator handling across frontend and backend

Co-Authored-By: cayo@fazer.ai <cayoproliveira@gmail.com>

* fix: update signature delimiter format to include extra new lines

* chore: remove comment about signature application logic

* refactor: remove unused method and comments related to signature separator markdown processing

* chore: simplify slash command detection by using updatedMessage directly

* refactor: remove signature logic from draft message handling

* refactor: simplify body empty check by removing signature manipulation logic

---------

Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: cayo@fazer.ai <cayoproliveira@gmail.com>

* refactor: extract signature settings logic into a separate method

* fix: handle nil ui_settings in signature position and separator methods

* fix: update return value of findSignatureInBody to include position information

* fix: update signature handling in findSignatureInBody and related methods

* fix: adjust delimiter length handling in removeSignature function

* test: add cases for appending, removing, and replacing signatures with various separators

* test: add cases for signature position and separator handling

* test: add cases for updating signature position and separator in ui_settings

* fix: correct typo in comment for findSignatureInBody function

* refactor: simplify translation function calls in MessageSignature component

* chore: refactoring

* chore: refactor

* feat: switch -> select

* chore: refactor and undo changes

* chore: refactor and undo changes

* chore: refactor

* fix: remove old select component usage

* chore: remove useless style

---------

Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: gabrieljablonski <contact@gabrieljablonski.com>
2025-08-17 23:01:41 -03:00
..
advancedFilterItems feat: Add support for frontend filtering of conversations (#11111) 2025-03-24 19:39:04 -07:00
components fix: Style issue with conversation header (#11655) 2025-06-03 15:21:30 +05:30
contextMenu chore: Remove older UI (#11720) 2025-07-01 09:43:44 +05:30
conversation chore: Remove older UI (#11720) 2025-07-01 09:43:44 +05:30
conversationBulkActions chore: Remove older UI (#11720) 2025-07-01 09:43:44 +05:30
conversationCardComponents chore: Remove older UI (#11720) 2025-07-01 09:43:44 +05:30
EmptyState chore: Remove older UI (#11720) 2025-07-01 09:43:44 +05:30
helpers chore: Remove older UI (#11720) 2025-07-01 09:43:44 +05:30
linear chore: Remove older UI (#11720) 2025-07-01 09:43:44 +05:30
WhatsappTemplates chore: Update buttons in conversation screens - 2 (#11134) 2025-03-21 21:54:54 +05:30
CannedResponse.vue style: apply fixes for eslint issues [cw-3590] (#10210) 2024-10-03 15:02:12 +05:30
ConversationBasicFilter.vue fix: Fix the translation issue on conversation filter reload (#11513) 2025-05-19 11:18:06 -07:00
ConversationBox.vue chore: Remove older UI (#11720) 2025-07-01 09:43:44 +05:30
ConversationCard.vue chore: Remove older UI (#11720) 2025-07-01 09:43:44 +05:30
ConversationHeader.vue fix: Incorrect account ID in conversation header back button URL (#11866) 2025-07-03 13:22:44 +05:30
ConversationSidebar.vue feat: Update UI for Copilot (#11561) 2025-06-02 22:02:03 -05:00
EmailTranscriptModal.vue chore: Remove old buttons from Vue2 design (#11159) 2025-03-31 17:51:38 -07:00
FilterItem.vue chore: Update chat list header UI (#10573) 2024-12-12 10:12:07 +05:30
MessagePreview.vue chore: Remove older UI (#11720) 2025-07-01 09:43:44 +05:30
MessageSignatureMissingAlert.vue chore: Remove older UI (#11720) 2025-07-01 09:43:44 +05:30
MessagesView.vue chore: allow non-admin to call setup_channel_provider and add localization (#90) 2025-07-29 17:43:57 -03:00
MoreActions.vue fix: Update design to fix the crowded header (#11633) 2025-05-29 18:45:28 -06:00
OnboardingFeatureCard.vue chore: Remove older UI (#11720) 2025-07-01 09:43:44 +05:30
OnboardingView.vue chore: Remove older UI (#11720) 2025-07-01 09:43:44 +05:30
PriorityMark.vue chore(v4): Update colors (#10700) 2025-01-16 15:27:23 +05:30
ReplyBox.vue feat: add customizable signature position and separator options (#78) 2025-08-17 23:01:41 -03:00
ReplyEmailHead.vue chore: Update styles in settings pages (#11070) 2025-03-18 14:40:02 -07:00
ReplyToMessage.vue chore: Update buttons in conversation screens - 2 (#11134) 2025-03-21 21:54:54 +05:30
ShopifyOrderItem.vue chore: Remove older UI (#11720) 2025-07-01 09:43:44 +05:30
ShopifyOrdersList.vue feat(apps): Shopify Integration (#11101) 2025-03-19 15:37:55 -07:00
TagAgents.vue feat: Add the ability to mention team in private message (#11758) 2025-07-02 19:57:59 +05:30
VariableList.vue fix: Variable search item not showing after braces/commas (#11864) 2025-07-03 19:39:36 +05:30