Commit Graph

2337 Commits

Author SHA1 Message Date
Abhinav Raut 08e6801fc4 polish widget UI and fix proactive message delete
Widget:
- home background stays pinned while the content scrolls, fade sits on it
- one radius and shadow scale across cards, buttons and inputs
- live search in the help tab with a "no results" state
- attachment-only messages show "Image" in the conversation preview
- launcher and panel use the same shadows as the header

Admin:
- preview column is a fixed width so zoom does not resize it, hidden on small screens
- preview matches the real widget again
- search spinner replaces the magnifier instead of covering the page

Fixes:
- deleting a proactive message did nothing, the dialog cleared the pending
  id before the handler read it
- an inbox created through the API could not be saved from the form, it
  jumped to the pre-chat tab with no error

Adds livechatWidgetTabs.cy.js covering the proactive message and help
center tabs.
2026-09-20 18:48:51 +05:30
Abhinav Raut a074bc4d55 add hover animation to widget launcher
The launcher grows a little on hover and springs back when the pointer
leaves. Also adds a black launcher logo for light backgrounds, softens
the launcher shadow, and expands the widget when help opens on an article.
2026-09-19 17:27:01 +05:30
Abhinav Raut b290031089 Merge remote-tracking branch 'origin/main' into libredesk-widget-improvements 2026-09-19 03:58:41 +05:30
Abhinav Raut f6f1bb4ad1 show helpcenter article as is inside the widget. adds new ?embed query param that shows the entire helpcenter in embed mode 2026-09-19 03:58:04 +05:30
Abhinav Raut 173c0a5124 Merge pull request #622 from abhinavxd/optimize-build
speed up builds and load app layouts on demand
2026-09-19 03:57:02 +05:30
Abhinav Raut 490f0419ef Merge pull request #621 from abhinavxd/fix-idle-away-shown-as-away
show idle agents as online instead of away
2026-09-19 03:54:24 +05:30
Abhinav Raut ec00b94be5 speed up builds and load app layouts on demand 2026-09-19 03:48:34 +05:30
Abhinav Raut 7c9fac4f4a show idle agents as online instead of away
Idle agents still get auto-assigned tickets. Only the manual away
statuses skip them. The amber away dot made other agents think the
idle person would not get tickets. The agent picker, widget header
and the agents report now treat idle as online.
2026-09-19 02:26:37 +05:30
Abhinav Raut d2dc51b734 link article translations by group id and tidy the widget chat
Move the translation_group_id migration into v2.9.0 and drop the slug backfill. Existing articles each get their own group and admins link translations from the new UI. The public article page now builds its language links from the group instead of the slug, so translations with different slugs no longer 404.
2026-09-19 02:13:13 +05:30
Abhinav Raut 0ee2e9e86b merge main 2026-09-19 01:39:24 +05:30
Abhinav Raut 00c758f894 Merge pull request #620 from abhinavxd/feature/agent-ai-tools
Custom AI tools to copilot and generate reply with human approval
2026-09-19 01:37:11 +05:30
Abhinav Raut a1117ac5fe send the AI agent's last reply before handing off to a human
The handoff tool used to reassign the conversation right away, so the
assistant's own reply was dropped and the customer saw nothing. It now
records the intent, the reply goes out, then the handoff runs.
2026-09-19 01:34:43 +05:30
Abhinav Raut aa7336e10e move reusable AI tool labels to global translations 2026-09-19 01:08:05 +05:30
Abhinav Raut a85d59add9 always send verified for agent tool calls and tidy the approval UI 2026-09-19 00:39:32 +05:30
Abhinav Raut ea93e5efa9 update agent approval hint for AI tools to clarify data change requirements 2026-09-19 00:11:13 +05:30
Abhinav Raut 769aa32fdf send the real contact verification state to AI tools on agent surfaces 2026-09-18 20:54:38 +05:30
Abhinav Raut aac97e3baf reject a second AI tool run while one waits for approval 2026-09-18 20:44:21 +05:30
Abhinav Raut 8d99740a41 add custom AI tools to copilot and generate reply with an agent approval step 2026-09-18 20:19:52 +05:30
Abhinav Raut 28b33a1b56 insert campaign reply messages in the conversation transaction, allow zero cooldown, scope handoff drafts and parent origin 2026-09-18 20:11:54 +05:30
Abhinav Raut 216451647b label audience prechat toggle, pin handoff conversation, clear dismissed preview timers 2026-09-18 20:07:35 +05:30
Abhinav Raut 6614a77e65 reset fractional hidden repeat hours 2026-09-18 19:21:29 +05:30
Abhinav Raut eb14b27240 reset out of range repeat hours and widen campaign contact id 2026-09-18 19:02:01 +05:30
Abhinav Raut 7848551326 fix review findings in widget campaigns and help search 2026-09-18 18:42:15 +05:30
Abhinav Raut 8769e92f0b handle overnight campaign hours 2026-09-18 16:40:47 +05:30
Abhinav Raut 658e4e00a5 discard stale help searches 2026-09-18 16:40:00 +05:30
Abhinav Raut 23b4dea6f2 block duplicate handoff submissions 2026-09-18 16:39:55 +05:30
Abhinav Raut 4c5ce9c11a keep empty campaign previews rendering 2026-09-18 16:39:49 +05:30
Abhinav Raut da1d8e01a9 count unread messages for new conversations 2026-09-18 16:38:47 +05:30
Abhinav Raut 29847f955f keep campaign visitor sessions identified 2026-09-18 16:38:24 +05:30
Abhinav Raut b28f57674f fix quick reply character limits 2026-09-18 16:38:03 +05:30
Abhinav Raut 7d77754b52 improve live chat widget flows
Expand widget conversations with audience-specific forms, AI handoffs, message previews, and help article translations. Keep existing inbox settings compatible and reject invalid live chat configuration.
2026-09-18 16:09:15 +05:30
Abhinav Raut 3843f1e7e9 Merge branch 'main' into libredesk-widget-improvements 2026-09-18 02:55:49 +05:30
Abhinav Raut ccba084d4b Merge remote-tracking branch 'origin/main' into libredesk-widget-improvements 2026-09-18 02:54:09 +05:30
Abhinav Raut 98088f0d72 Merge pull request #612 from abhinavxd/search-improvements
add filters, pagination and richer results to conversation search
2026-09-18 02:53:36 +05:30
Abhinav Raut 319c5e6d17 add accessible labels to search controls 2026-09-18 02:46:14 +05:30
Abhinav Raut c1e9626a83 preserve search sort and remove unused pagination changes 2026-09-18 02:36:23 +05:30
Abhinav Raut ab44d64068 add cursor pagination and search sorting 2026-09-18 02:21:05 +05:30
Abhinav Raut 6a6e449c8d limit conversation suggestions to reference matches 2026-09-18 01:25:41 +05:30
Abhinav Raut 3d09ad1a2e preserve existing search API responses 2026-09-18 01:20:44 +05:30
Abhinav Raut 56269ca6b3 remove extra spacing from clear filters icon 2026-09-18 01:05:28 +05:30
Abhinav Raut 9c1e14704f fix campaign reply and poll edge cases, enlarge mobile launcher 2026-09-18 01:05:21 +05:30
Abhinav Raut 46e2e5250d escape wildcard characters in search queries 2026-09-18 01:04:54 +05:30
Abhinav Raut 741be04a00 Merge pull request #615 from abhinavxd/fix/kathmandu-timezone
add Kathmandu timezone option
2026-09-18 00:42:27 +05:30
Abhinav Raut 88daac8a8d improve search filters and results 2026-09-18 00:41:37 +05:30
Abhinav Raut f4f1352d63 add Kathmandu timezone option 2026-09-18 00:41:04 +05:30
Abhinav Raut 2ad949238f fix send using old draft after AI editor prompt rewrites it 2026-09-17 16:12:04 +05:30
Abhinav Raut 1892ff9dbd add extrap paddin when total page =1 2026-09-17 13:19:42 +05:30
Abhinav Raut 9391b50b80 fix search results and pagination 2026-09-17 02:29:30 +05:30
Abhinav Raut 608eefb76d Merge remote-tracking branch 'origin/main' into search-improvements 2026-09-17 02:25:17 +05:30
Abhinav Raut 2f1f67bf08 show pagination in a bordered panel 2026-09-17 02:02:39 +05:30