When the CC field is generated in the UI, the email values are joined together
with ", " but when they are parsed, we currently split by just ",".
This causes an error on the backend and on the frontend.
It seems reasonable to update the code to allow whitespace in the input and to
split by `\s*,\s` and also to trim leading and trailing whitespace from the CC
list.
---------
Co-authored-by: Sojan <sojan@pepalo.com>
* feat: init auditlogs ui
* chore: add api
* fix: action
* chore: add action,username,time
* feat: add pagination support
* chore: format time
* chore: refactor
* chore: refactor auditlogs api response
* chore: update icon
* chore: rubocop fixes
* Fixes the way meta is handled in store
* Fixes meta not appearing issue
---------
Co-authored-by: Sojan Jose <sojan@pepalo.com>
Co-authored-by: Nithin David Thomas <1277421+nithindavid@users.noreply.github.com>
* feat: sort by position
* chore: whitespace change
* feat: add border bottom color to list item
* feat: allow dragging articles
* feat: add migration to reorder all articles
* feat: add onsort method
* feat: finish UI sorting
* feat: show 50 per page in articles list
* feat: add article sorting methods
* feat: patch up reorder action with the API
* refactor: better naming
* chore: add comments
* feat: attach position to article before create
* feat: move article to end if moved between categories
* chore: add comments
* chore: update version
* fix: don't change position if previous category was nil
* fix: condition to trigger update on category change
* refactor: store new_position
* refactor: use grid instead of table
* feat: add snug spacing
* feat: add grab-icon
* feat: add grab icon to list
* refactor: show draggable only for category page
* feat: add update_positions as a class method
---------
Co-authored-by: Nithin David Thomas <1277421+nithindavid@users.noreply.github.com>
* feat: genearte report in a grid
* refactor: update API usage
* refactor: separate generate method
* refactor: abstract transform_data
* feat: annotate with comments
* feat: add explicit timezone
* feat: download data only in user timezone
* fix: dates included in heatmap
* feat: show external error in message
* Fixes avatar position on failed messages
---------
Co-authored-by: Clairton Rodrigo Heinzen <clairton.rodrigo@gmail.com>
* feat: add heatmap component
* feat: add heatmap component
* feat: add dummy heatmap
* refactor: compact tiles
* feat: allow hour
* feat: wire up heatmap query
* feat: allow arbritrary number of weeks
* feat: update position of the widget
* chore: update heatmap title
* refactor: move traffic heatmap to overview
* chore: add comment for perf
* feat: add reconcile logic for heatmap fetching
Fetching the data for the last 6 days all the time is wasteful
So we fetch only the data for today and reconcile it with the data we already have
* refactor: re-org code for new utils
* feat: add translations
* feat: translate days of the week
* chore: update chatwoot utils
* feat: add markers to heatmap
* refactor: update class names
* refactor: move flatten as a separate method
* test: Heatmap Helpers
* chore: add comments
* refactor: method naming
* refactor: use heatmap-level mixin
* refactor: cleanup css
* chore: remove log
* refactor: reports.js to use object instead of separate params
* refactor: report store to use new API design
* refactor: rename HeatmapHelper -> ReportsDataHelper
* refactor: separate clampDataBetweenTimeline
* feat: add tests
* fix: group by hour
* feat: add scroll for smaller screens
* refactor: add base data to reconcile with
* fix: tests
* fix: overflow only on smaller screens
* feat: translate tooltip
* refactor: simplify reconcile
* chore: add docs
* chore: remoev heatmap from account report
* feat: let Heatmap handle loading state
* chore: Apply suggestions from code review
Co-authored-by: Sivin Varghese <64252451+iamsivin@users.noreply.github.com>
* feat: update css
* refactor: color assignment to range
* feat: add short circuit
* Update app/javascript/dashboard/routes/dashboard/settings/reports/components/Heatmap.vue
---------
Co-authored-by: Muhsin Keloth <muhsinkeramam@gmail.com>
Co-authored-by: Nithin David Thomas <1277421+nithindavid@users.noreply.github.com>
Co-authored-by: Sivin Varghese <64252451+iamsivin@users.noreply.github.com>
* chore: Use markdown-it instead of marked
* Adds styling for markdown rendered content
* fixes codeclimate issue
* Fixes blockquote styles for widget in darkmode
* fix: issue block quote color issue in light mode
* fix: issue block quote color issue in light mode
* Fixes blockquote color in dark mode
* Remove usage of dark mode mixin in user bubble
* chore: code clean up
---------
Co-authored-by: Nithin David Thomas <1277421+nithindavid@users.noreply.github.com>
Co-authored-by: Sivin Varghese <64252451+iamsivin@users.noreply.github.com>
Co-authored-by: iamsivin <iamsivin@gmail.com>
* chore: support panel trigger on contact name click
Co-authored-by: BikashSah999 <51731962+BikashSah999@users.noreply.github.com>
* Update ConversationHeader.vue
---------
Co-authored-by: BikashSah999 <51731962+BikashSah999@users.noreply.github.com>
Co-authored-by: Nithin David Thomas <1277421+nithindavid@users.noreply.github.com>
* chore: Refactor tables in all screen for RTL
* Notification page footer
* Apply suggestions from code review
* chore: Minor ixes
* chore: Adds rtl comment
* chore: Code clean up for contact table
---------
Co-authored-by: Nithin David Thomas <1277421+nithindavid@users.noreply.github.com>
* Woot tabs
* Refactor sidebar related RTL
* Context menu
* chore: Minor fixes
* chore: Dropdown
* chore: Toggle switch
* chore: sidebar fixes
* fix: spacing issues and minor fixes
* chore: Space slab to small
---------
Co-authored-by: Nithin David <1277421+nithindavid@users.noreply.github.com>
Supports masking/unmasking sensitive data such as API Tokens in the agent dashboard.
Fixes: #6322
Co-authored-by: raph941 <45232708+raph941@users.noreply.github.com>
Co-authored-by: Nithin David Thomas <1277421+nithindavid@users.noreply.github.com>
This PR adds Google OAuth for all existing users, allowing users to log in or sign up via their Google account.
---------
Co-authored-by: Pranav Raj S <pranav@chatwoot.com>
Co-authored-by: Fayaz Ahmed <15716057+fayazara@users.noreply.github.com>
Co-authored-by: Sojan <sojan@pepalo.com>
* Added one more endpoint to attach tempfile and get logo
* Added one more endpoint to attach tempfile and get logo
* spec fixes
* Upload file for articles irrespective of the association
* Upload file for articles irrespective of the association
* Add multiple images with different keys
* feat: Adds image attachment for help center articles
* Adds validation for file upload
* Fixes space above image after adding to doc
* chore: Removed svg from file upload type
* Update app/javascript/dashboard/components/widgets/WootWriter/FullEditor.vue
Co-authored-by: Shivam Mishra <scm.mymail@gmail.com>
* Update app/javascript/dashboard/components/widgets/WootWriter/FullEditor.vue
Co-authored-by: Shivam Mishra <scm.mymail@gmail.com>
* Removes caption for the image
* Fixes woot prosemirror package version
* Update yarn.lock
* Update yarn.lock
---------
Co-authored-by: Tejaswini Chile <tejaswini@chatwoot.com>
Co-authored-by: Sivin Varghese <64252451+iamsivin@users.noreply.github.com>
Co-authored-by: Muhsin Keloth <muhsinkeramam@gmail.com>
Co-authored-by: iamsivin <iamsivin@gmail.com>
Co-authored-by: Shivam Mishra <scm.mymail@gmail.com>
Co-authored-by: Pranav Raj S <pranav@chatwoot.com>