mirror of
https://github.com/Ocelot-Social-Community/Ocelot-Social.git
synced 2025-12-13 07:46:06 +00:00
Merge pull request #6517 from Ocelot-Social-Community/6400-change-chat-style-and-lang
feat(webapp): change chat style and lang
This commit is contained in:
commit
f9afdc9bce
30
webapp/assets/_new/styles/export.scss
Normal file
30
webapp/assets/_new/styles/export.scss
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
|
||||||
|
:export {
|
||||||
|
colorPrimary: $color-primary;
|
||||||
|
colorPrimaryActive: $color-primary-active;
|
||||||
|
colorPrimaryLight: $color-primary-light;
|
||||||
|
|
||||||
|
borderColorSoft: $border-color-soft;
|
||||||
|
|
||||||
|
borderRadiusBase: $border-radius-base;
|
||||||
|
|
||||||
|
textColorBase: $text-color-base;
|
||||||
|
textColorSoft: $text-color-soft;
|
||||||
|
textColorInverse: $text-color-inverse;
|
||||||
|
|
||||||
|
boxShadowBase: $box-shadow-base;
|
||||||
|
|
||||||
|
backgroundColorBase: $background-color-base;
|
||||||
|
backgroundColorSoft: $background-color-soft;
|
||||||
|
backgroundColorSoftest: $background-color-softest;
|
||||||
|
backgroundColorPrimary: $background-color-primary;
|
||||||
|
|
||||||
|
colorNeutral30: $color-neutral-30;
|
||||||
|
|
||||||
|
chatMessageColor: $chat-message-color;
|
||||||
|
|
||||||
|
chatMessageBgMe: $chat-message-bg-me;
|
||||||
|
chatMessageBgOthers: $chat-message-bg-others;
|
||||||
|
|
||||||
|
chatNewMessageColor: $chat-new-message-color;
|
||||||
|
}
|
||||||
@ -407,3 +407,13 @@ $color-ribbon-event: $background-color-third;
|
|||||||
$color-ribbon-event-active: $background-color-third-active;
|
$color-ribbon-event-active: $background-color-third-active;
|
||||||
$color-ribbon-article: $background-color-secondary;
|
$color-ribbon-article: $background-color-secondary;
|
||||||
$color-ribbon-article-active: $background-color-secondary-active;
|
$color-ribbon-article-active: $background-color-secondary-active;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @tokens Chat Color
|
||||||
|
*/
|
||||||
|
|
||||||
|
$chat-message-bg-me: $color-primary-light;
|
||||||
|
$chat-message-color: $text-color-base;
|
||||||
|
$chat-message-bg-others: $color-neutral-80;
|
||||||
|
$chat-sidemenu-bg: $color-secondary-active;
|
||||||
|
$chat-new-message-color: $color-secondary-active;
|
||||||
|
|||||||
@ -15,13 +15,42 @@
|
|||||||
:rooms-loaded="true"
|
:rooms-loaded="true"
|
||||||
show-files="false"
|
show-files="false"
|
||||||
show-audio="false"
|
show-audio="false"
|
||||||
|
:styles="JSON.stringify(computedChatStyle)"
|
||||||
:show-footer="true"
|
:show-footer="true"
|
||||||
@send-message="sendMessage($event.detail[0])"
|
@send-message="sendMessage($event.detail[0])"
|
||||||
@fetch-messages="fetchMessages($event.detail[0])"
|
@fetch-messages="fetchMessages($event.detail[0])"
|
||||||
:responsive-breakpoint="responsiveBreakpoint"
|
:responsive-breakpoint="responsiveBreakpoint"
|
||||||
:single-room="singleRoom"
|
:single-room="singleRoom"
|
||||||
@show-demo-options="showDemoOptions = $event"
|
@show-demo-options="showDemoOptions = $event"
|
||||||
/>
|
>
|
||||||
|
<div slot="menu-icon" @click.prevent.stop="$emit('close-single-room', true)">
|
||||||
|
<div v-if="singleRoom">
|
||||||
|
<ds-icon name="close"></ds-icon>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div slot="room-header-avatar">
|
||||||
|
<div
|
||||||
|
v-if="selectedRoom && selectedRoom.avatar && selectedRoom.avatar !== 'default-avatar'"
|
||||||
|
class="vac-avatar"
|
||||||
|
:style="{ 'background-image': `url('${selectedRoom.avatar}')` }"
|
||||||
|
/>
|
||||||
|
<div v-else-if="selectedRoom" class="vac-avatar">
|
||||||
|
<span class="initials">{{ getInitialsName(selectedRoom.roomName) }}</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div v-for="room in rooms" :slot="'room-list-avatar_' + room.id" :key="room.id">
|
||||||
|
<div
|
||||||
|
v-if="room.avatar && room.avatar !== 'default-avatar'"
|
||||||
|
class="vac-avatar"
|
||||||
|
:style="{ 'background-image': `url('${room.avatar}')` }"
|
||||||
|
/>
|
||||||
|
<div v-else class="vac-avatar">
|
||||||
|
<span class="initials">{{ getInitialsName(room.roomName) }}</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</vue-advanced-chat>
|
||||||
</client-only>
|
</client-only>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
@ -29,6 +58,7 @@
|
|||||||
<script>
|
<script>
|
||||||
import { roomQuery, createRoom } from '~/graphql/Rooms'
|
import { roomQuery, createRoom } from '~/graphql/Rooms'
|
||||||
import { messageQuery, createMessageMutation } from '~/graphql/Messages'
|
import { messageQuery, createMessageMutation } from '~/graphql/Messages'
|
||||||
|
import chatStyle from '~/constants/chat.js'
|
||||||
import { mapGetters } from 'vuex'
|
import { mapGetters } from 'vuex'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
@ -45,6 +75,11 @@ export default {
|
|||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
menuActions: [
|
menuActions: [
|
||||||
|
// NOTE: if menuActions is empty, the related slot is not shown
|
||||||
|
{
|
||||||
|
name: 'dummyItem',
|
||||||
|
title: 'Just a dummy item',
|
||||||
|
},
|
||||||
/* {
|
/* {
|
||||||
name: 'inviteUser',
|
name: 'inviteUser',
|
||||||
title: 'Invite User',
|
title: 'Invite User',
|
||||||
@ -79,18 +114,18 @@ export default {
|
|||||||
},
|
},
|
||||||
],
|
],
|
||||||
textMessages: {
|
textMessages: {
|
||||||
ROOMS_EMPTY: 'Aucune conversation',
|
ROOMS_EMPTY: this.$t('chat.roomsEmpty'),
|
||||||
ROOM_EMPTY: 'Aucune conversation sélectionnée',
|
ROOM_EMPTY: this.$t('chat.roomEmpty'),
|
||||||
NEW_MESSAGES: 'Nouveaux messages',
|
NEW_MESSAGES: this.$t('chat.newMessages'),
|
||||||
MESSAGE_DELETED: 'Ce message a été supprimé',
|
MESSAGE_DELETED: this.$t('chat.messageDeleted'),
|
||||||
MESSAGES_EMPTY: 'Aucun message',
|
MESSAGES_EMPTY: this.$t('chat.messagesEmpty'),
|
||||||
CONVERSATION_STARTED: 'La conversation a commencée le :',
|
CONVERSATION_STARTED: this.$t('chat.conversationStarted'),
|
||||||
TYPE_MESSAGE: 'Tapez votre message',
|
TYPE_MESSAGE: this.$t('chat.typeMessage'),
|
||||||
SEARCH: 'Rechercher',
|
SEARCH: this.$t('chat.search'),
|
||||||
IS_ONLINE: 'est en ligne',
|
IS_ONLINE: this.$t('chat.isOnline'),
|
||||||
LAST_SEEN: 'dernière connexion ',
|
LAST_SEEN: this.$t('chat.lastSeen'),
|
||||||
IS_TYPING: 'est en train de taper...',
|
IS_TYPING: this.$t('chat.isTyping'),
|
||||||
CANCEL_SELECT_MESSAGE: 'Annuler Sélection',
|
CANCEL_SELECT_MESSAGE: this.$t('chat.cancelSelectMessage'),
|
||||||
},
|
},
|
||||||
roomActions: [
|
roomActions: [
|
||||||
/*
|
/*
|
||||||
@ -109,6 +144,7 @@ export default {
|
|||||||
showDemoOptions: true,
|
showDemoOptions: true,
|
||||||
responsiveBreakpoint: 600,
|
responsiveBreakpoint: 600,
|
||||||
singleRoom: !!this.singleRoomId || false,
|
singleRoom: !!this.singleRoomId || false,
|
||||||
|
selectedRoom: null,
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
@ -135,6 +171,11 @@ export default {
|
|||||||
...mapGetters({
|
...mapGetters({
|
||||||
currentUser: 'auth/user',
|
currentUser: 'auth/user',
|
||||||
}),
|
}),
|
||||||
|
computedChatStyle() {
|
||||||
|
// TODO light/dark theme still needed?
|
||||||
|
// return this.theme === 'light' ? chatStyle.STYLE.light : chatStyle.STYLE.dark
|
||||||
|
return chatStyle.STYLE.light
|
||||||
|
},
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
fetchMessages({ room, options = {} }) {
|
fetchMessages({ room, options = {} }) {
|
||||||
@ -156,6 +197,8 @@ export default {
|
|||||||
this.$toast.error(error.message)
|
this.$toast.error(error.message)
|
||||||
}
|
}
|
||||||
this.messagesLoaded = true
|
this.messagesLoaded = true
|
||||||
|
|
||||||
|
this.selectedRoom = room
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
@ -177,6 +220,11 @@ export default {
|
|||||||
}
|
}
|
||||||
this.refetchMessage(message.roomId)
|
this.refetchMessage(message.roomId)
|
||||||
},
|
},
|
||||||
|
|
||||||
|
getInitialsName(fullname) {
|
||||||
|
if (!fullname) return
|
||||||
|
return fullname.match(/\b\w/g).join('').substring(0, 3).toUpperCase()
|
||||||
|
},
|
||||||
},
|
},
|
||||||
apollo: {
|
apollo: {
|
||||||
Rooms: {
|
Rooms: {
|
||||||
@ -217,4 +265,25 @@ export default {
|
|||||||
body {
|
body {
|
||||||
font-family: 'Quicksand', sans-serif;
|
font-family: 'Quicksand', sans-serif;
|
||||||
}
|
}
|
||||||
|
.vac-avatar {
|
||||||
|
background-size: cover;
|
||||||
|
background-position: center center;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
background-color: $color-primary-dark;
|
||||||
|
color: $text-color-primary-inverse;
|
||||||
|
height: 42px;
|
||||||
|
width: 42px;
|
||||||
|
min-height: 42px;
|
||||||
|
min-width: 42px;
|
||||||
|
margin-right: 15px;
|
||||||
|
border-radius: 50%;
|
||||||
|
position: relative;
|
||||||
|
|
||||||
|
> .initials {
|
||||||
|
position: absolute;
|
||||||
|
top: 50%;
|
||||||
|
left: 50%;
|
||||||
|
transform: translate(-50%, -50%);
|
||||||
|
}
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
299
webapp/constants/chat.js
Normal file
299
webapp/constants/chat.js
Normal file
@ -0,0 +1,299 @@
|
|||||||
|
import tokens from './../assets/_new/styles/tokens.scss'
|
||||||
|
// import branding from './../assets/styles/imports/_branding.scss'
|
||||||
|
|
||||||
|
const styleData = tokens
|
||||||
|
|
||||||
|
const STYLE = {
|
||||||
|
light: {
|
||||||
|
general: {
|
||||||
|
color: styleData.textColorBase,
|
||||||
|
colorButtonClear: '#1976d2',
|
||||||
|
colorButton: '#fff',
|
||||||
|
backgroundColorButton: '#1976d2',
|
||||||
|
backgroundInput: '#fff',
|
||||||
|
colorPlaceholder: styleData.textColorSoft,
|
||||||
|
colorCaret: '#1976d2',
|
||||||
|
colorSpinner: styleData.colorPrimary,
|
||||||
|
borderStyle: '1px solid #e1e4e8',
|
||||||
|
backgroundScrollIcon: '#fff',
|
||||||
|
},
|
||||||
|
|
||||||
|
container: {
|
||||||
|
border: 'none',
|
||||||
|
borderRadius: styleData.borderRadiusBase,
|
||||||
|
boxShadow: styleData.boxShadowBase,
|
||||||
|
},
|
||||||
|
|
||||||
|
header: {
|
||||||
|
background: styleData.backgroundColorSoft,
|
||||||
|
colorRoomName: styleData.textColorBase,
|
||||||
|
colorRoomInfo: styleData.textColorSoft,
|
||||||
|
},
|
||||||
|
|
||||||
|
footer: {
|
||||||
|
background: styleData.backgroundColorSoft,
|
||||||
|
borderStyleInput: '1px solid #e1e4e8',
|
||||||
|
borderInputSelected: '#1976d2',
|
||||||
|
backgroundReply: styleData.backgroundColorSoft,
|
||||||
|
backgroundTagActive: styleData.backgroundColorSoft,
|
||||||
|
backgroundTag: styleData.backgroundColorBase,
|
||||||
|
},
|
||||||
|
|
||||||
|
content: {
|
||||||
|
background: styleData.backgroundColorBase,
|
||||||
|
},
|
||||||
|
|
||||||
|
sidemenu: {
|
||||||
|
background: '#fff',
|
||||||
|
backgroundHover: '#f6f6f6',
|
||||||
|
backgroundActive: styleData.colorPrimaryLight,
|
||||||
|
colorActive: '#1976d2',
|
||||||
|
borderColorSearch: '#e1e5e8',
|
||||||
|
},
|
||||||
|
|
||||||
|
dropdown: {
|
||||||
|
background: '#fff',
|
||||||
|
backgroundHover: '#f6f6f6',
|
||||||
|
},
|
||||||
|
|
||||||
|
message: {
|
||||||
|
background: styleData.chatMessageBgOthers,
|
||||||
|
backgroundMe: styleData.chatMessageBgMe,
|
||||||
|
color: styleData.chatMessageColor,
|
||||||
|
colorStarted: '#9ca6af',
|
||||||
|
backgroundDeleted: '#dadfe2',
|
||||||
|
backgroundSelected: '#c2dcf2',
|
||||||
|
colorDeleted: '#757e85',
|
||||||
|
colorUsername: '#9ca6af',
|
||||||
|
colorTimestamp: '#828c94',
|
||||||
|
backgroundDate: '#e5effa',
|
||||||
|
colorDate: '#505a62',
|
||||||
|
backgroundSystem: '#e5effa',
|
||||||
|
colorSystem: '#505a62',
|
||||||
|
backgroundMedia: 'rgba(0, 0, 0, 0.15)',
|
||||||
|
backgroundReply: 'rgba(0, 0, 0, 0.08)',
|
||||||
|
colorReplyUsername: '#0a0a0a',
|
||||||
|
colorReply: '#6e6e6e',
|
||||||
|
colorTag: '#0d579c',
|
||||||
|
backgroundImage: '#ddd',
|
||||||
|
colorNewMessages: styleData.chatNewMessageColor,
|
||||||
|
backgroundScrollCounter: '#0696c7',
|
||||||
|
colorScrollCounter: '#fff',
|
||||||
|
backgroundReaction: '#eee',
|
||||||
|
borderStyleReaction: '1px solid #eee',
|
||||||
|
backgroundReactionHover: '#fff',
|
||||||
|
borderStyleReactionHover: '1px solid #ddd',
|
||||||
|
colorReactionCounter: '#0a0a0a',
|
||||||
|
backgroundReactionMe: '#cfecf5',
|
||||||
|
borderStyleReactionMe: '1px solid #3b98b8',
|
||||||
|
backgroundReactionHoverMe: '#cfecf5',
|
||||||
|
borderStyleReactionHoverMe: '1px solid #3b98b8',
|
||||||
|
colorReactionCounterMe: '#0b59b3',
|
||||||
|
backgroundAudioRecord: '#eb4034',
|
||||||
|
backgroundAudioLine: 'rgba(0, 0, 0, 0.15)',
|
||||||
|
backgroundAudioProgress: '#455247',
|
||||||
|
backgroundAudioProgressSelector: '#455247',
|
||||||
|
colorFileExtension: '#757e85',
|
||||||
|
},
|
||||||
|
|
||||||
|
markdown: {
|
||||||
|
background: 'rgba(239, 239, 239, 0.7)',
|
||||||
|
border: 'rgba(212, 212, 212, 0.9)',
|
||||||
|
color: '#e01e5a',
|
||||||
|
colorMulti: '#0a0a0a',
|
||||||
|
},
|
||||||
|
|
||||||
|
room: {
|
||||||
|
colorUsername: '#0a0a0a',
|
||||||
|
colorMessage: '#67717a',
|
||||||
|
colorTimestamp: '#a2aeb8',
|
||||||
|
colorStateOnline: '#4caf50',
|
||||||
|
colorStateOffline: '#9ca6af',
|
||||||
|
backgroundCounterBadge: '#0696c7',
|
||||||
|
colorCounterBadge: '#fff',
|
||||||
|
},
|
||||||
|
|
||||||
|
emoji: {
|
||||||
|
background: '#fff',
|
||||||
|
},
|
||||||
|
|
||||||
|
icons: {
|
||||||
|
search: '#9ca6af',
|
||||||
|
add: styleData.colorPrimary,
|
||||||
|
toggle: styleData.colorNeutral30,
|
||||||
|
menu: styleData.colorNeutral30,
|
||||||
|
close: '#9ca6af',
|
||||||
|
closeImage: '#fff',
|
||||||
|
file: styleData.colorPrimary,
|
||||||
|
paperclip: styleData.colorPrimary,
|
||||||
|
closeOutline: '#000',
|
||||||
|
closePreview: '#fff',
|
||||||
|
send: styleData.colorPrimary,
|
||||||
|
sendDisabled: '#9ca6af',
|
||||||
|
emoji: styleData.colorPrimary,
|
||||||
|
emojiReaction: 'rgba(0, 0, 0, 0.3)',
|
||||||
|
document: styleData.colorPrimary,
|
||||||
|
pencil: '#9e9e9e',
|
||||||
|
checkmark: '#9e9e9e',
|
||||||
|
checkmarkSeen: '#0696c7',
|
||||||
|
eye: '#fff',
|
||||||
|
dropdownMessage: '#fff',
|
||||||
|
dropdownMessageBackground: 'rgba(0, 0, 0, 0.25)',
|
||||||
|
dropdownRoom: '#9e9e9e',
|
||||||
|
dropdownScroll: '#0a0a0a',
|
||||||
|
microphone: styleData.colorPrimary,
|
||||||
|
audioPlay: '#455247',
|
||||||
|
audioPause: '#455247',
|
||||||
|
audioCancel: '#eb4034',
|
||||||
|
audioConfirm: '#1ba65b',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
dark: {
|
||||||
|
general: {
|
||||||
|
color: '#fff',
|
||||||
|
colorButtonClear: '#fff',
|
||||||
|
colorButton: '#fff',
|
||||||
|
backgroundColorButton: '#1976d2',
|
||||||
|
backgroundInput: '#202223',
|
||||||
|
colorPlaceholder: '#596269',
|
||||||
|
colorCaret: '#fff',
|
||||||
|
colorSpinner: '#fff',
|
||||||
|
borderStyle: 'none',
|
||||||
|
backgroundScrollIcon: '#fff',
|
||||||
|
},
|
||||||
|
|
||||||
|
container: {
|
||||||
|
border: 'none',
|
||||||
|
borderRadius: '4px',
|
||||||
|
boxShadow: '0px 1px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12)',
|
||||||
|
},
|
||||||
|
|
||||||
|
header: {
|
||||||
|
background: '#181a1b',
|
||||||
|
colorRoomName: '#fff',
|
||||||
|
colorRoomInfo: '#9ca6af',
|
||||||
|
},
|
||||||
|
|
||||||
|
footer: {
|
||||||
|
background: '#131415',
|
||||||
|
borderStyleInput: 'none',
|
||||||
|
borderInputSelected: '#1976d2',
|
||||||
|
backgroundReply: '#1b1c1c',
|
||||||
|
backgroundTagActive: '#1b1c1c',
|
||||||
|
backgroundTag: '#131415',
|
||||||
|
},
|
||||||
|
|
||||||
|
content: {
|
||||||
|
background: '#131415',
|
||||||
|
},
|
||||||
|
|
||||||
|
sidemenu: {
|
||||||
|
background: '#181a1b',
|
||||||
|
backgroundHover: '#202224',
|
||||||
|
backgroundActive: '#151617',
|
||||||
|
colorActive: '#fff',
|
||||||
|
borderColorSearch: '#181a1b',
|
||||||
|
},
|
||||||
|
|
||||||
|
dropdown: {
|
||||||
|
background: '#2a2c33',
|
||||||
|
backgroundHover: '#26282e',
|
||||||
|
},
|
||||||
|
|
||||||
|
message: {
|
||||||
|
background: '#22242a',
|
||||||
|
backgroundMe: '#1f7e80',
|
||||||
|
color: '#fff',
|
||||||
|
colorStarted: '#9ca6af',
|
||||||
|
backgroundDeleted: '#1b1c21',
|
||||||
|
backgroundSelected: '#c2dcf2',
|
||||||
|
colorDeleted: '#a2a5a8',
|
||||||
|
colorUsername: '#b3bac9',
|
||||||
|
colorTimestamp: '#ebedf2',
|
||||||
|
backgroundDate: 'rgba(0, 0, 0, 0.3)',
|
||||||
|
colorDate: '#bec5cc',
|
||||||
|
backgroundSystem: 'rgba(0, 0, 0, 0.3)',
|
||||||
|
colorSystem: '#bec5cc',
|
||||||
|
backgroundMedia: 'rgba(0, 0, 0, 0.18)',
|
||||||
|
backgroundReply: 'rgba(0, 0, 0, 0.18)',
|
||||||
|
colorReplyUsername: '#fff',
|
||||||
|
colorReply: '#d6d6d6',
|
||||||
|
colorTag: '#f0c60a',
|
||||||
|
backgroundImage: '#ddd',
|
||||||
|
colorNewMessages: '#fff',
|
||||||
|
backgroundScrollCounter: '#1976d2',
|
||||||
|
colorScrollCounter: '#fff',
|
||||||
|
backgroundReaction: 'none',
|
||||||
|
borderStyleReaction: 'none',
|
||||||
|
backgroundReactionHover: '#202223',
|
||||||
|
borderStyleReactionHover: 'none',
|
||||||
|
colorReactionCounter: '#fff',
|
||||||
|
backgroundReactionMe: '#4e9ad1',
|
||||||
|
borderStyleReactionMe: 'none',
|
||||||
|
backgroundReactionHoverMe: '#4e9ad1',
|
||||||
|
borderStyleReactionHoverMe: 'none',
|
||||||
|
colorReactionCounterMe: '#fff',
|
||||||
|
backgroundAudioRecord: '#eb4034',
|
||||||
|
backgroundAudioLine: 'rgba(255, 255, 255, 0.15)',
|
||||||
|
backgroundAudioProgress: '#b7d4d3',
|
||||||
|
backgroundAudioProgressSelector: '#b7d4d3',
|
||||||
|
colorFileExtension: '#a2a5a8',
|
||||||
|
},
|
||||||
|
|
||||||
|
markdown: {
|
||||||
|
background: 'rgba(239, 239, 239, 0.7)',
|
||||||
|
border: 'rgba(212, 212, 212, 0.9)',
|
||||||
|
color: '#e01e5a',
|
||||||
|
colorMulti: '#0a0a0a',
|
||||||
|
},
|
||||||
|
|
||||||
|
room: {
|
||||||
|
colorUsername: '#fff',
|
||||||
|
colorMessage: '#6c7278',
|
||||||
|
colorTimestamp: '#6c7278',
|
||||||
|
colorStateOnline: '#4caf50',
|
||||||
|
colorStateOffline: '#596269',
|
||||||
|
backgroundCounterBadge: '#1976d2',
|
||||||
|
colorCounterBadge: '#fff',
|
||||||
|
},
|
||||||
|
|
||||||
|
emoji: {
|
||||||
|
background: '#343740',
|
||||||
|
},
|
||||||
|
|
||||||
|
icons: {
|
||||||
|
search: '#596269',
|
||||||
|
add: '#fff',
|
||||||
|
toggle: '#fff',
|
||||||
|
menu: '#fff',
|
||||||
|
close: '#9ca6af',
|
||||||
|
closeImage: '#fff',
|
||||||
|
file: '#1976d2',
|
||||||
|
paperclip: '#fff',
|
||||||
|
closeOutline: '#fff',
|
||||||
|
closePreview: '#fff',
|
||||||
|
send: '#fff',
|
||||||
|
sendDisabled: '#646a70',
|
||||||
|
emoji: '#fff',
|
||||||
|
emojiReaction: '#fff',
|
||||||
|
document: '#1976d2',
|
||||||
|
pencil: '#ebedf2',
|
||||||
|
checkmark: '#ebedf2',
|
||||||
|
checkmarkSeen: '#f0d90a',
|
||||||
|
eye: '#fff',
|
||||||
|
dropdownMessage: '#fff',
|
||||||
|
dropdownMessageBackground: 'rgba(0, 0, 0, 0.25)',
|
||||||
|
dropdownRoom: '#fff',
|
||||||
|
dropdownScroll: '#0a0a0a',
|
||||||
|
microphone: '#fff',
|
||||||
|
audioPlay: '#b7d4d3',
|
||||||
|
audioPause: '#b7d4d3',
|
||||||
|
audioCancel: '#eb4034',
|
||||||
|
audioConfirm: '#1ba65b',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
export default {
|
||||||
|
STYLE,
|
||||||
|
}
|
||||||
@ -14,15 +14,11 @@
|
|||||||
<modal />
|
<modal />
|
||||||
</client-only>
|
</client-only>
|
||||||
<div v-if="$store.getters['chat/showChat'].showChat" class="chat-modul">
|
<div v-if="$store.getters['chat/showChat'].showChat" class="chat-modul">
|
||||||
<ds-text align="right" class="close">
|
<chat-module
|
||||||
RoomID: {{ $store.getters['chat/showChat'].roomID }}
|
v-on:close-single-room="closeSingleRoom"
|
||||||
<ds-button @click="$store.commit('chat/SET_OPEN_CHAT', { showChat: false, roomID: null })">
|
:singleRoomId="$store.getters['chat/showChat'].roomID"
|
||||||
x
|
/>
|
||||||
</ds-button>
|
|
||||||
</ds-text>
|
|
||||||
<chat-module :singleRoomId="$store.getters['chat/showChat'].roomID" />
|
|
||||||
</div>
|
</div>
|
||||||
>
|
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
@ -41,6 +37,11 @@ export default {
|
|||||||
ChatModule,
|
ChatModule,
|
||||||
},
|
},
|
||||||
mixins: [seo, mobile()],
|
mixins: [seo, mobile()],
|
||||||
|
methods: {
|
||||||
|
closeSingleRoom() {
|
||||||
|
this.$store.commit('chat/SET_OPEN_CHAT', { showChat: false, roomID: null })
|
||||||
|
},
|
||||||
|
},
|
||||||
beforeCreate() {
|
beforeCreate() {
|
||||||
this.$store.commit('chat/SET_OPEN_CHAT', { showChat: false, roomID: null })
|
this.$store.commit('chat/SET_OPEN_CHAT', { showChat: false, roomID: null })
|
||||||
},
|
},
|
||||||
@ -58,7 +59,6 @@ export default {
|
|||||||
|
|
||||||
.chat-modul {
|
.chat-modul {
|
||||||
background-color: rgb(233, 228, 228);
|
background-color: rgb(233, 228, 228);
|
||||||
height: 667px;
|
|
||||||
width: 355px;
|
width: 355px;
|
||||||
position: fixed;
|
position: fixed;
|
||||||
bottom: 45px;
|
bottom: 45px;
|
||||||
|
|||||||
@ -78,6 +78,18 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"chat": {
|
"chat": {
|
||||||
|
"cancelSelectMessage": "Abbrechen",
|
||||||
|
"conversationStarted": "Unterhaltung startete am:",
|
||||||
|
"isOnline": "online",
|
||||||
|
"isTyping": "tippt...",
|
||||||
|
"lastSeen": "zuletzt gesehen ",
|
||||||
|
"messageDeleted": "Diese Nachricht wuerde gelöscht",
|
||||||
|
"messagesEmpty": "Keine Nachrichten",
|
||||||
|
"newMessages": "Neue Nachrichten",
|
||||||
|
"roomEmpty": "Keinen Raum selektiert",
|
||||||
|
"roomsEmpty": "Keine Räume",
|
||||||
|
"search": "Suche",
|
||||||
|
"typeMessage": "Nachricht schreiben",
|
||||||
"userProfileButton": {
|
"userProfileButton": {
|
||||||
"label": "Chat",
|
"label": "Chat",
|
||||||
"tooltip": "Chatte mit „{name}“"
|
"tooltip": "Chatte mit „{name}“"
|
||||||
|
|||||||
@ -78,6 +78,18 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"chat": {
|
"chat": {
|
||||||
|
"cancelSelectMessage": "Cancel",
|
||||||
|
"conversationStarted": "Conversation started on:",
|
||||||
|
"isOnline": "is online",
|
||||||
|
"isTyping": "is writing...",
|
||||||
|
"lastSeen": "last seen ",
|
||||||
|
"messageDeleted": "This message was deleted",
|
||||||
|
"messagesEmpty": "No messages",
|
||||||
|
"newMessages": "New Messages",
|
||||||
|
"roomEmpty": "No room selected",
|
||||||
|
"roomsEmpty": "No rooms",
|
||||||
|
"search": "Search",
|
||||||
|
"typeMessage": "Type message",
|
||||||
"userProfileButton": {
|
"userProfileButton": {
|
||||||
"label": "Chat",
|
"label": "Chat",
|
||||||
"tooltip": "Chat with “{name}”"
|
"tooltip": "Chat with “{name}”"
|
||||||
|
|||||||
@ -105,6 +105,7 @@ export default {
|
|||||||
styleguideStyles,
|
styleguideStyles,
|
||||||
'~assets/_new/styles/tokens.scss',
|
'~assets/_new/styles/tokens.scss',
|
||||||
'~assets/styles/imports/_branding.scss',
|
'~assets/styles/imports/_branding.scss',
|
||||||
|
'~assets/_new/styles/export.scss',
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user