Commit Graph

1564 Commits

Author SHA1 Message Date
Abhinav Raut f331b3cd8e Merge pull request #342 from jleroy/i18n/update-2026-05-26
Update translations [2025-05-26]
2026-05-29 01:13:23 +05:30
Jonathan Leroy 1915094c8f Fix globals.terms.slaMetric key in ja-JP.json
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2026-05-28 18:19:20 +02:00
Abhinav Raut 92ccdca347 Add security.md 2026-05-28 21:41:18 +05:30
Abhinav Raut c8a5717b43 fix: filter search results by conversation read permission
Auto focus on search input
Trim search responses to 200 chars as more's not needed.
2026-05-28 21:38:57 +05:30
Jonathan Leroy a318b52b5c Update translations [2025-05-26] 2026-05-28 17:47:44 +02:00
Abhinav Raut 5594cce021 Merge pull request #341 from abhinavxd/widget-ws-improvements
fix: reliably sync widget missed messages on reconnect
2026-05-28 20:48:30 +05:30
Abhinav Raut 9159c26d5f fix: clean up widget ws state on close and announce banner to screen readers 2026-05-28 20:40:54 +05:30
Abhinav Raut bba99d45e5 fix: show typing indicator on scroll, hide view transition abort errors 2026-05-28 20:29:14 +05:30
Abhinav Raut 9480e98d1a Merge pull request #336 from abhinavxd/adhoc-patch-1
perf: WS push for conv list, store/cache cleanups, ad-hoc UI polish, adhoc fixes.
2026-05-28 20:20:18 +05:30
Abhinav Raut 5538c85749 refactor and dedup code: share conversation read-permission check across authz and ws 2026-05-28 20:16:21 +05:30
Abhinav Raut 29881f2f82 fix: close ws stale-perm gaps and resub on reconnect
Reject disabled agents in FilterAuthorizedListUUIDs, kick role members on
permission removal or role delete, and re-sub the list and open conv on
ws reconnect using local state. Also plug the app logger into the ws
package so kicks no longer log when no connections exist.
2026-05-28 20:07:19 +05:30
Abhinav Raut 74e2213e75 fix: auto-resub list when conv uuids change 2026-05-28 19:30:01 +05:30
Abhinav Raut c87266f542 Skip ws converstion broadcast when agent is disabled 2026-05-28 19:14:19 +05:30
Abhinav Raut ddc82d9a1a fix: extract text from malformed email HTML
Swap k3a/html2text for jaytaylor/html2text in stringutil.HTML2Text.
k3a returns empty on HTML with orphan tags (e.g. stray </a>), which
made text_content blank for some emails.
2026-05-28 19:03:26 +05:30
Abhinav Raut 4f707797ad Move pvt method below public 2026-05-28 18:43:28 +05:30
Abhinav Raut 743b00ee22 fix: address PR review across stores, ws broadcast, and sticky scroll 2026-05-28 18:32:16 +05:30
Abhinav Raut 5dfefabe52 fix: guard previous_conversations loop against nullish current 2026-05-28 17:39:16 +05:30
Abhinav Raut a0851bc709 fix: show typing indicator on scroll, hide view transition abort errors 2026-05-28 17:18:39 +05:30
Abhinav Raut 8faf06ed99 fix: reliably sync widget missed messages on reconnect
Update connection status banner to show more intermediate connection statuses like connecting.. and connected.
2026-05-27 19:05:01 +05:30
Abhinav Raut b65d9679ae fix: scroll to target message on scrollTo deep-link instead of bottom 2026-05-27 02:14:23 +05:30
Abhinav Raut 0654e3bd2f fix: skip empty incoming attachments; assign team/agent before running post message hooks this allows automations to see the conversations assigned agent & team. 2026-05-27 00:24:27 +05:30
Abhinav Raut f58149291d refactor: dedupe overview report fetch/handler boilerplate 2026-05-26 12:52:07 +05:30
Abhinav Raut 214cc60374 fix: derive conversation list link context from route params, not name substring
route.name.includes('view') also matched 'overview', causing vue-router to
throw "Missing required param viewID" when the kept-alive conversation
list recomputed its links from /reports/overview. Switch to checking
route.params.teamID / route.params.viewID directly.
2026-05-26 12:07:34 +05:30
Abhinav Raut eb4e49adf0 fix: gate mark-as-read by route, clear stale lastInboxPath on load 2026-05-26 03:31:49 +05:30
Abhinav Raut 9f09d8c521 fix: dedupe parallel custom-attribute fetch, cache AI prompts in store 2026-05-26 03:06:35 +05:30
Abhinav Raut cd8eb5ee26 perf: keep-alive inbox layout to skip refetch on admin round-trip 2026-05-26 03:00:02 +05:30
Abhinav Raut e5ffe11394 Fix edge cases in auto scrolling behavior.
Extract sticky scroller to a composable for main & widget apps.
2026-05-26 02:18:48 +05:30
Abhinav Raut 0a0500f29a refactor: fold widget availability broadcast into BroadcastAgentAvailability 2026-05-26 00:21:15 +05:30
Abhinav Raut 92fe4f4539 tweak: scope conv list refresh interval to InboxView, bump to 2m 2026-05-25 23:18:34 +05:30
Abhinav Raut 2874e78e97 fix: mark-unread no-op when latest message is a continuity email 2026-05-25 01:59:56 +05:30
Abhinav Raut 4f7a23e26f Merge pull request #338 from abhinavxd/dependabot/npm_and_yarn/frontend/qs-6.15.2
build(deps): bump qs from 6.14.2 to 6.15.2 in /frontend
2026-05-23 18:18:38 +05:30
dependabot[bot] bd215324e1 build(deps): bump qs from 6.14.2 to 6.15.2 in /frontend
Bumps [qs](https://github.com/ljharb/qs) from 6.14.2 to 6.15.2.
- [Changelog](https://github.com/ljharb/qs/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ljharb/qs/compare/v6.14.2...v6.15.2)

---
updated-dependencies:
- dependency-name: qs
  dependency-version: 6.15.2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-23 12:36:57 +00:00
Abhinav Raut ad089fc79f fix: hide conv list items while skeleton is visible 2026-05-22 22:37:29 +05:30
Abhinav Raut e4fae78c2b tweak: bump skeleton minVisibleMs 300 -> 500ms 2026-05-22 22:23:38 +05:30
Abhinav Raut 46d56800b1 fix: skeleton not showing on slow network - View Transition was freezing render
`await fetchConversation` inside `document.startViewTransition` held the BEFORE
snapshot for the full fetch duration, hiding the in-flight skeleton. Reverting
to fire-and-forget; the view transition completes instantly and the fetch runs
in background so delayedLoading's 300ms skeleton renders normally.
2026-05-22 22:17:48 +05:30
Abhinav Raut 183c83b5e6 fix: prod crash from private methods, plus PR #336 review fixes 2026-05-22 21:29:57 +05:30
Abhinav Raut a502039e59 perf: WS push for conv list, store/cache cleanups, ad-hoc UI polish
Convs and messages now push the full list-row payload to perm-authorized agents on create/assign/message, so livechat returning customers bubble up instantly without waiting for the timer refresh. Background list refresh bumped 30s ->  60s as a drift safety net.
2026-05-22 20:47:36 +05:30
Abhinav Raut aa972d53e2 Merge pull request #334 from abhinavxd/dependabot/npm_and_yarn/frontend/yaml-2.9.0
build(deps): bump yaml from 2.7.1 to 2.9.0 in /frontend
2026-05-21 22:29:16 +05:30
dependabot[bot] 735f5da1a8 build(deps): bump yaml from 2.7.1 to 2.9.0 in /frontend
Bumps [yaml](https://github.com/eemeli/yaml) from 2.7.1 to 2.9.0.
- [Release notes](https://github.com/eemeli/yaml/releases)
- [Commits](https://github.com/eemeli/yaml/compare/v2.7.1...v2.9.0)

---
updated-dependencies:
- dependency-name: yaml
  dependency-version: 2.9.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-21 16:19:50 +00:00
Abhinav Raut ba64f55d36 Merge pull request #333 from abhinavxd/perf-optimizations-2
WS rewrite: per-client subscriptions and perf improvements
2026-05-21 21:47:31 +05:30
Abhinav Raut ee4ddae407 fix: log team-member fetch errors during cache invalidation 2026-05-21 21:44:25 +05:30
Abhinav Raut edc82e9e55 refactor: drop Casbin, centralize agent cache invalidation, dedupe pending SLAs 2026-05-21 21:24:42 +05:30
Abhinav Raut 33572efa04 fix: address WS PR review - stale cache retry, livechat buffer, last_active TOCTOU 2026-05-21 00:46:43 +05:30
Abhinav Raut 7a8efcde16 fix: widget ping interval, last_active flush, ws ping error, slim new_message payload 2026-05-21 00:13:33 +05:30
Abhinav Raut 43ebed1c3a WS rewrite: per-client subscriptions and perf improvements
Targets broadcasts via per-tab list and open subs (validated at subscribe time)
instead of broadcasting message uuid to all agents. Adds frontend list typing, throttled sound,
and many perf improvements to reduce cpu memory & database queries.
Other fixes: Enforce message-to-conversation binding in handleGetMessage
2026-05-20 23:42:07 +05:30
Abhinav Raut 68d63948c3 Merge pull request #332 from abhinavxd/fix-attch-download-for-s3
fix: S3 attachment URLs and missed conversation list updates
2026-05-19 22:16:24 +05:30
Abhinav Raut 2b6fd313d4 fix: S3 attachment URLs and missed conversation list updates 2026-05-19 21:27:04 +05:30
Abhinav Raut 68d1b8117f fix: attachment download through backend for S3 stores 2026-05-19 15:24:54 +05:30
Abhinav Raut 35d5f1be86 Merge pull request #330 from abhinavxd/fix/yahoo-quoted-text
fix: hide Yahoo + Gmail forward quoted text.
2026-05-19 15:00:46 +05:30
Abhinav Raut 9dfcb6bc90 fix: hide Gmail forward quoted text
Gmail forwards wrap content in <div class="gmail_quote gmail_quote_container">
instead of a blockquote, so the existing detector missed them.
2026-05-19 14:56:01 +05:30