mirror of
https://github.com/lingble/chatwoot.git
synced 2025-10-30 10:42:38 +00:00
feat: remove usage of .sync and define explicitly emits (#10209)
References - https://v3-migration.vuejs.org/breaking-changes/v-model - https://v3-migration.vuejs.org/breaking-changes/v-on-native-modifier-removed.html
This commit is contained in:
@@ -785,7 +785,7 @@ watch(conversationFilters, (newVal, oldVal) => {
|
|||||||
|
|
||||||
<DeleteCustomViews
|
<DeleteCustomViews
|
||||||
v-if="showDeleteFoldersModal"
|
v-if="showDeleteFoldersModal"
|
||||||
:show-delete-popup.sync="showDeleteFoldersModal"
|
v-model:show="showDeleteFoldersModal"
|
||||||
:active-custom-view="activeFolder"
|
:active-custom-view="activeFolder"
|
||||||
:custom-views-id="foldersId"
|
:custom-views-id="foldersId"
|
||||||
:open-last-item-after-delete="openLastItemAfterDeleteInFolder"
|
:open-last-item-after-delete="openLastItemAfterDeleteInFolder"
|
||||||
@@ -878,7 +878,7 @@ watch(conversationFilters, (newVal, oldVal) => {
|
|||||||
</DynamicScroller>
|
</DynamicScroller>
|
||||||
</div>
|
</div>
|
||||||
<woot-modal
|
<woot-modal
|
||||||
:show.sync="showAdvancedFilters"
|
v-model:show="showAdvancedFilters"
|
||||||
:on-close="closeAdvanceFiltersModal"
|
:on-close="closeAdvanceFiltersModal"
|
||||||
size="medium"
|
size="medium"
|
||||||
>
|
>
|
||||||
|
|||||||
@@ -3,9 +3,8 @@
|
|||||||
import { ref, computed, defineEmits, onMounted } from 'vue';
|
import { ref, computed, defineEmits, onMounted } from 'vue';
|
||||||
import { useEventListener } from '@vueuse/core';
|
import { useEventListener } from '@vueuse/core';
|
||||||
|
|
||||||
const { show, modalType, closeOnBackdropClick, onClose } = defineProps({
|
const { modalType, closeOnBackdropClick, onClose } = defineProps({
|
||||||
closeOnBackdropClick: { type: Boolean, default: true },
|
closeOnBackdropClick: { type: Boolean, default: true },
|
||||||
show: Boolean,
|
|
||||||
showCloseButton: { type: Boolean, default: true },
|
showCloseButton: { type: Boolean, default: true },
|
||||||
onClose: { type: Function, required: true },
|
onClose: { type: Function, required: true },
|
||||||
fullWidth: { type: Boolean, default: false },
|
fullWidth: { type: Boolean, default: false },
|
||||||
@@ -14,6 +13,7 @@ const { show, modalType, closeOnBackdropClick, onClose } = defineProps({
|
|||||||
});
|
});
|
||||||
|
|
||||||
const emit = defineEmits(['close']);
|
const emit = defineEmits(['close']);
|
||||||
|
const show = defineModel('show', { type: Boolean, default: false });
|
||||||
|
|
||||||
const modalClassName = computed(() => {
|
const modalClassName = computed(() => {
|
||||||
const modalClassNameMap = {
|
const modalClassNameMap = {
|
||||||
@@ -32,6 +32,7 @@ const handleMouseDown = () => {
|
|||||||
};
|
};
|
||||||
|
|
||||||
const close = () => {
|
const close = () => {
|
||||||
|
show.value = false;
|
||||||
emit('close');
|
emit('close');
|
||||||
onClose();
|
onClose();
|
||||||
};
|
};
|
||||||
@@ -40,14 +41,14 @@ const onMouseUp = () => {
|
|||||||
if (mousedDownOnBackdrop.value) {
|
if (mousedDownOnBackdrop.value) {
|
||||||
mousedDownOnBackdrop.value = false;
|
mousedDownOnBackdrop.value = false;
|
||||||
if (closeOnBackdropClick) {
|
if (closeOnBackdropClick) {
|
||||||
onClose();
|
close();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
const onKeydown = e => {
|
const onKeydown = e => {
|
||||||
if (show && e.code === 'Escape') {
|
if (show.value && e.code === 'Escape') {
|
||||||
onClose();
|
close();
|
||||||
e.stopPropagation();
|
e.stopPropagation();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ export default {
|
|||||||
modelValue: { type: Boolean, default: false },
|
modelValue: { type: Boolean, default: false },
|
||||||
size: { type: String, default: '' },
|
size: { type: String, default: '' },
|
||||||
},
|
},
|
||||||
|
emits: ['update:modelValue', 'input'],
|
||||||
methods: {
|
methods: {
|
||||||
onClick() {
|
onClick() {
|
||||||
this.$emit('update:modelValue', !this.modelValue);
|
this.$emit('update:modelValue', !this.modelValue);
|
||||||
|
|||||||
@@ -137,7 +137,7 @@ export default {
|
|||||||
@click="openAIAssist"
|
@click="openAIAssist"
|
||||||
/>
|
/>
|
||||||
<woot-modal
|
<woot-modal
|
||||||
:show.sync="showAIAssistanceModal"
|
v-model:show="showAIAssistanceModal"
|
||||||
:on-close="hideAIAssistanceModal"
|
:on-close="hideAIAssistanceModal"
|
||||||
>
|
>
|
||||||
<AIAssistanceModal
|
<AIAssistanceModal
|
||||||
@@ -149,7 +149,7 @@ export default {
|
|||||||
</div>
|
</div>
|
||||||
<div v-else-if="shouldShowAIAssistCTAButtonForAdmin" class="relative">
|
<div v-else-if="shouldShowAIAssistCTAButtonForAdmin" class="relative">
|
||||||
<AIAssistanceCTAButton @click="openAICta" />
|
<AIAssistanceCTAButton @click="openAICta" />
|
||||||
<woot-modal :show.sync="showAICtaModal" :on-close="hideAICtaModal">
|
<woot-modal v-model:show="showAICtaModal" :on-close="hideAICtaModal">
|
||||||
<AICTAModal @close="hideAICtaModal" />
|
<AICTAModal @close="hideAICtaModal" />
|
||||||
</woot-modal>
|
</woot-modal>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -38,6 +38,7 @@ export default {
|
|||||||
default: false,
|
default: false,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
emits: ['update:modelValue', 'input', 'removeAction', 'resetAction'],
|
||||||
computed: {
|
computed: {
|
||||||
action_name: {
|
action_name: {
|
||||||
get() {
|
get() {
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ export default {
|
|||||||
// The value types are dynamic, hence prop validation removed to work with our action schema
|
// The value types are dynamic, hence prop validation removed to work with our action schema
|
||||||
// eslint-disable-next-line vue/require-prop-types
|
// eslint-disable-next-line vue/require-prop-types
|
||||||
props: ['teams', 'value'],
|
props: ['teams', 'value'],
|
||||||
|
emits: ['input'],
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
selectedTeams: [],
|
selectedTeams: [],
|
||||||
|
|||||||
@@ -47,6 +47,7 @@ export default {
|
|||||||
placeholder: { type: String, default: '' },
|
placeholder: { type: String, default: '' },
|
||||||
enabledMenuOptions: { type: Array, default: () => [] },
|
enabledMenuOptions: { type: Array, default: () => [] },
|
||||||
},
|
},
|
||||||
|
emits: ['blur', 'input', 'update:modelValue', 'keyup', 'focus', 'keydown'],
|
||||||
setup() {
|
setup() {
|
||||||
const { uiSettings, updateUISettings } = useUISettings();
|
const { uiSettings, updateUISettings } = useUISettings();
|
||||||
|
|
||||||
|
|||||||
@@ -1,20 +1,20 @@
|
|||||||
<script>
|
<script>
|
||||||
|
import { defineModel } from 'vue';
|
||||||
import { useVuelidate } from '@vuelidate/core';
|
import { useVuelidate } from '@vuelidate/core';
|
||||||
import { required, minLength, email } from '@vuelidate/validators';
|
import { required, minLength, email } from '@vuelidate/validators';
|
||||||
import { useAlert } from 'dashboard/composables';
|
import { useAlert } from 'dashboard/composables';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
props: {
|
props: {
|
||||||
show: {
|
|
||||||
type: Boolean,
|
|
||||||
default: false,
|
|
||||||
},
|
|
||||||
currentChat: {
|
currentChat: {
|
||||||
type: Object,
|
type: Object,
|
||||||
default: () => ({}),
|
default: () => ({}),
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
emits: ['cancel'],
|
||||||
setup() {
|
setup() {
|
||||||
return { v$: useVuelidate() };
|
const show = defineModel('show', { type: Boolean, default: false });
|
||||||
|
return { v$: useVuelidate(), show };
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
@@ -80,9 +80,8 @@ export default {
|
|||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<!-- eslint-disable vue/no-mutating-props -->
|
|
||||||
<template>
|
<template>
|
||||||
<woot-modal :show.sync="show" :on-close="onCancel">
|
<woot-modal v-model:show="show" :on-close="onCancel">
|
||||||
<div class="flex flex-col h-auto overflow-auto">
|
<div class="flex flex-col h-auto overflow-auto">
|
||||||
<woot-modal-header
|
<woot-modal-header
|
||||||
:header-title="$t('EMAIL_TRANSCRIPT.TITLE')"
|
:header-title="$t('EMAIL_TRANSCRIPT.TITLE')"
|
||||||
|
|||||||
@@ -547,9 +547,9 @@ export default {
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<ReplyBox
|
<ReplyBox
|
||||||
|
v-model:popout-reply-box="isPopOutReplyBox"
|
||||||
:conversation-id="currentChat.id"
|
:conversation-id="currentChat.id"
|
||||||
:popout-reply-box.sync="isPopOutReplyBox"
|
@toggle-popout="showPopOutReplyBox"
|
||||||
@togglePopout="showPopOutReplyBox"
|
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
<script>
|
<script>
|
||||||
import { defineAsyncComponent } from 'vue';
|
// [TODO] The popout events are needlessly complex and should be simplified
|
||||||
|
import { defineAsyncComponent, defineModel } from 'vue';
|
||||||
import { mapGetters } from 'vuex';
|
import { mapGetters } from 'vuex';
|
||||||
import { useAlert } from 'dashboard/composables';
|
import { useAlert } from 'dashboard/composables';
|
||||||
import { useUISettings } from 'dashboard/composables/useUISettings';
|
import { useUISettings } from 'dashboard/composables/useUISettings';
|
||||||
@@ -65,12 +66,7 @@ export default {
|
|||||||
ArticleSearchPopover,
|
ArticleSearchPopover,
|
||||||
},
|
},
|
||||||
mixins: [inboxMixin, fileUploadMixin, keyboardEventListenerMixins],
|
mixins: [inboxMixin, fileUploadMixin, keyboardEventListenerMixins],
|
||||||
props: {
|
emits: ['update:popoutReplyBox', 'togglePopout'],
|
||||||
popoutReplyBox: {
|
|
||||||
type: Boolean,
|
|
||||||
default: false,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
setup() {
|
setup() {
|
||||||
const {
|
const {
|
||||||
uiSettings,
|
uiSettings,
|
||||||
@@ -79,8 +75,14 @@ export default {
|
|||||||
fetchSignatureFlagFromUISettings,
|
fetchSignatureFlagFromUISettings,
|
||||||
} = useUISettings();
|
} = useUISettings();
|
||||||
|
|
||||||
|
const popoutReplyBox = defineModel('popoutReplyBox', {
|
||||||
|
type: Boolean,
|
||||||
|
default: false,
|
||||||
|
});
|
||||||
|
|
||||||
return {
|
return {
|
||||||
uiSettings,
|
uiSettings,
|
||||||
|
popoutReplyBox,
|
||||||
updateUISettings,
|
updateUISettings,
|
||||||
isEditorHotKeyEnabled,
|
isEditorHotKeyEnabled,
|
||||||
fetchSignatureFlagFromUISettings,
|
fetchSignatureFlagFromUISettings,
|
||||||
@@ -1081,15 +1083,15 @@ export default {
|
|||||||
:banner-message="$t('CONVERSATION.NOT_ASSIGNED_TO_YOU')"
|
:banner-message="$t('CONVERSATION.NOT_ASSIGNED_TO_YOU')"
|
||||||
has-action-button
|
has-action-button
|
||||||
:action-button-label="$t('CONVERSATION.ASSIGN_TO_ME')"
|
:action-button-label="$t('CONVERSATION.ASSIGN_TO_ME')"
|
||||||
@primaryAction="onClickSelfAssign"
|
@primary-action="onClickSelfAssign"
|
||||||
/>
|
/>
|
||||||
<ReplyTopPanel
|
<ReplyTopPanel
|
||||||
:mode="replyType"
|
:mode="replyType"
|
||||||
:is-message-length-reaching-threshold="isMessageLengthReachingThreshold"
|
:is-message-length-reaching-threshold="isMessageLengthReachingThreshold"
|
||||||
:characters-remaining="charactersRemaining"
|
:characters-remaining="charactersRemaining"
|
||||||
:popout-reply-box="popoutReplyBox"
|
:popout-reply-box="popoutReplyBox"
|
||||||
@setReplyMode="setReplyMode"
|
@set-reply-mode="setReplyMode"
|
||||||
@togglePopout="$emit('togglePopout')"
|
@toggle-popout="$emit('togglePopout')"
|
||||||
/>
|
/>
|
||||||
<ArticleSearchPopover
|
<ArticleSearchPopover
|
||||||
v-if="showArticleSearchPopover && connectedPortalSlug"
|
v-if="showArticleSearchPopover && connectedPortalSlug"
|
||||||
|
|||||||
@@ -17,6 +17,7 @@ export default {
|
|||||||
default: '',
|
default: '',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
emits: ['update:bccEmails', 'update:ccEmails', 'update:toEmails'],
|
||||||
setup() {
|
setup() {
|
||||||
return { v$: useVuelidate() };
|
return { v$: useVuelidate() };
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
<script>
|
<script>
|
||||||
|
import { defineModel } from 'vue';
|
||||||
import TemplatesPicker from './TemplatesPicker.vue';
|
import TemplatesPicker from './TemplatesPicker.vue';
|
||||||
import TemplateParser from './TemplateParser.vue';
|
import TemplateParser from './TemplateParser.vue';
|
||||||
export default {
|
export default {
|
||||||
@@ -11,10 +12,12 @@ export default {
|
|||||||
type: Number,
|
type: Number,
|
||||||
default: undefined,
|
default: undefined,
|
||||||
},
|
},
|
||||||
show: {
|
},
|
||||||
type: Boolean,
|
emits: ['onSend', 'cancel'],
|
||||||
default: true,
|
setup() {
|
||||||
},
|
const show = defineModel('show', { type: Boolean, default: false });
|
||||||
|
|
||||||
|
return { show };
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
@@ -47,9 +50,8 @@ export default {
|
|||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<!-- eslint-disable vue/no-mutating-props -->
|
|
||||||
<template>
|
<template>
|
||||||
<woot-modal :show.sync="show" :on-close="onClose" size="modal-big">
|
<woot-modal v-model:show="show" :on-close="onClose" size="modal-big">
|
||||||
<woot-modal-header
|
<woot-modal-header
|
||||||
:header-title="$t('WHATSAPP_TEMPLATES.MODAL.TITLE')"
|
:header-title="$t('WHATSAPP_TEMPLATES.MODAL.TITLE')"
|
||||||
:header-content="modalHeaderContent"
|
:header-content="modalHeaderContent"
|
||||||
@@ -58,13 +60,13 @@ export default {
|
|||||||
<TemplatesPicker
|
<TemplatesPicker
|
||||||
v-if="!selectedWaTemplate"
|
v-if="!selectedWaTemplate"
|
||||||
:inbox-id="inboxId"
|
:inbox-id="inboxId"
|
||||||
@onSelect="pickTemplate"
|
@on-select="pickTemplate"
|
||||||
/>
|
/>
|
||||||
<TemplateParser
|
<TemplateParser
|
||||||
v-else
|
v-else
|
||||||
:template="selectedWaTemplate"
|
:template="selectedWaTemplate"
|
||||||
@resetTemplate="onResetTemplate"
|
@reset-template="onResetTemplate"
|
||||||
@sendMessage="onSendMessage"
|
@send-message="onSendMessage"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</woot-modal>
|
</woot-modal>
|
||||||
|
|||||||
@@ -26,7 +26,7 @@ export default {
|
|||||||
<template>
|
<template>
|
||||||
<div class="image message-text__wrap">
|
<div class="image message-text__wrap">
|
||||||
<img :src="url" @click="onClick" @error="$emit('error')" />
|
<img :src="url" @click="onClick" @error="$emit('error')" />
|
||||||
<woot-modal full-width :show.sync="show" :on-close="onClose">
|
<woot-modal v-model:show="show" full-width :on-close="onClose">
|
||||||
<img :src="url" class="modal-image skip-context-menu" />
|
<img :src="url" class="modal-image skip-context-menu" />
|
||||||
</woot-modal>
|
</woot-modal>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -116,7 +116,7 @@ export default {
|
|||||||
</audio>
|
</audio>
|
||||||
<GalleryView
|
<GalleryView
|
||||||
v-if="show"
|
v-if="show"
|
||||||
:show.sync="show"
|
v-model:show="show"
|
||||||
:attachment="attachment"
|
:attachment="attachment"
|
||||||
:all-attachments="filteredCurrentChatAttachments"
|
:all-attachments="filteredCurrentChatAttachments"
|
||||||
@error="onImgError"
|
@error="onImgError"
|
||||||
|
|||||||
@@ -106,7 +106,7 @@ export default {
|
|||||||
</button>
|
</button>
|
||||||
<GalleryView
|
<GalleryView
|
||||||
v-if="showGalleryViewer"
|
v-if="showGalleryViewer"
|
||||||
:show.sync="showGalleryViewer"
|
v-model:show="showGalleryViewer"
|
||||||
:attachment="attachment"
|
:attachment="attachment"
|
||||||
:all-attachments="availableAttachments"
|
:all-attachments="availableAttachments"
|
||||||
@error="onClose"
|
@error="onClose"
|
||||||
|
|||||||
@@ -30,7 +30,7 @@ export default {
|
|||||||
<template>
|
<template>
|
||||||
<div class="video message-text__wrap">
|
<div class="video message-text__wrap">
|
||||||
<video ref="videoElement" :src="url" muted playsInline @click="onClick" />
|
<video ref="videoElement" :src="url" muted playsInline @click="onClick" />
|
||||||
<woot-modal :show.sync="show" :on-close="onClose">
|
<woot-modal v-model:show="show" :on-close="onClose">
|
||||||
<video
|
<video
|
||||||
:src="url"
|
:src="url"
|
||||||
controls
|
controls
|
||||||
|
|||||||
@@ -7,10 +7,6 @@ import { messageTimestamp } from 'shared/helpers/timeHelper';
|
|||||||
import Thumbnail from 'dashboard/components/widgets/Thumbnail.vue';
|
import Thumbnail from 'dashboard/components/widgets/Thumbnail.vue';
|
||||||
|
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
show: {
|
|
||||||
type: Boolean,
|
|
||||||
required: true,
|
|
||||||
},
|
|
||||||
attachment: {
|
attachment: {
|
||||||
type: Object,
|
type: Object,
|
||||||
required: true,
|
required: true,
|
||||||
@@ -22,6 +18,7 @@ const props = defineProps({
|
|||||||
});
|
});
|
||||||
|
|
||||||
const emit = defineEmits(['close']);
|
const emit = defineEmits(['close']);
|
||||||
|
const show = defineModel('show', { type: Boolean, default: false });
|
||||||
|
|
||||||
const getters = useStoreGetters();
|
const getters = useStoreGetters();
|
||||||
|
|
||||||
@@ -208,11 +205,10 @@ onMounted(() => {
|
|||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<!-- eslint-disable vue/no-mutating-props -->
|
|
||||||
<template>
|
<template>
|
||||||
<woot-modal
|
<woot-modal
|
||||||
|
v-model:show="show"
|
||||||
full-width
|
full-width
|
||||||
:show.sync="show"
|
|
||||||
:show-close-button="false"
|
:show-close-button="false"
|
||||||
:on-close="onClose"
|
:on-close="onClose"
|
||||||
>
|
>
|
||||||
|
|||||||
@@ -240,7 +240,7 @@ export default {
|
|||||||
{{ $t('BULK_ACTION.ALL_CONVERSATIONS_SELECTED_ALERT') }}
|
{{ $t('BULK_ACTION.ALL_CONVERSATIONS_SELECTED_ALERT') }}
|
||||||
</div>
|
</div>
|
||||||
<woot-modal
|
<woot-modal
|
||||||
:show.sync="showCustomTimeSnoozeModal"
|
v-model:show="showCustomTimeSnoozeModal"
|
||||||
:on-close="hideCustomSnoozeModal"
|
:on-close="hideCustomSnoozeModal"
|
||||||
>
|
>
|
||||||
<CustomSnoozeModal
|
<CustomSnoozeModal
|
||||||
|
|||||||
@@ -122,7 +122,7 @@ onMounted(() => {
|
|||||||
@unlinkIssue="unlinkIssue"
|
@unlinkIssue="unlinkIssue"
|
||||||
/>
|
/>
|
||||||
<woot-modal
|
<woot-modal
|
||||||
:show.sync="shouldShowPopup"
|
v-model:show="shouldShowPopup"
|
||||||
:on-close="closePopup"
|
:on-close="closePopup"
|
||||||
:close-on-backdrop-click="false"
|
:close-on-backdrop-click="false"
|
||||||
class="!items-start [&>div]:!top-12 [&>div]:sticky"
|
class="!items-start [&>div]:!top-12 [&>div]:sticky"
|
||||||
|
|||||||
@@ -38,7 +38,8 @@ export default {
|
|||||||
default: () => {},
|
default: () => {},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
created() {
|
emits: ['update:modelValue', 'input', 'blur'],
|
||||||
|
mounted() {
|
||||||
// eslint-disable-next-line
|
// eslint-disable-next-line
|
||||||
console.warn(
|
console.warn(
|
||||||
'[DEPRECATED] <WootInput> has be deprecated and will be removed soon. Please use v3/components/Form/Input.vue instead'
|
'[DEPRECATED] <WootInput> has be deprecated and will be removed soon. Please use v3/components/Form/Input.vue instead'
|
||||||
|
|||||||
@@ -29,6 +29,7 @@ export default {
|
|||||||
default: false,
|
default: false,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
emits: ['blur', 'input', 'setCode'],
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
selectedIndex: -1,
|
selectedIndex: -1,
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
<script>
|
<script>
|
||||||
|
import { defineModel } from 'vue';
|
||||||
import { required } from '@vuelidate/validators';
|
import { required } from '@vuelidate/validators';
|
||||||
import { useVuelidate } from '@vuelidate/core';
|
import { useVuelidate } from '@vuelidate/core';
|
||||||
import Modal from '../../Modal.vue';
|
import Modal from '../../Modal.vue';
|
||||||
@@ -8,37 +9,17 @@ export default {
|
|||||||
Modal,
|
Modal,
|
||||||
},
|
},
|
||||||
props: {
|
props: {
|
||||||
show: {
|
title: { type: String, default: '' },
|
||||||
type: Boolean,
|
message: { type: String, default: '' },
|
||||||
default: false,
|
confirmText: { type: String, default: '' },
|
||||||
},
|
rejectText: { type: String, default: '' },
|
||||||
title: {
|
confirmValue: { type: String, default: '' },
|
||||||
type: String,
|
confirmPlaceHolderText: { type: String, default: '' },
|
||||||
default: '',
|
|
||||||
},
|
|
||||||
message: {
|
|
||||||
type: String,
|
|
||||||
default: '',
|
|
||||||
},
|
|
||||||
confirmText: {
|
|
||||||
type: String,
|
|
||||||
default: '',
|
|
||||||
},
|
|
||||||
rejectText: {
|
|
||||||
type: String,
|
|
||||||
default: '',
|
|
||||||
},
|
|
||||||
confirmValue: {
|
|
||||||
type: String,
|
|
||||||
default: '',
|
|
||||||
},
|
|
||||||
confirmPlaceHolderText: {
|
|
||||||
type: String,
|
|
||||||
default: '',
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
|
emits: ['onClose', 'onConfirm'],
|
||||||
setup() {
|
setup() {
|
||||||
return { v$: useVuelidate() };
|
const show = defineModel('show', { type: Boolean, default: false });
|
||||||
|
return { v$: useVuelidate(), show };
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
@@ -65,9 +46,8 @@ export default {
|
|||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<!-- eslint-disable vue/no-mutating-props -->
|
|
||||||
<template>
|
<template>
|
||||||
<Modal :show.sync="show" :on-close="closeModal">
|
<Modal v-model:show="show" :on-close="closeModal">
|
||||||
<woot-modal-header :header-title="title" :header-content="message" />
|
<woot-modal-header :header-title="title" :header-content="message" />
|
||||||
<form @submit.prevent="onConfirm">
|
<form @submit.prevent="onConfirm">
|
||||||
<woot-input
|
<woot-input
|
||||||
|
|||||||
@@ -51,7 +51,7 @@ export default {
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<Modal :show.sync="show" :on-close="cancel">
|
<Modal v-model:show="show" :on-close="cancel">
|
||||||
<div class="h-auto overflow-auto flex flex-col">
|
<div class="h-auto overflow-auto flex flex-col">
|
||||||
<woot-modal-header :header-title="title" :header-content="description" />
|
<woot-modal-header :header-title="title" :header-content="description" />
|
||||||
<div class="flex flex-row justify-end gap-2 py-4 px-6 w-full">
|
<div class="flex flex-row justify-end gap-2 py-4 px-6 w-full">
|
||||||
|
|||||||
@@ -1,26 +1,21 @@
|
|||||||
<script>
|
<script setup>
|
||||||
import Modal from '../../Modal.vue';
|
import Modal from '../../Modal.vue';
|
||||||
|
|
||||||
export default {
|
defineProps({
|
||||||
components: {
|
onClose: { type: Function, default: () => {} },
|
||||||
Modal,
|
onConfirm: { type: Function, default: () => {} },
|
||||||
},
|
title: { type: String, default: '' },
|
||||||
props: {
|
message: { type: String, default: '' },
|
||||||
show: Boolean,
|
messageValue: { type: String, default: '' },
|
||||||
onClose: { type: Function, default: () => {} },
|
confirmText: { type: String, default: '' },
|
||||||
onConfirm: { type: Function, default: () => {} },
|
rejectText: { type: String, default: '' },
|
||||||
title: { type: String, default: '' },
|
});
|
||||||
message: { type: String, default: '' },
|
|
||||||
messageValue: { type: String, default: '' },
|
const show = defineModel('show', { type: Boolean, default: false });
|
||||||
confirmText: { type: String, default: '' },
|
|
||||||
rejectText: { type: String, default: '' },
|
|
||||||
},
|
|
||||||
};
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<!-- eslint-disable vue/no-mutating-props -->
|
|
||||||
<template>
|
<template>
|
||||||
<Modal :show.sync="show" :on-close="onClose">
|
<Modal v-model:show="show" :on-close="onClose">
|
||||||
<woot-modal-header
|
<woot-modal-header
|
||||||
:header-title="title"
|
:header-title="title"
|
||||||
:header-content="message"
|
:header-content="message"
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
<script>
|
<script>
|
||||||
|
import { defineModel } from 'vue';
|
||||||
import { useAlert, useTrack } from 'dashboard/composables';
|
import { useAlert, useTrack } from 'dashboard/composables';
|
||||||
import MergeContact from 'dashboard/modules/contact/components/MergeContact.vue';
|
import MergeContact from 'dashboard/modules/contact/components/MergeContact.vue';
|
||||||
|
|
||||||
@@ -14,10 +15,11 @@ export default {
|
|||||||
type: Object,
|
type: Object,
|
||||||
required: true,
|
required: true,
|
||||||
},
|
},
|
||||||
show: {
|
},
|
||||||
type: Boolean,
|
setup() {
|
||||||
default: false,
|
const show = defineModel('show', { type: Boolean, default: false });
|
||||||
},
|
|
||||||
|
return { show };
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
@@ -69,9 +71,8 @@ export default {
|
|||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<!-- eslint-disable vue/no-mutating-props -->
|
|
||||||
<template>
|
<template>
|
||||||
<woot-modal :show.sync="show" :on-close="onClose">
|
<woot-modal v-model:show="show" :on-close="onClose">
|
||||||
<woot-modal-header
|
<woot-modal-header
|
||||||
:header-title="$t('MERGE_CONTACTS.TITLE')"
|
:header-title="$t('MERGE_CONTACTS.TITLE')"
|
||||||
:header-content="$t('MERGE_CONTACTS.DESCRIPTION')"
|
:header-content="$t('MERGE_CONTACTS.DESCRIPTION')"
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
<script>
|
<script>
|
||||||
|
import { defineModel } from 'vue';
|
||||||
import Modal from 'dashboard/components/Modal.vue';
|
import Modal from 'dashboard/components/Modal.vue';
|
||||||
import { useVuelidate } from '@vuelidate/core';
|
import { useVuelidate } from '@vuelidate/core';
|
||||||
import { required, minLength } from '@vuelidate/validators';
|
import { required, minLength } from '@vuelidate/validators';
|
||||||
@@ -8,17 +9,15 @@ export default {
|
|||||||
Modal,
|
Modal,
|
||||||
},
|
},
|
||||||
props: {
|
props: {
|
||||||
show: {
|
|
||||||
type: Boolean,
|
|
||||||
default: true,
|
|
||||||
},
|
|
||||||
isCreating: {
|
isCreating: {
|
||||||
type: Boolean,
|
type: Boolean,
|
||||||
default: false,
|
default: false,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
emits: ['create', 'cancel'],
|
||||||
setup() {
|
setup() {
|
||||||
return { v$: useVuelidate() };
|
const show = defineModel('show', { type: Boolean, default: false });
|
||||||
|
return { v$: useVuelidate(), show };
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
@@ -61,9 +60,8 @@ export default {
|
|||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<!-- eslint-disable vue/no-mutating-props -->
|
|
||||||
<template>
|
<template>
|
||||||
<Modal :show.sync="show" :on-close="onClose">
|
<Modal v-model:show="show" :on-close="onClose">
|
||||||
<woot-modal-header
|
<woot-modal-header
|
||||||
:header-title="$t('CUSTOM_ATTRIBUTES.ADD.TITLE')"
|
:header-title="$t('CUSTOM_ATTRIBUTES.ADD.TITLE')"
|
||||||
:header-content="$t('CUSTOM_ATTRIBUTES.ADD.DESC')"
|
:header-content="$t('CUSTOM_ATTRIBUTES.ADD.DESC')"
|
||||||
|
|||||||
@@ -154,7 +154,7 @@ export default {
|
|||||||
<!-- Add To Canned Responses -->
|
<!-- Add To Canned Responses -->
|
||||||
<woot-modal
|
<woot-modal
|
||||||
v-if="isCannedResponseModalOpen && enabledOptions['cannedResponse']"
|
v-if="isCannedResponseModalOpen && enabledOptions['cannedResponse']"
|
||||||
:show.sync="isCannedResponseModalOpen"
|
v-model:show="isCannedResponseModalOpen"
|
||||||
:on-close="hideCannedResponseModal"
|
:on-close="hideCannedResponseModal"
|
||||||
>
|
>
|
||||||
<AddCannedModal
|
<AddCannedModal
|
||||||
@@ -172,8 +172,8 @@ export default {
|
|||||||
<!-- Confirm Deletion -->
|
<!-- Confirm Deletion -->
|
||||||
<woot-delete-modal
|
<woot-delete-modal
|
||||||
v-if="showDeleteModal"
|
v-if="showDeleteModal"
|
||||||
|
v-model:show="showDeleteModal"
|
||||||
class="context-menu--delete-modal"
|
class="context-menu--delete-modal"
|
||||||
:show.sync="showDeleteModal"
|
|
||||||
:on-close="closeDeleteModal"
|
:on-close="closeDeleteModal"
|
||||||
:on-confirm="confirmDeletion"
|
:on-confirm="confirmDeletion"
|
||||||
:title="$t('CONVERSATION.CONTEXT_MENU.DELETE_CONFIRMATION.TITLE')"
|
:title="$t('CONVERSATION.CONTEXT_MENU.DELETE_CONFIRMATION.TITLE')"
|
||||||
|
|||||||
@@ -102,7 +102,7 @@ export default {
|
|||||||
</div>
|
</div>
|
||||||
<woot-delete-modal
|
<woot-delete-modal
|
||||||
v-if="showDeleteModal"
|
v-if="showDeleteModal"
|
||||||
:show.sync="showDeleteModal"
|
v-model:show="showDeleteModal"
|
||||||
:on-close="closeDelete"
|
:on-close="closeDelete"
|
||||||
:on-confirm="confirmDeletion"
|
:on-confirm="confirmDeletion"
|
||||||
:title="$t('DELETE_NOTE.CONFIRM.TITLE')"
|
:title="$t('DELETE_NOTE.CONFIRM.TITLE')"
|
||||||
|
|||||||
@@ -178,7 +178,7 @@ export default {
|
|||||||
@closeAccountCreateModal="closeCreateAccountModal"
|
@closeAccountCreateModal="closeCreateAccountModal"
|
||||||
/>
|
/>
|
||||||
<WootKeyShortcutModal
|
<WootKeyShortcutModal
|
||||||
:show.sync="showShortcutModal"
|
v-model:show="showShortcutModal"
|
||||||
@close="closeKeyShortcutModal"
|
@close="closeKeyShortcutModal"
|
||||||
@clickaway="closeKeyShortcutModal"
|
@clickaway="closeKeyShortcutModal"
|
||||||
/>
|
/>
|
||||||
@@ -186,7 +186,10 @@ export default {
|
|||||||
v-if="isNotificationPanel"
|
v-if="isNotificationPanel"
|
||||||
@close="closeNotificationPanel"
|
@close="closeNotificationPanel"
|
||||||
/>
|
/>
|
||||||
<woot-modal :show.sync="showAddLabelModal" :on-close="hideAddLabelPopup">
|
<woot-modal
|
||||||
|
v-model:show="showAddLabelModal"
|
||||||
|
:on-close="hideAddLabelPopup"
|
||||||
|
>
|
||||||
<AddLabelModal @close="hideAddLabelPopup" />
|
<AddLabelModal @close="hideAddLabelPopup" />
|
||||||
</woot-modal>
|
</woot-modal>
|
||||||
</main>
|
</main>
|
||||||
|
|||||||
@@ -61,7 +61,7 @@ useEmitter(CMD_SNOOZE_CONVERSATION, onCmdSnoozeConversation);
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<woot-modal
|
<woot-modal
|
||||||
:show.sync="showCustomSnoozeModal"
|
v-model:show="showCustomSnoozeModal"
|
||||||
:on-close="hideCustomSnoozeModal"
|
:on-close="hideCustomSnoozeModal"
|
||||||
>
|
>
|
||||||
<CustomSnoozeModal
|
<CustomSnoozeModal
|
||||||
|
|||||||
@@ -437,7 +437,7 @@ export default {
|
|||||||
/>
|
/>
|
||||||
<DeleteCustomViews
|
<DeleteCustomViews
|
||||||
v-if="showDeleteSegmentsModal"
|
v-if="showDeleteSegmentsModal"
|
||||||
:show-delete-popup.sync="showDeleteSegmentsModal"
|
v-model:show="showDeleteSegmentsModal"
|
||||||
:active-custom-view="activeSegment"
|
:active-custom-view="activeSegment"
|
||||||
:custom-views-id="segmentsId"
|
:custom-views-id="segmentsId"
|
||||||
:active-filter-type="filterType"
|
:active-filter-type="filterType"
|
||||||
@@ -451,11 +451,11 @@ export default {
|
|||||||
:on-close="closeContactInfoPanel"
|
:on-close="closeContactInfoPanel"
|
||||||
/>
|
/>
|
||||||
<CreateContact :show="showCreateModal" @cancel="onToggleCreate" />
|
<CreateContact :show="showCreateModal" @cancel="onToggleCreate" />
|
||||||
<woot-modal :show.sync="showImportModal" :on-close="onToggleImport">
|
<woot-modal v-model:show="showImportModal" :on-close="onToggleImport">
|
||||||
<ImportContacts v-if="showImportModal" :on-close="onToggleImport" />
|
<ImportContacts v-if="showImportModal" :on-close="onToggleImport" />
|
||||||
</woot-modal>
|
</woot-modal>
|
||||||
<woot-modal
|
<woot-modal
|
||||||
:show.sync="showFiltersModal"
|
v-model:show="showFiltersModal"
|
||||||
:on-close="closeAdvanceFiltersModal"
|
:on-close="closeAdvanceFiltersModal"
|
||||||
size="medium"
|
size="medium"
|
||||||
>
|
>
|
||||||
|
|||||||
@@ -53,7 +53,7 @@ export default {
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<Modal :show.sync="show" :on-close="onClose">
|
<Modal v-model:show="show" :on-close="onClose">
|
||||||
<div class="flex flex-col h-auto overflow-auto">
|
<div class="flex flex-col h-auto overflow-auto">
|
||||||
<woot-modal-header :header-title="$t('IMPORT_CONTACTS.TITLE')">
|
<woot-modal-header :header-title="$t('IMPORT_CONTACTS.TITLE')">
|
||||||
<p>
|
<p>
|
||||||
|
|||||||
@@ -321,7 +321,7 @@ export default {
|
|||||||
</div>
|
</div>
|
||||||
<woot-delete-modal
|
<woot-delete-modal
|
||||||
v-if="showDeleteModal"
|
v-if="showDeleteModal"
|
||||||
:show.sync="showDeleteModal"
|
v-model:show="showDeleteModal"
|
||||||
:on-close="closeDelete"
|
:on-close="closeDelete"
|
||||||
:on-confirm="confirmDeletion"
|
:on-confirm="confirmDeletion"
|
||||||
:title="$t('DELETE_CONTACT.CONFIRM.TITLE')"
|
:title="$t('DELETE_CONTACT.CONFIRM.TITLE')"
|
||||||
|
|||||||
@@ -440,8 +440,8 @@ export default {
|
|||||||
</label>
|
</label>
|
||||||
<ReplyEmailHead
|
<ReplyEmailHead
|
||||||
v-if="isAnEmailInbox"
|
v-if="isAnEmailInbox"
|
||||||
:cc-emails.sync="ccEmails"
|
v-model:cc-emails="ccEmails"
|
||||||
:bcc-emails.sync="bccEmails"
|
v-model:bcc-emails="bccEmails"
|
||||||
/>
|
/>
|
||||||
<div class="editor-wrap">
|
<div class="editor-wrap">
|
||||||
<WootMessageEditor
|
<WootMessageEditor
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
<script>
|
<script>
|
||||||
|
import { defineModel } from 'vue';
|
||||||
import { mapGetters } from 'vuex';
|
import { mapGetters } from 'vuex';
|
||||||
import ContactForm from './ContactForm.vue';
|
import ContactForm from './ContactForm.vue';
|
||||||
|
|
||||||
@@ -6,13 +7,12 @@ export default {
|
|||||||
components: {
|
components: {
|
||||||
ContactForm,
|
ContactForm,
|
||||||
},
|
},
|
||||||
props: {
|
emits: ['cancel'],
|
||||||
show: {
|
setup() {
|
||||||
type: Boolean,
|
const show = defineModel('show', { type: Boolean, default: false });
|
||||||
default: false,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
|
|
||||||
|
return { show };
|
||||||
|
},
|
||||||
computed: {
|
computed: {
|
||||||
...mapGetters({
|
...mapGetters({
|
||||||
uiFlags: 'contacts/getUIFlags',
|
uiFlags: 'contacts/getUIFlags',
|
||||||
@@ -33,9 +33,12 @@ export default {
|
|||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<!-- eslint-disable vue/no-mutating-props -->
|
|
||||||
<template>
|
<template>
|
||||||
<woot-modal :show.sync="show" :on-close="onCancel" modal-type="right-aligned">
|
<woot-modal
|
||||||
|
v-model:show="show"
|
||||||
|
:on-close="onCancel"
|
||||||
|
modal-type="right-aligned"
|
||||||
|
>
|
||||||
<div class="flex flex-col h-auto overflow-auto">
|
<div class="flex flex-col h-auto overflow-auto">
|
||||||
<woot-modal-header
|
<woot-modal-header
|
||||||
:header-title="$t('CREATE_CONTACT.TITLE')"
|
:header-title="$t('CREATE_CONTACT.TITLE')"
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
<script>
|
<script>
|
||||||
|
import { defineModel } from 'vue';
|
||||||
import { mapGetters } from 'vuex';
|
import { mapGetters } from 'vuex';
|
||||||
import ContactForm from './ContactForm.vue';
|
import ContactForm from './ContactForm.vue';
|
||||||
|
|
||||||
@@ -7,16 +8,16 @@ export default {
|
|||||||
ContactForm,
|
ContactForm,
|
||||||
},
|
},
|
||||||
props: {
|
props: {
|
||||||
show: {
|
|
||||||
type: Boolean,
|
|
||||||
default: false,
|
|
||||||
},
|
|
||||||
contact: {
|
contact: {
|
||||||
type: Object,
|
type: Object,
|
||||||
default: () => ({}),
|
default: () => ({}),
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
emits: ['cancel'],
|
||||||
|
setup() {
|
||||||
|
const show = defineModel('show', { type: Boolean, default: false });
|
||||||
|
return { show };
|
||||||
|
},
|
||||||
computed: {
|
computed: {
|
||||||
...mapGetters({
|
...mapGetters({
|
||||||
uiFlags: 'contacts/getUIFlags',
|
uiFlags: 'contacts/getUIFlags',
|
||||||
@@ -41,9 +42,12 @@ export default {
|
|||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<!-- eslint-disable vue/no-mutating-props -->
|
|
||||||
<template>
|
<template>
|
||||||
<woot-modal :show.sync="show" :on-close="onCancel" modal-type="right-aligned">
|
<woot-modal
|
||||||
|
v-model:show="show"
|
||||||
|
:on-close="onCancel"
|
||||||
|
modal-type="right-aligned"
|
||||||
|
>
|
||||||
<div class="flex flex-col h-auto overflow-auto">
|
<div class="flex flex-col h-auto overflow-auto">
|
||||||
<woot-modal-header
|
<woot-modal-header
|
||||||
:header-title="`${$t('EDIT_CONTACT.TITLE')} - ${
|
:header-title="`${$t('EDIT_CONTACT.TITLE')} - ${
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
<script>
|
<script>
|
||||||
|
import { defineModel } from 'vue';
|
||||||
import ConversationForm from './ConversationForm.vue';
|
import ConversationForm from './ConversationForm.vue';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
@@ -6,15 +7,16 @@ export default {
|
|||||||
ConversationForm,
|
ConversationForm,
|
||||||
},
|
},
|
||||||
props: {
|
props: {
|
||||||
show: {
|
|
||||||
type: Boolean,
|
|
||||||
default: false,
|
|
||||||
},
|
|
||||||
contact: {
|
contact: {
|
||||||
type: Object,
|
type: Object,
|
||||||
default: () => ({}),
|
default: () => ({}),
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
emits: ['cancel'],
|
||||||
|
setup() {
|
||||||
|
const show = defineModel('show', { type: Boolean, default: false });
|
||||||
|
return { show };
|
||||||
|
},
|
||||||
watch: {
|
watch: {
|
||||||
'contact.id'(id) {
|
'contact.id'(id) {
|
||||||
this.$store.dispatch('contacts/fetchContactableInbox', id);
|
this.$store.dispatch('contacts/fetchContactableInbox', id);
|
||||||
@@ -42,9 +44,8 @@ export default {
|
|||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<!-- eslint-disable vue/no-mutating-props -->
|
|
||||||
<template>
|
<template>
|
||||||
<woot-modal :show.sync="show" :on-close="onCancel">
|
<woot-modal v-model:show="show" :on-close="onCancel">
|
||||||
<div class="flex flex-col h-auto overflow-auto">
|
<div class="flex flex-col h-auto overflow-auto">
|
||||||
<woot-modal-header
|
<woot-modal-header
|
||||||
:header-title="$t('NEW_CONVERSATION.TITLE')"
|
:header-title="$t('NEW_CONVERSATION.TITLE')"
|
||||||
|
|||||||
@@ -83,7 +83,7 @@ export default {
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<woot-modal :show.sync="show" :on-close="onClose">
|
<woot-modal v-model:show="show" :on-close="onClose">
|
||||||
<woot-modal-header :header-title="$t('FILTER.CUSTOM_VIEWS.ADD.TITLE')" />
|
<woot-modal-header :header-title="$t('FILTER.CUSTOM_VIEWS.ADD.TITLE')" />
|
||||||
<form class="w-full" @submit.prevent="saveCustomViews">
|
<form class="w-full" @submit.prevent="saveCustomViews">
|
||||||
<div class="w-full">
|
<div class="w-full">
|
||||||
|
|||||||
@@ -1,14 +1,11 @@
|
|||||||
<script>
|
<script>
|
||||||
|
import { defineModel } from 'vue';
|
||||||
import { useAlert } from 'dashboard/composables';
|
import { useAlert } from 'dashboard/composables';
|
||||||
import { CONTACTS_EVENTS } from '../../../helper/AnalyticsHelper/events';
|
import { CONTACTS_EVENTS } from '../../../helper/AnalyticsHelper/events';
|
||||||
import { useTrack } from 'dashboard/composables';
|
import { useTrack } from 'dashboard/composables';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
props: {
|
props: {
|
||||||
showDeletePopup: {
|
|
||||||
type: Boolean,
|
|
||||||
default: false,
|
|
||||||
},
|
|
||||||
activeCustomView: {
|
activeCustomView: {
|
||||||
type: Object,
|
type: Object,
|
||||||
default: () => {},
|
default: () => {},
|
||||||
@@ -26,7 +23,11 @@ export default {
|
|||||||
default: () => {},
|
default: () => {},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
emits: ['close'],
|
||||||
|
setup() {
|
||||||
|
const show = defineModel('show', { type: Boolean, default: false });
|
||||||
|
return { show };
|
||||||
|
},
|
||||||
computed: {
|
computed: {
|
||||||
activeCustomViews() {
|
activeCustomViews() {
|
||||||
if (this.activeFilterType === 0) {
|
if (this.activeFilterType === 0) {
|
||||||
@@ -89,12 +90,11 @@ export default {
|
|||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<!-- eslint-disable vue/no-mutating-props -->
|
|
||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<woot-delete-modal
|
<woot-delete-modal
|
||||||
v-if="showDeletePopup"
|
v-if="show"
|
||||||
:show.sync="showDeletePopup"
|
v-model:show="show"
|
||||||
:on-close="closeDeletePopup"
|
:on-close="closeDeletePopup"
|
||||||
:on-confirm="deleteSavedCustomViews"
|
:on-confirm="deleteSavedCustomViews"
|
||||||
:title="$t('FILTER.CUSTOM_VIEWS.DELETE.MODAL.CONFIRM.TITLE')"
|
:title="$t('FILTER.CUSTOM_VIEWS.DELETE.MODAL.CONFIRM.TITLE')"
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
<script>
|
<script>
|
||||||
|
import { defineModel } from 'vue';
|
||||||
import Modal from 'dashboard/components/Modal.vue';
|
import Modal from 'dashboard/components/Modal.vue';
|
||||||
import { required } from '@vuelidate/validators';
|
import { required } from '@vuelidate/validators';
|
||||||
import { useVuelidate } from '@vuelidate/core';
|
import { useVuelidate } from '@vuelidate/core';
|
||||||
@@ -12,17 +13,15 @@ export default {
|
|||||||
Modal,
|
Modal,
|
||||||
},
|
},
|
||||||
props: {
|
props: {
|
||||||
show: {
|
|
||||||
type: Boolean,
|
|
||||||
default: true,
|
|
||||||
},
|
|
||||||
portal: {
|
portal: {
|
||||||
type: Object,
|
type: Object,
|
||||||
default: () => ({}),
|
default: () => ({}),
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
emits: ['cancel'],
|
||||||
setup() {
|
setup() {
|
||||||
return { v$: useVuelidate() };
|
const show = defineModel('show', { type: Boolean, default: false });
|
||||||
|
return { v$: useVuelidate(), show };
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
@@ -96,9 +95,8 @@ export default {
|
|||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<!-- eslint-disable vue/no-mutating-props -->
|
|
||||||
<template>
|
<template>
|
||||||
<Modal :show.sync="show" :on-close="onClose">
|
<Modal v-model:show="show" :on-close="onClose">
|
||||||
<woot-modal-header
|
<woot-modal-header
|
||||||
:header-title="$t('HELP_CENTER.PORTAL.ADD_LOCALE.TITLE')"
|
:header-title="$t('HELP_CENTER.PORTAL.ADD_LOCALE.TITLE')"
|
||||||
:header-content="$t('HELP_CENTER.PORTAL.ADD_LOCALE.SUB_TITLE')"
|
:header-content="$t('HELP_CENTER.PORTAL.ADD_LOCALE.SUB_TITLE')"
|
||||||
|
|||||||
@@ -336,7 +336,7 @@ export default {
|
|||||||
/>
|
/>
|
||||||
<AddCategory
|
<AddCategory
|
||||||
v-if="showAddCategoryModal"
|
v-if="showAddCategoryModal"
|
||||||
:show.sync="showAddCategoryModal"
|
v-model:show="showAddCategoryModal"
|
||||||
:portal-name="selectedPortalName"
|
:portal-name="selectedPortalName"
|
||||||
:locale="selectedLocaleInPortal"
|
:locale="selectedLocaleInPortal"
|
||||||
:portal-slug="selectedPortalSlug"
|
:portal-slug="selectedPortalSlug"
|
||||||
|
|||||||
@@ -365,7 +365,7 @@ export default {
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<woot-delete-modal
|
<woot-delete-modal
|
||||||
:show.sync="showDeleteConfirmationPopup"
|
v-model:show="showDeleteConfirmationPopup"
|
||||||
:on-close="closeDeletePopup"
|
:on-close="closeDeletePopup"
|
||||||
:on-confirm="onClickDeletePortal"
|
:on-confirm="onClickDeletePortal"
|
||||||
:title="$t('HELP_CENTER.PORTAL.PORTAL_SETTINGS.DELETE_PORTAL.TITLE')"
|
:title="$t('HELP_CENTER.PORTAL.PORTAL_SETTINGS.DELETE_PORTAL.TITLE')"
|
||||||
|
|||||||
@@ -37,6 +37,7 @@ export default {
|
|||||||
default: () => [],
|
default: () => [],
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
emits: ['input', 'openPopover', 'openModal'],
|
||||||
computed: {
|
computed: {
|
||||||
hasCategory() {
|
hasCategory() {
|
||||||
return (
|
return (
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
<script>
|
<script>
|
||||||
export default {
|
export default {
|
||||||
|
emits: ['input'],
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
searchValue: '',
|
searchValue: '',
|
||||||
|
|||||||
@@ -204,7 +204,7 @@ export default {
|
|||||||
@updateMeta="updateMeta"
|
@updateMeta="updateMeta"
|
||||||
/>
|
/>
|
||||||
<woot-delete-modal
|
<woot-delete-modal
|
||||||
:show.sync="showDeleteConfirmationPopup"
|
v-model:show="showDeleteConfirmationPopup"
|
||||||
:on-close="closeDeletePopup"
|
:on-close="closeDeletePopup"
|
||||||
:on-confirm="confirmDeletion"
|
:on-confirm="confirmDeletion"
|
||||||
:title="$t('HELP_CENTER.DELETE_ARTICLE.MODAL.CONFIRM.TITLE')"
|
:title="$t('HELP_CENTER.DELETE_ARTICLE.MODAL.CONFIRM.TITLE')"
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
<script>
|
<script>
|
||||||
|
import { defineModel } from 'vue';
|
||||||
import { required, minLength } from '@vuelidate/validators';
|
import { required, minLength } from '@vuelidate/validators';
|
||||||
import { useVuelidate } from '@vuelidate/core';
|
import { useVuelidate } from '@vuelidate/core';
|
||||||
import { useAlert, useTrack } from 'dashboard/composables';
|
import { useAlert, useTrack } from 'dashboard/composables';
|
||||||
@@ -9,10 +10,6 @@ import NameEmojiInput from './NameEmojiInput.vue';
|
|||||||
export default {
|
export default {
|
||||||
components: { NameEmojiInput },
|
components: { NameEmojiInput },
|
||||||
props: {
|
props: {
|
||||||
show: {
|
|
||||||
type: Boolean,
|
|
||||||
default: true,
|
|
||||||
},
|
|
||||||
portalName: {
|
portalName: {
|
||||||
type: String,
|
type: String,
|
||||||
default: '',
|
default: '',
|
||||||
@@ -27,7 +24,8 @@ export default {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
setup() {
|
setup() {
|
||||||
return { v$: useVuelidate() };
|
const show = defineModel('show', { type: Boolean, default: false });
|
||||||
|
return { v$: useVuelidate(), show };
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
@@ -111,9 +109,8 @@ export default {
|
|||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<!-- eslint-disable vue/no-mutating-props -->
|
|
||||||
<template>
|
<template>
|
||||||
<woot-modal :show.sync="show" :on-close="onClose">
|
<woot-modal v-model:show="show" :on-close="onClose">
|
||||||
<woot-modal-header
|
<woot-modal-header
|
||||||
:header-title="$t('HELP_CENTER.CATEGORY.ADD.TITLE')"
|
:header-title="$t('HELP_CENTER.CATEGORY.ADD.TITLE')"
|
||||||
:header-content="$t('HELP_CENTER.CATEGORY.ADD.SUB_TITLE')"
|
:header-content="$t('HELP_CENTER.CATEGORY.ADD.SUB_TITLE')"
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
<script>
|
<script>
|
||||||
|
import { defineModel } from 'vue';
|
||||||
import { required, minLength } from '@vuelidate/validators';
|
import { required, minLength } from '@vuelidate/validators';
|
||||||
import { useVuelidate } from '@vuelidate/core';
|
import { useVuelidate } from '@vuelidate/core';
|
||||||
import { useAlert, useTrack } from 'dashboard/composables';
|
import { useAlert, useTrack } from 'dashboard/composables';
|
||||||
@@ -9,10 +10,6 @@ import CategoryNameIconInput from './NameEmojiInput.vue';
|
|||||||
export default {
|
export default {
|
||||||
components: { CategoryNameIconInput },
|
components: { CategoryNameIconInput },
|
||||||
props: {
|
props: {
|
||||||
show: {
|
|
||||||
type: Boolean,
|
|
||||||
default: true,
|
|
||||||
},
|
|
||||||
portalName: {
|
portalName: {
|
||||||
type: String,
|
type: String,
|
||||||
default: '',
|
default: '',
|
||||||
@@ -31,7 +28,8 @@ export default {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
setup() {
|
setup() {
|
||||||
return { v$: useVuelidate() };
|
const show = defineModel('show', { type: Boolean, default: false });
|
||||||
|
return { v$: useVuelidate(), show };
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
@@ -120,9 +118,8 @@ export default {
|
|||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<!-- eslint-disable vue/no-mutating-props -->
|
|
||||||
<template>
|
<template>
|
||||||
<woot-modal :show.sync="show" :on-close="onClose">
|
<woot-modal v-model:show="show" :on-close="onClose">
|
||||||
<woot-modal-header
|
<woot-modal-header
|
||||||
:header-title="$t('HELP_CENTER.CATEGORY.EDIT.TITLE')"
|
:header-title="$t('HELP_CENTER.CATEGORY.EDIT.TITLE')"
|
||||||
:header-content="$t('HELP_CENTER.CATEGORY.EDIT.SUB_TITLE')"
|
:header-content="$t('HELP_CENTER.CATEGORY.EDIT.SUB_TITLE')"
|
||||||
|
|||||||
@@ -141,7 +141,7 @@ function changeCurrentCategory(event) {
|
|||||||
</div>
|
</div>
|
||||||
<EditCategory
|
<EditCategory
|
||||||
v-if="showEditCategoryModal"
|
v-if="showEditCategoryModal"
|
||||||
:show.sync="showEditCategoryModal"
|
v-model:show="showEditCategoryModal"
|
||||||
:portal-name="currentPortalName"
|
:portal-name="currentPortalName"
|
||||||
:locale="selectedCategory.locale"
|
:locale="selectedCategory.locale"
|
||||||
:category="selectedCategory"
|
:category="selectedCategory"
|
||||||
@@ -150,7 +150,7 @@ function changeCurrentCategory(event) {
|
|||||||
/>
|
/>
|
||||||
<AddCategory
|
<AddCategory
|
||||||
v-if="showAddCategoryModal"
|
v-if="showAddCategoryModal"
|
||||||
:show.sync="showAddCategoryModal"
|
v-model:show="showAddCategoryModal"
|
||||||
:portal-name="currentPortalName"
|
:portal-name="currentPortalName"
|
||||||
:locale="currentLocaleCode"
|
:locale="currentLocaleCode"
|
||||||
@cancel="closeAddCategoryModal"
|
@cancel="closeAddCategoryModal"
|
||||||
|
|||||||
@@ -129,7 +129,7 @@ function addLocale() {
|
|||||||
@delete="deletePortalLocale"
|
@delete="deletePortalLocale"
|
||||||
/>
|
/>
|
||||||
<woot-modal
|
<woot-modal
|
||||||
:show.sync="isAddLocaleModalOpen"
|
v-model:show="isAddLocaleModalOpen"
|
||||||
:on-close="closeAddLocaleModal"
|
:on-close="closeAddLocaleModal"
|
||||||
>
|
>
|
||||||
<AddLocale
|
<AddLocale
|
||||||
|
|||||||
@@ -92,7 +92,7 @@ export default {
|
|||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<woot-modal
|
<woot-modal
|
||||||
:show.sync="isAddLocaleModalOpen"
|
v-model:show="isAddLocaleModalOpen"
|
||||||
:on-close="closeAddLocaleModal"
|
:on-close="closeAddLocaleModal"
|
||||||
>
|
>
|
||||||
<AddLocale
|
<AddLocale
|
||||||
|
|||||||
@@ -147,7 +147,7 @@ export default {
|
|||||||
</woot-button>
|
</woot-button>
|
||||||
</div>
|
</div>
|
||||||
<woot-modal
|
<woot-modal
|
||||||
:show.sync="showCustomSnoozeModal"
|
v-model:show="showCustomSnoozeModal"
|
||||||
:on-close="hideCustomSnoozeModal"
|
:on-close="hideCustomSnoozeModal"
|
||||||
>
|
>
|
||||||
<CustomSnoozeModal
|
<CustomSnoozeModal
|
||||||
|
|||||||
@@ -10,6 +10,7 @@ export default {
|
|||||||
default: '',
|
default: '',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
emits: ['input'],
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
iframeLoading: true,
|
iframeLoading: true,
|
||||||
|
|||||||
@@ -255,11 +255,11 @@ const confirmDeletion = () => {
|
|||||||
</table>
|
</table>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<woot-modal :show.sync="showAddPopup" :on-close="hideAddPopup">
|
<woot-modal v-model:show="showAddPopup" :on-close="hideAddPopup">
|
||||||
<AddAgent @close="hideAddPopup" />
|
<AddAgent @close="hideAddPopup" />
|
||||||
</woot-modal>
|
</woot-modal>
|
||||||
|
|
||||||
<woot-modal :show.sync="showEditPopup" :on-close="hideEditPopup">
|
<woot-modal v-model:show="showEditPopup" :on-close="hideEditPopup">
|
||||||
<EditAgent
|
<EditAgent
|
||||||
v-if="showEditPopup"
|
v-if="showEditPopup"
|
||||||
:id="currentAgent.id"
|
:id="currentAgent.id"
|
||||||
@@ -273,7 +273,7 @@ const confirmDeletion = () => {
|
|||||||
</woot-modal>
|
</woot-modal>
|
||||||
|
|
||||||
<woot-delete-modal
|
<woot-delete-modal
|
||||||
:show.sync="showDeletePopup"
|
v-model:show="showDeletePopup"
|
||||||
:on-close="closeDeletePopup"
|
:on-close="closeDeletePopup"
|
||||||
:on-confirm="confirmDeletion"
|
:on-confirm="confirmDeletion"
|
||||||
:title="$t('AGENT_MGMT.DELETE.CONFIRM.TITLE')"
|
:title="$t('AGENT_MGMT.DELETE.CONFIRM.TITLE')"
|
||||||
|
|||||||
@@ -158,7 +158,7 @@ export default {
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<woot-modal :show.sync="show" :on-close="onClose">
|
<woot-modal v-model:show="show" :on-close="onClose">
|
||||||
<div class="flex flex-col h-auto overflow-auto">
|
<div class="flex flex-col h-auto overflow-auto">
|
||||||
<woot-modal-header :header-title="$t('ATTRIBUTES_MGMT.ADD.TITLE')" />
|
<woot-modal-header :header-title="$t('ATTRIBUTES_MGMT.ADD.TITLE')" />
|
||||||
|
|
||||||
|
|||||||
@@ -145,7 +145,7 @@ const tableHeaders = computed(() => {
|
|||||||
</tr>
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
<woot-modal :show.sync="showEditPopup" :on-close="hideEditPopup">
|
<woot-modal v-model:show="showEditPopup" :on-close="hideEditPopup">
|
||||||
<EditAttribute
|
<EditAttribute
|
||||||
:selected-attribute="selectedAttribute"
|
:selected-attribute="selectedAttribute"
|
||||||
:is-updating="uiFlags.isUpdating"
|
:is-updating="uiFlags.isUpdating"
|
||||||
@@ -154,7 +154,7 @@ const tableHeaders = computed(() => {
|
|||||||
</woot-modal>
|
</woot-modal>
|
||||||
<woot-confirm-delete-modal
|
<woot-confirm-delete-modal
|
||||||
v-if="showDeletePopup"
|
v-if="showDeletePopup"
|
||||||
:show.sync="showDeletePopup"
|
v-model:show="showDeletePopup"
|
||||||
:title="confirmDeleteTitle"
|
:title="confirmDeleteTitle"
|
||||||
:message="$t('ATTRIBUTES_MGMT.DELETE.CONFIRM.MESSAGE')"
|
:message="$t('ATTRIBUTES_MGMT.DELETE.CONFIRM.MESSAGE')"
|
||||||
:confirm-text="deleteConfirmText"
|
:confirm-text="deleteConfirmText"
|
||||||
|
|||||||
@@ -101,7 +101,7 @@ const onClickTabChange = index => {
|
|||||||
</template>
|
</template>
|
||||||
<woot-modal
|
<woot-modal
|
||||||
v-if="showAddPopup"
|
v-if="showAddPopup"
|
||||||
:show.sync="showAddPopup"
|
v-model:show="showAddPopup"
|
||||||
:on-close="hideAddPopup"
|
:on-close="hideAddPopup"
|
||||||
>
|
>
|
||||||
<AddAttribute
|
<AddAttribute
|
||||||
|
|||||||
@@ -224,7 +224,7 @@ const tableHeaders = computed(() => {
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<woot-modal
|
<woot-modal
|
||||||
:show.sync="showAddPopup"
|
v-model:show="showAddPopup"
|
||||||
size="medium"
|
size="medium"
|
||||||
:on-close="hideAddPopup"
|
:on-close="hideAddPopup"
|
||||||
>
|
>
|
||||||
@@ -236,7 +236,7 @@ const tableHeaders = computed(() => {
|
|||||||
</woot-modal>
|
</woot-modal>
|
||||||
|
|
||||||
<woot-delete-modal
|
<woot-delete-modal
|
||||||
:show.sync="showDeleteConfirmationPopup"
|
v-model:show="showDeleteConfirmationPopup"
|
||||||
:on-close="closeDeletePopup"
|
:on-close="closeDeletePopup"
|
||||||
:on-confirm="confirmDeletion"
|
:on-confirm="confirmDeletion"
|
||||||
:title="$t('LABEL_MGMT.DELETE.CONFIRM.TITLE')"
|
:title="$t('LABEL_MGMT.DELETE.CONFIRM.TITLE')"
|
||||||
@@ -247,7 +247,7 @@ const tableHeaders = computed(() => {
|
|||||||
/>
|
/>
|
||||||
|
|
||||||
<woot-modal
|
<woot-modal
|
||||||
:show.sync="showEditPopup"
|
v-model:show="showEditPopup"
|
||||||
size="medium"
|
size="medium"
|
||||||
:on-close="hideEditPopup"
|
:on-close="hideEditPopup"
|
||||||
>
|
>
|
||||||
|
|||||||
@@ -81,14 +81,14 @@ export default {
|
|||||||
@edit="openEditPopup"
|
@edit="openEditPopup"
|
||||||
@delete="openDeletePopup"
|
@delete="openDeletePopup"
|
||||||
/>
|
/>
|
||||||
<woot-modal :show.sync="showEditPopup" :on-close="hideEditPopup">
|
<woot-modal v-model:show="showEditPopup" :on-close="hideEditPopup">
|
||||||
<EditCampaign
|
<EditCampaign
|
||||||
:selected-campaign="selectedCampaign"
|
:selected-campaign="selectedCampaign"
|
||||||
@onClose="hideEditPopup"
|
@onClose="hideEditPopup"
|
||||||
/>
|
/>
|
||||||
</woot-modal>
|
</woot-modal>
|
||||||
<woot-delete-modal
|
<woot-delete-modal
|
||||||
:show.sync="showDeleteConfirmationPopup"
|
v-model:show="showDeleteConfirmationPopup"
|
||||||
:on-close="closeDeletePopup"
|
:on-close="closeDeletePopup"
|
||||||
:on-confirm="confirmDeletion"
|
:on-confirm="confirmDeletion"
|
||||||
:title="$t('CAMPAIGN.DELETE.CONFIRM.TITLE')"
|
:title="$t('CAMPAIGN.DELETE.CONFIRM.TITLE')"
|
||||||
|
|||||||
@@ -48,7 +48,7 @@ export default {
|
|||||||
{{ buttonText }}
|
{{ buttonText }}
|
||||||
</woot-button>
|
</woot-button>
|
||||||
<Campaign />
|
<Campaign />
|
||||||
<woot-modal :show.sync="showAddPopup" :on-close="hideAddPopup">
|
<woot-modal v-model:show="showAddPopup" :on-close="hideAddPopup">
|
||||||
<AddCampaign @onClose="hideAddPopup" />
|
<AddCampaign @onClose="hideAddPopup" />
|
||||||
</woot-modal>
|
</woot-modal>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -82,7 +82,7 @@ export default {
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<Modal :show.sync="show" :on-close="onClose">
|
<Modal v-model:show="show" :on-close="onClose">
|
||||||
<div class="flex flex-col h-auto overflow-auto">
|
<div class="flex flex-col h-auto overflow-auto">
|
||||||
<woot-modal-header
|
<woot-modal-header
|
||||||
:header-title="$t('CANNED_MGMT.ADD.TITLE')"
|
:header-title="$t('CANNED_MGMT.ADD.TITLE')"
|
||||||
|
|||||||
@@ -89,7 +89,7 @@ export default {
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<Modal :show.sync="show" :on-close="onClose">
|
<Modal v-model:show="show" :on-close="onClose">
|
||||||
<div class="flex flex-col h-auto overflow-auto">
|
<div class="flex flex-col h-auto overflow-auto">
|
||||||
<woot-modal-header :header-title="pageTitle" />
|
<woot-modal-header :header-title="pageTitle" />
|
||||||
<form class="flex flex-col w-full" @submit.prevent="editCannedResponse()">
|
<form class="flex flex-col w-full" @submit.prevent="editCannedResponse()">
|
||||||
|
|||||||
@@ -214,11 +214,11 @@ const tableHeaders = computed(() => {
|
|||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<woot-modal :show.sync="showAddPopup" :on-close="hideAddPopup">
|
<woot-modal v-model:show="showAddPopup" :on-close="hideAddPopup">
|
||||||
<AddCanned :on-close="hideAddPopup" />
|
<AddCanned :on-close="hideAddPopup" />
|
||||||
</woot-modal>
|
</woot-modal>
|
||||||
|
|
||||||
<woot-modal :show.sync="showEditPopup" :on-close="hideEditPopup">
|
<woot-modal v-model:show="showEditPopup" :on-close="hideEditPopup">
|
||||||
<EditCanned
|
<EditCanned
|
||||||
v-if="showEditPopup"
|
v-if="showEditPopup"
|
||||||
:id="activeResponse.id"
|
:id="activeResponse.id"
|
||||||
@@ -229,7 +229,7 @@ const tableHeaders = computed(() => {
|
|||||||
</woot-modal>
|
</woot-modal>
|
||||||
|
|
||||||
<woot-delete-modal
|
<woot-delete-modal
|
||||||
:show.sync="showDeleteConfirmationPopup"
|
v-model:show="showDeleteConfirmationPopup"
|
||||||
:on-close="closeDeletePopup"
|
:on-close="closeDeletePopup"
|
||||||
:on-confirm="confirmDeletion"
|
:on-confirm="confirmDeletion"
|
||||||
:title="$t('CANNED_MGMT.DELETE.CONFIRM.TITLE')"
|
:title="$t('CANNED_MGMT.DELETE.CONFIRM.TITLE')"
|
||||||
|
|||||||
@@ -174,7 +174,7 @@ const confirmDeletion = () => {
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<woot-modal
|
<woot-modal
|
||||||
:show.sync="showCustomRoleModal"
|
v-model:show="showCustomRoleModal"
|
||||||
:on-close="hideCustomRoleModal"
|
:on-close="hideCustomRoleModal"
|
||||||
>
|
>
|
||||||
<CustomRoleModal
|
<CustomRoleModal
|
||||||
@@ -185,7 +185,7 @@ const confirmDeletion = () => {
|
|||||||
</woot-modal>
|
</woot-modal>
|
||||||
|
|
||||||
<woot-delete-modal
|
<woot-delete-modal
|
||||||
:show.sync="showDeleteConfirmationPopup"
|
v-model:show="showDeleteConfirmationPopup"
|
||||||
:on-close="closeDeletePopup"
|
:on-close="closeDeletePopup"
|
||||||
:on-confirm="confirmDeletion"
|
:on-confirm="confirmDeletion"
|
||||||
:title="$t('CUSTOM_ROLE.DELETE.CONFIRM.TITLE')"
|
:title="$t('CUSTOM_ROLE.DELETE.CONFIRM.TITLE')"
|
||||||
|
|||||||
@@ -175,7 +175,7 @@ const openDelete = inbox => {
|
|||||||
|
|
||||||
<woot-confirm-delete-modal
|
<woot-confirm-delete-modal
|
||||||
v-if="showDeletePopup"
|
v-if="showDeletePopup"
|
||||||
:show.sync="showDeletePopup"
|
v-model:show="showDeletePopup"
|
||||||
:title="$t('INBOX_MGMT.DELETE.CONFIRM.TITLE')"
|
:title="$t('INBOX_MGMT.DELETE.CONFIRM.TITLE')"
|
||||||
:message="confirmDeleteMessage"
|
:message="confirmDeleteMessage"
|
||||||
:confirm-text="deleteConfirmText"
|
:confirm-text="deleteConfirmText"
|
||||||
|
|||||||
@@ -148,7 +148,7 @@ export default {
|
|||||||
/>
|
/>
|
||||||
|
|
||||||
<woot-delete-modal
|
<woot-delete-modal
|
||||||
:show.sync="showDeleteConfirmationPopup"
|
v-model:show="showDeleteConfirmationPopup"
|
||||||
:on-close="closeDeletePopup"
|
:on-close="closeDeletePopup"
|
||||||
:on-confirm="confirmDeletion"
|
:on-confirm="confirmDeletion"
|
||||||
:title="$t('INTEGRATION_SETTINGS.DASHBOARD_APPS.DELETE.TITLE')"
|
:title="$t('INTEGRATION_SETTINGS.DASHBOARD_APPS.DELETE.TITLE')"
|
||||||
|
|||||||
@@ -116,7 +116,7 @@ export default {
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<woot-delete-modal
|
<woot-delete-modal
|
||||||
:show.sync="showDeleteConfirmationPopup"
|
v-model:show="showDeleteConfirmationPopup"
|
||||||
:on-close="closeDeletePopup"
|
:on-close="closeDeletePopup"
|
||||||
:on-confirm="confirmDeletion"
|
:on-confirm="confirmDeletion"
|
||||||
:title="
|
:title="
|
||||||
|
|||||||
@@ -135,12 +135,12 @@ export default {
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<woot-modal :show.sync="showAddHookModal" :on-close="hideAddHookModal">
|
<woot-modal v-model:show="showAddHookModal" :on-close="hideAddHookModal">
|
||||||
<NewHook :integration-id="integrationId" @close="hideAddHookModal" />
|
<NewHook :integration-id="integrationId" @close="hideAddHookModal" />
|
||||||
</woot-modal>
|
</woot-modal>
|
||||||
|
|
||||||
<woot-delete-modal
|
<woot-delete-modal
|
||||||
:show.sync="showDeleteConfirmationPopup"
|
v-model:show="showDeleteConfirmationPopup"
|
||||||
:on-close="closeDeletePopup"
|
:on-close="closeDeletePopup"
|
||||||
:on-confirm="confirmDeletion"
|
:on-confirm="confirmDeletion"
|
||||||
:title="deleteTitle"
|
:title="deleteTitle"
|
||||||
|
|||||||
@@ -138,11 +138,11 @@ export default {
|
|||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
</template>
|
</template>
|
||||||
<woot-modal :show.sync="showAddPopup" :on-close="hideAddPopup">
|
<woot-modal v-model:show="showAddPopup" :on-close="hideAddPopup">
|
||||||
<NewWebhook v-if="showAddPopup" :on-close="hideAddPopup" />
|
<NewWebhook v-if="showAddPopup" :on-close="hideAddPopup" />
|
||||||
</woot-modal>
|
</woot-modal>
|
||||||
|
|
||||||
<woot-modal :show.sync="showEditPopup" :on-close="hideEditPopup">
|
<woot-modal v-model:show="showEditPopup" :on-close="hideEditPopup">
|
||||||
<EditWebhook
|
<EditWebhook
|
||||||
v-if="showEditPopup"
|
v-if="showEditPopup"
|
||||||
:id="selectedWebHook.id"
|
:id="selectedWebHook.id"
|
||||||
@@ -151,7 +151,7 @@ export default {
|
|||||||
/>
|
/>
|
||||||
</woot-modal>
|
</woot-modal>
|
||||||
<woot-delete-modal
|
<woot-delete-modal
|
||||||
:show.sync="showDeleteConfirmationPopup"
|
v-model:show="showDeleteConfirmationPopup"
|
||||||
:on-close="closeDeletePopup"
|
:on-close="closeDeletePopup"
|
||||||
:on-confirm="confirmDeletion"
|
:on-confirm="confirmDeletion"
|
||||||
:title="$t('INTEGRATION_SETTINGS.WEBHOOK.DELETE.CONFIRM.TITLE')"
|
:title="$t('INTEGRATION_SETTINGS.WEBHOOK.DELETE.CONFIRM.TITLE')"
|
||||||
|
|||||||
@@ -167,16 +167,16 @@ onBeforeMount(() => {
|
|||||||
</table>
|
</table>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<woot-modal :show.sync="showAddPopup" :on-close="hideAddPopup">
|
<woot-modal v-model:show="showAddPopup" :on-close="hideAddPopup">
|
||||||
<AddLabel @close="hideAddPopup" />
|
<AddLabel @close="hideAddPopup" />
|
||||||
</woot-modal>
|
</woot-modal>
|
||||||
|
|
||||||
<woot-modal :show.sync="showEditPopup" :on-close="hideEditPopup">
|
<woot-modal v-model:show="showEditPopup" :on-close="hideEditPopup">
|
||||||
<EditLabel :selected-response="selectedLabel" @close="hideEditPopup" />
|
<EditLabel :selected-response="selectedLabel" @close="hideEditPopup" />
|
||||||
</woot-modal>
|
</woot-modal>
|
||||||
|
|
||||||
<woot-delete-modal
|
<woot-delete-modal
|
||||||
:show.sync="showDeleteConfirmationPopup"
|
v-model:show="showDeleteConfirmationPopup"
|
||||||
:on-close="closeDeletePopup"
|
:on-close="closeDeletePopup"
|
||||||
:on-confirm="confirmDeletion"
|
:on-confirm="confirmDeletion"
|
||||||
:title="$t('LABEL_MGMT.DELETE.CONFIRM.TITLE')"
|
:title="$t('LABEL_MGMT.DELETE.CONFIRM.TITLE')"
|
||||||
|
|||||||
@@ -107,7 +107,7 @@ const tableHeaders = computed(() => {
|
|||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
<woot-delete-modal
|
<woot-delete-modal
|
||||||
:show.sync="showDeleteConfirmationPopup"
|
v-model:show="showDeleteConfirmationPopup"
|
||||||
:on-close="closeDeletePopup"
|
:on-close="closeDeletePopup"
|
||||||
:on-confirm="confirmDeletion"
|
:on-confirm="confirmDeletion"
|
||||||
:title="$t('LABEL_MGMT.DELETE.CONFIRM.TITLE')"
|
:title="$t('LABEL_MGMT.DELETE.CONFIRM.TITLE')"
|
||||||
|
|||||||
@@ -148,12 +148,12 @@ export default {
|
|||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<woot-modal :show.sync="showAddPopup" :on-close="hideAddPopup">
|
<woot-modal v-model:show="showAddPopup" :on-close="hideAddPopup">
|
||||||
<AddSLA @close="hideAddPopup" />
|
<AddSLA @close="hideAddPopup" />
|
||||||
</woot-modal>
|
</woot-modal>
|
||||||
|
|
||||||
<woot-delete-modal
|
<woot-delete-modal
|
||||||
:show.sync="showDeleteConfirmationPopup"
|
v-model:show="showDeleteConfirmationPopup"
|
||||||
:on-close="closeDeletePopup"
|
:on-close="closeDeletePopup"
|
||||||
:on-confirm="confirmDeletion"
|
:on-confirm="confirmDeletion"
|
||||||
:title="$t('SLA.DELETE.CONFIRM.TITLE')"
|
:title="$t('SLA.DELETE.CONFIRM.TITLE')"
|
||||||
|
|||||||
@@ -144,7 +144,7 @@ const confirmPlaceHolderText = computed(() =>
|
|||||||
</div>
|
</div>
|
||||||
<woot-confirm-delete-modal
|
<woot-confirm-delete-modal
|
||||||
v-if="showDeletePopup"
|
v-if="showDeletePopup"
|
||||||
:show.sync="showDeletePopup"
|
v-model:show="showDeletePopup"
|
||||||
:title="confirmDeleteTitle"
|
:title="confirmDeleteTitle"
|
||||||
:message="$t('TEAMS_SETTINGS.DELETE.CONFIRM.MESSAGE')"
|
:message="$t('TEAMS_SETTINGS.DELETE.CONFIRM.MESSAGE')"
|
||||||
:confirm-text="deleteConfirmText"
|
:confirm-text="deleteConfirmText"
|
||||||
|
|||||||
@@ -9,6 +9,7 @@ export default {
|
|||||||
PublicSearchInput,
|
PublicSearchInput,
|
||||||
SearchSuggestions,
|
SearchSuggestions,
|
||||||
},
|
},
|
||||||
|
emits: ['input', 'blur'],
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
searchTerm: '',
|
searchTerm: '',
|
||||||
|
|||||||
@@ -25,6 +25,7 @@ export default {
|
|||||||
default: '',
|
default: '',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
emits: ['input'],
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
greetingsMessage: this.value,
|
greetingsMessage: this.value,
|
||||||
|
|||||||
@@ -40,6 +40,14 @@ export default {
|
|||||||
default: false,
|
default: false,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
emits: [
|
||||||
|
'input',
|
||||||
|
'update:modelValue',
|
||||||
|
'typingOn',
|
||||||
|
'typingOff',
|
||||||
|
'focus',
|
||||||
|
'blur',
|
||||||
|
],
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
typingIndicator: createTypingIndicator(
|
typingIndicator: createTypingIndicator(
|
||||||
|
|||||||
@@ -170,7 +170,7 @@ export default {
|
|||||||
</woot-button>
|
</woot-button>
|
||||||
|
|
||||||
<woot-modal
|
<woot-modal
|
||||||
:show.sync="createModalVisible"
|
v-model:show="createModalVisible"
|
||||||
:on-close="hideCreateModal"
|
:on-close="hideCreateModal"
|
||||||
>
|
>
|
||||||
<AddLabelModal
|
<AddLabelModal
|
||||||
|
|||||||
@@ -30,6 +30,7 @@ export default {
|
|||||||
default: '',
|
default: '',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
emits: ['input'],
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|||||||
@@ -42,6 +42,7 @@ export default {
|
|||||||
default: '',
|
default: '',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
emits: ['input'],
|
||||||
methods: {
|
methods: {
|
||||||
onInput(e) {
|
onInput(e) {
|
||||||
this.$emit('input', e.target.value);
|
this.$emit('input', e.target.value);
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ export default {
|
|||||||
props: {
|
props: {
|
||||||
value: { type: Boolean, default: false },
|
value: { type: Boolean, default: false },
|
||||||
},
|
},
|
||||||
|
emits: ['input'],
|
||||||
methods: {
|
methods: {
|
||||||
onClick() {
|
onClick() {
|
||||||
this.$emit('input', !this.value);
|
this.$emit('input', !this.value);
|
||||||
|
|||||||
@@ -46,6 +46,7 @@ export default {
|
|||||||
default: '',
|
default: '',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
emits: ['input'],
|
||||||
methods: {
|
methods: {
|
||||||
onInput(e) {
|
onInput(e) {
|
||||||
this.$emit('input', e.target.value);
|
this.$emit('input', e.target.value);
|
||||||
|
|||||||
@@ -27,6 +27,7 @@ export default {
|
|||||||
default: '',
|
default: '',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
emits: ['input'],
|
||||||
setup() {
|
setup() {
|
||||||
const { getThemeClass } = useDarkMode();
|
const { getThemeClass } = useDarkMode();
|
||||||
return { getThemeClass };
|
return { getThemeClass };
|
||||||
|
|||||||
@@ -19,6 +19,7 @@ export default {
|
|||||||
default: '',
|
default: '',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
emits: ['input'],
|
||||||
setup() {
|
setup() {
|
||||||
const { getThemeClass } = useDarkMode();
|
const { getThemeClass } = useDarkMode();
|
||||||
return { getThemeClass };
|
return { getThemeClass };
|
||||||
|
|||||||
Reference in New Issue
Block a user