diff --git a/app/javascript/dashboard/components/buttons/ResolveAction.vue b/app/javascript/dashboard/components/buttons/ResolveAction.vue index 1d80defeb..84e33cc42 100644 --- a/app/javascript/dashboard/components/buttons/ResolveAction.vue +++ b/app/javascript/dashboard/components/buttons/ResolveAction.vue @@ -48,7 +48,7 @@ v-on-clickaway="closeDropdown" class="dropdown-pane dropdown-pane--open" > - + [ + { + icon: 'mail-inbox', + key: 'inboxView', + label: 'INBOX_VIEW', + featureFlag: FEATURE_FLAGS.INBOX_VIEW, + toState: frontendURL(`accounts/${accountId}/inbox-view`), + toStateName: 'inbox_view', + roles: ['administrator', 'agent'], + }, { icon: 'chat', key: 'conversations', diff --git a/app/javascript/dashboard/components/widgets/conversation/ConversationBox.vue b/app/javascript/dashboard/components/widgets/conversation/ConversationBox.vue index dad5c9c0b..2ad77452d 100644 --- a/app/javascript/dashboard/components/widgets/conversation/ConversationBox.vue +++ b/app/javascript/dashboard/components/widgets/conversation/ConversationBox.vue @@ -8,7 +8,7 @@ :chat="currentChat" :is-inbox-view="isInboxView" :is-contact-panel-open="isContactPanelOpen" - :show-back-button="isOnExpandedLayout" + :show-back-button="isOnExpandedLayout && !isInboxView" @contact-panel-toggle="onToggleContactPanel" /> - +
import('./ConversationView'); -const InboxView = () => import('../inbox/InboxView.vue'); export default { routes: [ - { - path: frontendURL('accounts/:accountId/inbox-view'), - name: 'inbox_view', - roles: ['administrator', 'agent'], - component: InboxView, - props: () => { - return { inboxId: 0 }; - }, - }, - { - path: frontendURL('accounts/:accountId/inbox-view/:conversation_id'), - name: 'inbox_view_conversation', - roles: ['administrator', 'agent'], - component: InboxView, - props: route => { - return { inboxId: 0, conversationId: route.params.conversation_id }; - }, - }, { path: frontendURL('accounts/:accountId/dashboard'), name: 'home', diff --git a/app/javascript/dashboard/routes/dashboard/dashboard.routes.js b/app/javascript/dashboard/routes/dashboard/dashboard.routes.js index 712e05928..9e18ca42c 100644 --- a/app/javascript/dashboard/routes/dashboard/dashboard.routes.js +++ b/app/javascript/dashboard/routes/dashboard/dashboard.routes.js @@ -3,6 +3,7 @@ import conversation from './conversation/conversation.routes'; import { routes as searchRoutes } from '../../modules/search/search.routes'; import { routes as contactRoutes } from './contacts/routes'; import { routes as notificationRoutes } from './notifications/routes'; +import { routes as inboxRoutes } from './inbox/routes'; import { frontendURL } from '../../helper/URLHelper'; import helpcenterRoutes from './helpcenter/helpcenter.routes'; @@ -16,6 +17,7 @@ export default { path: frontendURL('accounts/:account_id'), component: AppContainer, children: [ + ...inboxRoutes, ...conversation.routes, ...settings.routes, ...contactRoutes, diff --git a/app/javascript/dashboard/routes/dashboard/inbox/InboxEmptyState.vue b/app/javascript/dashboard/routes/dashboard/inbox/InboxEmptyState.vue new file mode 100644 index 000000000..49ab0a709 --- /dev/null +++ b/app/javascript/dashboard/routes/dashboard/inbox/InboxEmptyState.vue @@ -0,0 +1,40 @@ + + + diff --git a/app/javascript/dashboard/routes/dashboard/inbox/InboxList.vue b/app/javascript/dashboard/routes/dashboard/inbox/InboxList.vue index bb0f2e7df..93ba310c3 100644 --- a/app/javascript/dashboard/routes/dashboard/inbox/InboxList.vue +++ b/app/javascript/dashboard/routes/dashboard/inbox/InboxList.vue @@ -1,43 +1,47 @@ +