This commit is contained in:
richard-loafle 2020-02-06 15:30:30 +09:00
commit 7308940001
7 changed files with 97 additions and 16 deletions

View File

@ -173,19 +173,42 @@
}
}
}
//mat-snack-bar
::ng-deep .cdk-global-overlay-wrapper {
.mat-snack-bar-container {
margin: 0;
padding: 30px;
max-width: 60vw;
.mat-simple-snackbar {
display: flex;
justify-content: center;
span {
@include ellipsis(1);
padding: 10px 40px;
@include ellipsis(3);
display: inline-block;
padding: 7px 20px;
border: 1px solid #ffffff;
background-color: rgb(255, 255, 255, 0.2);
color: #ffffff;
margin-right: 4px;
flex: 1 1 auto;
max-width: 40vw;
}
&-action {
display: inline-flex;
margin-left: auto;
flex: 0 0 auto;
height: 100%;
button {
//background-color: #00b6d5;
border-radius: 2px;
span {
padding: 0 20px;
color: #ffffff;
background: none;
border: none;
font-weight: 500;
}
}
}
}
}

View File

@ -1511,6 +1511,11 @@ export class MessagesComponent implements OnInit, OnDestroy, AfterViewInit {
break;
case 'ADD_MEMBER':
{
const curRoomUser = this.userInfoListSubject.value.filter(
user =>
user.seq !== this.loginResSubject.value.userSeq && user.isJoinRoom
);
const result = await this.dialogService.open<
CreateChatDialogComponent,
CreateChatDialogData,
@ -1520,15 +1525,27 @@ export class MessagesComponent implements OnInit, OnDestroy, AfterViewInit {
data: {
type: UserSelectDialogType.EditChatMember,
title: this.translateService.instant('chat.modifyRoomMember'),
curRoomUser: this.userInfoListSubject.value.filter(
user =>
user.seq !== this.loginResSubject.value.userSeq &&
user.isJoinRoom
)
curRoomUser
}
});
if (!!result && !!result.choice && result.choice) {
if (
!!result.selectedUserList &&
result.selectedUserList.length > 0 &&
curRoomUser
.map(user => user.seq)
.sort()
.join('|') ===
result.selectedUserList
.map(user => user.seq)
.sort()
.join('|')
) {
// 변경된 것이 없다면 중지.
return;
}
// include me here..
const userSeqs: number[] = this.userInfoListSubject.value
.filter(userInfo => userInfo.isJoinRoom)

View File

@ -138,6 +138,10 @@ export class RoomUserListComponent implements OnInit, OnDestroy {
}
async onClickAddMember() {
const curRoomUser = this.userInfoList.filter(
user => user.seq !== this.loginRes.userSeq && user.isJoinRoom
);
const result = await this.dialogService.open<
CreateChatDialogComponent,
CreateChatDialogData,
@ -147,18 +151,31 @@ export class RoomUserListComponent implements OnInit, OnDestroy {
data: {
type: UserSelectDialogType.EditChatMember,
title: this.translateService.instant('chat.modifyRoomMember'),
curRoomUser: this.userInfoList.filter(
user => user.seq !== this.loginRes.userSeq && user.isJoinRoom
)
curRoomUser
}
});
if (!!result && !!result.choice && result.choice) {
if (
!!result.selectedUserList &&
result.selectedUserList.length > 0 &&
curRoomUser
.map(user => user.seq)
.sort()
.join('|') ===
result.selectedUserList
.map(user => user.seq)
.sort()
.join('|')
) {
// 변경된 것이 없다면 중지.
return;
}
// include me here..
const userSeqs: number[] = this.userInfoList
.filter(userInfo => userInfo.isJoinRoom)
.map(userInfo => userInfo.seq);
if (!!result.selectedUserList && result.selectedUserList.length > 0) {
result.selectedUserList.forEach(user => {
if (userSeqs.indexOf(user.seq) < 0) {

View File

@ -90,7 +90,7 @@ $ease-in-out: cubic-bezier(0.785, 0.135, 0.15, 0.86);
background-size: auto 133.3333%;
background-position: center;
background-repeat: none;
transform: scale(0.70);
transform: scale(0.7);
transition: transform $time/4 $ease-in-out, box-shadow $time/4 $ease-in-out,
opacity $time/4 step-end;
opacity: 0;
@ -327,6 +327,15 @@ $ease-in-out: cubic-bezier(0.785, 0.135, 0.15, 0.86);
}
}
.mat-card-content {
.notice {
p {
line-height: 1.4em;
margin-bottom: 10px;
}
}
}
@media all and (max-width: 1400px) {
.slider {
&_content {

View File

@ -103,6 +103,8 @@ export const reducer = createReducer(
}),
on(clearRoomUsers, (state, action) => {
const roomInfo = state.room.entities[action.roomSeq];
const roomUserList: RoomUserDetailData = {
...state.roomUser.entities[action.roomSeq]
};
@ -149,6 +151,15 @@ export const reducer = createReducer(
return {
...state,
room: adapterRoom.upsertOne(
{
...roomInfo,
joinUserCount: roomInfo.joinUserCount - action.userSeqs.length
},
{
...state.room
}
),
roomUser: !!trgtRoomUserList
? adapterRoomUser.upsertOne(trgtRoomUserList, {
...state.roomUser

View File

@ -446,6 +446,12 @@ $daesang-grey: (
.list-item {
&.selected {
background-color: mat-color($accent, 100);
border-right: 2px solid mat-color($accent, 800);
}
}
.mat-simple-snackbar-action {
button {
background-color: mat-color($accent, 500);
}
}
}

View File

@ -69,9 +69,7 @@
<i class="mdi mid-18 mdi-bell-off-outline text-primary-light"></i>
</div>
</div>
<div class="final-message">
{{ finalEventMessage }}
</div>
<div class="final-message" [innerHTML]="finalEventMessage"></div>
</div>
<div class="date">