chatwoot/app/javascript/shared/helpers
Shivam Mishra c88792f4a3
feat: add Conversation traffic heatmap (#6508)
* 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>
2023-03-07 09:01:58 +05:30
..
markdownIt chore: Use markdown-it instead of marked (#6123) 2023-03-03 13:26:54 +05:30
specs feat: add Conversation traffic heatmap (#6508) 2023-03-07 09:01:58 +05:30
vuex fix: Update the relevant agent presence only (#5220) 2022-08-09 12:32:09 +05:30
AudioNotificationHelper.js chore: Refactor audio notification helper (#6148) 2022-12-30 13:54:37 -08:00
BaseActionCableConnector.js feat: Show refresh modal on action cable disconnect (#4010) 2022-02-18 11:09:43 +05:30
clipboard.js chore: Replace packages with native functions (#5140) 2022-08-03 17:08:21 +05:30
colorHelper.js fix: Update colors in widget buttons to fix invalid colors (#6033) 2022-12-14 15:21:20 -08:00
CustomErrors.js Feat: Create contact from contacts page (#1806) 2021-02-19 20:22:58 +05:30
CustomEventHelper.js feat: Add chatwoot:error sdk event (#3998) 2022-02-21 09:40:11 +05:30
DateHelper.js fix: Update business hour calculation (#4496) 2022-04-18 18:15:20 +05:30
emoji.js chore: Check for empty strings in name formatter (#5434) 2022-09-14 07:15:04 -07:00
FileHelper.js feat: Add ability to paste file/image from clipboard (#5627) 2022-10-25 13:35:11 +05:30
HTMLSanitizer.js fix: Render links with target attribute (#4685) 2022-05-16 11:29:05 +05:30
IntegrationHelper.js feat: Add the support for video calls with Dyte in the live-chat widget (#6208) 2023-01-09 11:52:31 -08:00
KeyboardHelpers.js fix: Send message with "enter" also do new line (#5961) 2022-12-06 11:25:49 +05:30
MessageFormatter.js chore: Use markdown-it instead of marked (#6123) 2023-03-03 13:26:54 +05:30
MessageTypeHelper.js chore: Update message limit to Twilio recommended 320 characters (#3333) 2021-11-08 10:27:00 +04:00
ReportsDataHelper.js feat: add Conversation traffic heatmap (#6508) 2023-03-07 09:01:58 +05:30
Validators.js fix: Not able to create a portal if the custom domain is empty (#6224) 2023-01-10 20:50:35 +05:30