feat: Show pre-chat form before triggering the campaign (#3215)
This commit is contained in:
@@ -83,6 +83,8 @@ import { mapGetters } from 'vuex';
|
||||
import { MAXIMUM_FILE_UPLOAD_SIZE } from 'shared/constants/messages';
|
||||
import { BUS_EVENTS } from 'shared/constants/busEvents';
|
||||
import PreChatForm from '../components/PreChat/Form';
|
||||
import { isEmptyObject } from 'widget/helpers/utils';
|
||||
|
||||
export default {
|
||||
name: 'Home',
|
||||
components: {
|
||||
@@ -106,6 +108,10 @@ export default {
|
||||
type: Boolean,
|
||||
default: false,
|
||||
},
|
||||
isCampaignViewClicked: {
|
||||
type: Boolean,
|
||||
default: false,
|
||||
},
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
@@ -121,16 +127,24 @@ export default {
|
||||
groupedMessages: 'conversation/getGroupedConversation',
|
||||
isFetchingList: 'conversation/getIsFetchingList',
|
||||
currentUser: 'contacts/getCurrentUser',
|
||||
activeCampaign: 'campaign/getActiveCampaign',
|
||||
getCampaignHasExecuted: 'campaign/getCampaignHasExecuted',
|
||||
}),
|
||||
currentView() {
|
||||
const { email: currentUserEmail = '' } = this.currentUser;
|
||||
|
||||
if (this.isHeaderCollapsed) {
|
||||
if (this.conversationSize) {
|
||||
return 'messageView';
|
||||
}
|
||||
|
||||
if (
|
||||
this.isOnNewConversation ||
|
||||
(this.preChatFormEnabled && !currentUserEmail)
|
||||
!this.getCampaignHasExecuted &&
|
||||
((this.preChatFormEnabled &&
|
||||
!isEmptyObject(this.activeCampaign) &&
|
||||
this.preChatFormOptions.requireEmail) ||
|
||||
this.isOnNewConversation ||
|
||||
(this.preChatFormEnabled && !currentUserEmail))
|
||||
) {
|
||||
return 'preChatFormView';
|
||||
}
|
||||
@@ -145,10 +159,13 @@ export default {
|
||||
return MAXIMUM_FILE_UPLOAD_SIZE;
|
||||
},
|
||||
isHeaderCollapsed() {
|
||||
if (!this.hasIntroText || this.conversationSize) {
|
||||
if (
|
||||
!this.hasIntroText ||
|
||||
this.conversationSize ||
|
||||
this.isCampaignViewClicked
|
||||
) {
|
||||
return true;
|
||||
}
|
||||
|
||||
return this.isOnCollapsedView;
|
||||
},
|
||||
hasIntroText() {
|
||||
|
||||
Reference in New Issue
Block a user