From 8be6e7d5812e2d5009afe0daab6fc13e0a91fd0f Mon Sep 17 00:00:00 2001 From: Ruslan Bakiev <572431+veikab@users.noreply.github.com> Date: Mon, 23 Feb 2026 11:44:53 +0700 Subject: [PATCH] refactor(workspace): extract communications sidebars --- .../components/workspace/CrmWorkspaceApp.vue | 540 ++---------------- .../CrmCommunicationsContextSidebar.vue | 222 +++++++ .../CrmCommunicationsListSidebar.vue | 206 +++++++ 3 files changed, 483 insertions(+), 485 deletions(-) create mode 100644 frontend/app/components/workspace/communications/CrmCommunicationsContextSidebar.vue create mode 100644 frontend/app/components/workspace/communications/CrmCommunicationsListSidebar.vue diff --git a/frontend/app/components/workspace/CrmWorkspaceApp.vue b/frontend/app/components/workspace/CrmWorkspaceApp.vue index 374354b..76e9922 100644 --- a/frontend/app/components/workspace/CrmWorkspaceApp.vue +++ b/frontend/app/components/workspace/CrmWorkspaceApp.vue @@ -3,6 +3,8 @@ import { nextTick, onBeforeUnmount, onMounted } from "vue"; import CrmAuthLoading from "~~/app/components/workspace/auth/CrmAuthLoading.vue"; import CrmAuthLoginForm from "~~/app/components/workspace/auth/CrmAuthLoginForm.vue"; import CrmCalendarPanel from "~~/app/components/workspace/calendar/CrmCalendarPanel.vue"; +import CrmCommunicationsContextSidebar from "~~/app/components/workspace/communications/CrmCommunicationsContextSidebar.vue"; +import CrmCommunicationsListSidebar from "~~/app/components/workspace/communications/CrmCommunicationsListSidebar.vue"; import CrmDocumentsPanel from "~~/app/components/workspace/documents/CrmDocumentsPanel.vue"; import CrmWorkspaceTopbar from "~~/app/components/workspace/header/CrmWorkspaceTopbar.vue"; import CrmPilotSidebar from "~~/app/components/workspace/pilot/CrmPilotSidebar.vue"; @@ -4908,354 +4910,36 @@ async function decideFeedCard(card: FeedCard, decision: "accepted" | "rejected") :calendar-zoom-ghost="calendarZoomGhost" /> -
-
-
- - -
-
-
-
- - - - - -
-
- -
- - -
-
-
-

{{ selectedContact!.name }}

-

- {{ selectedContact!.company }} · {{ selectedContact!.location }}, {{ selectedContact!.country }} -

-

Last contact · {{ formatStamp(selectedContact!.lastContactAt) }}

-
- -
- -
- -
-
-
-

Upcoming events

-
-
- -

- No linked events yet. -

-
-
- -
-
-

Recent messages

- -
-
- -

- No messages yet. -

-
-
-
-
- -
- No contact selected. -
-
-
-
- +
diff --git a/frontend/app/components/workspace/communications/CrmCommunicationsContextSidebar.vue b/frontend/app/components/workspace/communications/CrmCommunicationsContextSidebar.vue new file mode 100644 index 0000000..5308afa --- /dev/null +++ b/frontend/app/components/workspace/communications/CrmCommunicationsContextSidebar.vue @@ -0,0 +1,222 @@ + + + + + diff --git a/frontend/app/components/workspace/communications/CrmCommunicationsListSidebar.vue b/frontend/app/components/workspace/communications/CrmCommunicationsListSidebar.vue new file mode 100644 index 0000000..72873ae --- /dev/null +++ b/frontend/app/components/workspace/communications/CrmCommunicationsListSidebar.vue @@ -0,0 +1,206 @@ + + +