쪽지 right drawer 에서 left side navi 로 이동.
This commit is contained in:
parent
8c6731b2e8
commit
deb48ab7e8
@ -89,11 +89,7 @@
|
|||||||
<mat-tab [aria-label]="MainMenu.Message">
|
<mat-tab [aria-label]="MainMenu.Message">
|
||||||
<ng-template mat-tab-label>
|
<ng-template mat-tab-label>
|
||||||
<!--<mat-icon>device_hub</mat-icon>-->
|
<!--<mat-icon>device_hub</mat-icon>-->
|
||||||
<div
|
<div class="icon-item" matTooltip="Message" matTooltipPosition="after">
|
||||||
class="icon-item"
|
|
||||||
matTooltip="Organization"
|
|
||||||
matTooltipPosition="after"
|
|
||||||
>
|
|
||||||
<svg
|
<svg
|
||||||
xmlns="http://www.w3.org/2000/svg"
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
width="24"
|
width="24"
|
||||||
@ -187,7 +183,9 @@
|
|||||||
class="left-side-tabs-contents"
|
class="left-side-tabs-contents"
|
||||||
style="display: none;"
|
style="display: none;"
|
||||||
>
|
>
|
||||||
<!--<app-layout-chat-left-sidenav-message></app-layout-chat-left-sidenav-message>-->
|
<app-layout-chat-left-sidenav-message
|
||||||
|
[isVisible]="currentTabLable === MainMenu.Message"
|
||||||
|
></app-layout-chat-left-sidenav-message>
|
||||||
</div>
|
</div>
|
||||||
<div
|
<div
|
||||||
#tabs
|
#tabs
|
||||||
|
@ -35,6 +35,7 @@ export enum MainMenu {
|
|||||||
Group = 'GROUP',
|
Group = 'GROUP',
|
||||||
Chat = 'CAHT',
|
Chat = 'CAHT',
|
||||||
Organization = 'ORGANIZATION',
|
Organization = 'ORGANIZATION',
|
||||||
|
Message = 'MESSAGE',
|
||||||
Call = 'CALL',
|
Call = 'CALL',
|
||||||
Conversation = 'CONVERSATION'
|
Conversation = 'CONVERSATION'
|
||||||
}
|
}
|
||||||
@ -180,11 +181,6 @@ export class LeftSideComponent implements OnInit, OnDestroy {
|
|||||||
icon: 'add',
|
icon: 'add',
|
||||||
tooltip: 'New Group Add',
|
tooltip: 'New Group Add',
|
||||||
divisionType: 'GROUP_NEW_ADD'
|
divisionType: 'GROUP_NEW_ADD'
|
||||||
},
|
|
||||||
{
|
|
||||||
icon: 'sms',
|
|
||||||
tooltip: 'Message',
|
|
||||||
divisionType: 'MESSAGE'
|
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
@ -300,16 +296,6 @@ export class LeftSideComponent implements OnInit, OnDestroy {
|
|||||||
this.onClickNewChat('TIMER');
|
this.onClickNewChat('TIMER');
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'MESSAGE':
|
|
||||||
{
|
|
||||||
this.store.dispatch(
|
|
||||||
ChatStore.selectedRightDrawer({
|
|
||||||
req: RightDrawer.Message
|
|
||||||
})
|
|
||||||
);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -2,10 +2,12 @@ import { CallComponent } from './call.component';
|
|||||||
import { ChatComponent } from './chat.component';
|
import { ChatComponent } from './chat.component';
|
||||||
import { GroupComponent } from './group.component';
|
import { GroupComponent } from './group.component';
|
||||||
import { OrganizationComponent } from './organization.component';
|
import { OrganizationComponent } from './organization.component';
|
||||||
|
import { MessageBoxComponent } from './message.component';
|
||||||
|
|
||||||
export const LEFT_SIDENAV_COMPONENTS = [
|
export const LEFT_SIDENAV_COMPONENTS = [
|
||||||
CallComponent,
|
CallComponent,
|
||||||
ChatComponent,
|
ChatComponent,
|
||||||
GroupComponent,
|
GroupComponent,
|
||||||
OrganizationComponent
|
OrganizationComponent,
|
||||||
|
MessageBoxComponent
|
||||||
];
|
];
|
||||||
|
@ -1,4 +1,15 @@
|
|||||||
<div class="message-box container">
|
<div class="message-box container">
|
||||||
|
<div class="current-head">
|
||||||
|
<h3>쪽지</h3>
|
||||||
|
<div class="btn-box">
|
||||||
|
<!-- <button mat-icon-button>
|
||||||
|
<mat-icon>timer</mat-icon>
|
||||||
|
</button>
|
||||||
|
<button mat-icon-button>
|
||||||
|
<mat-icon> add_comment</mat-icon>
|
||||||
|
</button> -->
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
<div class="list-search">
|
<div class="list-search">
|
||||||
<div class="searchbox">
|
<div class="searchbox">
|
||||||
<form [formGroup]="fgSearch" class="w-100-p">
|
<form [formGroup]="fgSearch" class="w-100-p">
|
||||||
@ -26,13 +37,15 @@
|
|||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="container">
|
<div>
|
||||||
<mat-tab-group
|
<mat-tab-group
|
||||||
|
#tabs
|
||||||
mat-stretch-tabs
|
mat-stretch-tabs
|
||||||
animationDuration="0ms"
|
animationDuration="0ms"
|
||||||
|
[selectedIndex]="0"
|
||||||
(selectedIndexChange)="onSelectedIndexChange($event)"
|
(selectedIndexChange)="onSelectedIndexChange($event)"
|
||||||
>
|
>
|
||||||
<mat-tab>
|
<mat-tab [label]="MessageType.Receive">
|
||||||
<ng-template mat-tab-label>
|
<ng-template mat-tab-label>
|
||||||
수신
|
수신
|
||||||
</ng-template>
|
</ng-template>
|
||||||
@ -64,7 +77,7 @@
|
|||||||
</dl>
|
</dl>
|
||||||
</div>
|
</div>
|
||||||
</mat-tab>
|
</mat-tab>
|
||||||
<mat-tab>
|
<mat-tab [label]="MessageType.Send">
|
||||||
<ng-template mat-tab-label>
|
<ng-template mat-tab-label>
|
||||||
발신
|
발신
|
||||||
</ng-template>
|
</ng-template>
|
||||||
@ -96,7 +109,7 @@
|
|||||||
</dl>
|
</dl>
|
||||||
</div>
|
</div>
|
||||||
</mat-tab>
|
</mat-tab>
|
||||||
<mat-tab>
|
<mat-tab [label]="MessageType.Reservation">
|
||||||
<ng-template mat-tab-label>
|
<ng-template mat-tab-label>
|
||||||
예약
|
예약
|
||||||
</ng-template>
|
</ng-template>
|
@ -1,3 +1,18 @@
|
|||||||
|
.current-head {
|
||||||
|
h3 {
|
||||||
|
display: inline-flex;
|
||||||
|
padding-left: 10px;
|
||||||
|
align-items: center;
|
||||||
|
color: #ffffff;
|
||||||
|
}
|
||||||
|
.btn-box {
|
||||||
|
height: 100%;
|
||||||
|
margin-left: auto;
|
||||||
|
display: inline-flex;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
.list-search {
|
.list-search {
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: row;
|
flex-direction: row;
|
||||||
@ -46,3 +61,7 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.mat-tab-label-active {
|
||||||
|
opacity: 1;
|
||||||
|
}
|
@ -1,6 +1,6 @@
|
|||||||
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
|
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
|
||||||
|
|
||||||
import { MessageBoxComponent } from './message-box.component';
|
import { MessageBoxComponent } from './message.component';
|
||||||
|
|
||||||
describe('MessageBoxComponent', () => {
|
describe('MessageBoxComponent', () => {
|
||||||
let component: MessageBoxComponent;
|
let component: MessageBoxComponent;
|
||||||
@ -8,9 +8,8 @@ describe('MessageBoxComponent', () => {
|
|||||||
|
|
||||||
beforeEach(async(() => {
|
beforeEach(async(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
declarations: [ MessageBoxComponent ]
|
declarations: [MessageBoxComponent]
|
||||||
})
|
}).compileComponents();
|
||||||
.compileComponents();
|
|
||||||
}));
|
}));
|
||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
@ -3,7 +3,10 @@ import {
|
|||||||
OnInit,
|
OnInit,
|
||||||
OnDestroy,
|
OnDestroy,
|
||||||
Output,
|
Output,
|
||||||
EventEmitter
|
EventEmitter,
|
||||||
|
ViewChild,
|
||||||
|
Input,
|
||||||
|
AfterViewChecked
|
||||||
} from '@angular/core';
|
} from '@angular/core';
|
||||||
import { Subscription, of } from 'rxjs';
|
import { Subscription, of } from 'rxjs';
|
||||||
import { Store, select } from '@ngrx/store';
|
import { Store, select } from '@ngrx/store';
|
||||||
@ -28,13 +31,21 @@ import { DeviceType } from '@ucap-webmessenger/core';
|
|||||||
import { MessageStatusCode } from '@ucap-webmessenger/api';
|
import { MessageStatusCode } from '@ucap-webmessenger/api';
|
||||||
import { ContentType } from '@ucap-webmessenger/api-message';
|
import { ContentType } from '@ucap-webmessenger/api-message';
|
||||||
import { FormGroup, FormBuilder } from '@angular/forms';
|
import { FormGroup, FormBuilder } from '@angular/forms';
|
||||||
|
import { MatTabGroup } from '@angular/material';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'app-layout-chat-right-drawer-message-box',
|
selector: 'app-layout-chat-left-sidenav-message',
|
||||||
templateUrl: './message-box.component.html',
|
templateUrl: './message.component.html',
|
||||||
styleUrls: ['./message-box.component.scss']
|
styleUrls: ['./message.component.scss']
|
||||||
})
|
})
|
||||||
export class MessageBoxComponent implements OnInit, OnDestroy {
|
export class MessageBoxComponent
|
||||||
|
implements OnInit, OnDestroy, AfterViewChecked {
|
||||||
|
@Input()
|
||||||
|
isVisible = false;
|
||||||
|
|
||||||
|
@ViewChild('tabs', { static: false }) tabs: MatTabGroup;
|
||||||
|
isInitTabs = false;
|
||||||
|
|
||||||
fgSearch: FormGroup;
|
fgSearch: FormGroup;
|
||||||
|
|
||||||
userInfoList: UserInfo[];
|
userInfoList: UserInfo[];
|
||||||
@ -60,6 +71,7 @@ export class MessageBoxComponent implements OnInit, OnDestroy {
|
|||||||
currentPage = 0;
|
currentPage = 0;
|
||||||
|
|
||||||
ContentType = ContentType;
|
ContentType = ContentType;
|
||||||
|
MessageType = MessageType;
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
private store: Store<any>,
|
private store: Store<any>,
|
||||||
@ -92,6 +104,17 @@ export class MessageBoxComponent implements OnInit, OnDestroy {
|
|||||||
|
|
||||||
// 초기 검색은 수신함.
|
// 초기 검색은 수신함.
|
||||||
this.getRetrieveMessage(MessageType.Receive, this.recieveCurrentPage);
|
this.getRetrieveMessage(MessageType.Receive, this.recieveCurrentPage);
|
||||||
|
|
||||||
|
if (!!this.tabs) {
|
||||||
|
this.tabs.realignInkBar();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
ngAfterViewChecked(): void {
|
||||||
|
if (!!this.tabs && !this.isInitTabs && this.isVisible) {
|
||||||
|
this.isInitTabs = true;
|
||||||
|
this.tabs.realignInkBar();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
ngOnDestroy(): void {
|
ngOnDestroy(): void {
|
@ -28,7 +28,5 @@
|
|||||||
<!-- [E] About Chat room -->
|
<!-- [E] About Chat room -->
|
||||||
|
|
||||||
<!-- [S] About Common -->
|
<!-- [S] About Common -->
|
||||||
<app-layout-chat-right-drawer-message-box *ngSwitchCase="RightDrawer.Message">
|
|
||||||
</app-layout-chat-right-drawer-message-box>
|
|
||||||
<!-- [E] About Common -->
|
<!-- [E] About Common -->
|
||||||
</ng-container>
|
</ng-container>
|
||||||
|
@ -1,11 +1,9 @@
|
|||||||
import { FileBoxComponent } from './file-box.component';
|
import { FileBoxComponent } from './file-box.component';
|
||||||
import { AlbumBoxComponent } from './album-box.component';
|
import { AlbumBoxComponent } from './album-box.component';
|
||||||
import { RoomUserListComponent } from './room-user-list.component';
|
import { RoomUserListComponent } from './room-user-list.component';
|
||||||
import { MessageBoxComponent } from './message-box.component';
|
|
||||||
|
|
||||||
export const RIGHT_DRAWER_COMPONENTS = [
|
export const RIGHT_DRAWER_COMPONENTS = [
|
||||||
FileBoxComponent,
|
FileBoxComponent,
|
||||||
AlbumBoxComponent,
|
AlbumBoxComponent,
|
||||||
RoomUserListComponent,
|
RoomUserListComponent
|
||||||
MessageBoxComponent
|
|
||||||
];
|
];
|
||||||
|
@ -4,8 +4,5 @@ export enum RightDrawer {
|
|||||||
/** 대화방 > 파일함 */
|
/** 대화방 > 파일함 */
|
||||||
FileBox = 'FILE_BOX',
|
FileBox = 'FILE_BOX',
|
||||||
/** 대화방 > 대화참여자목록 */
|
/** 대화방 > 대화참여자목록 */
|
||||||
RoomUser = 'ROOM_USER',
|
RoomUser = 'ROOM_USER'
|
||||||
|
|
||||||
/** 쪽지함 */
|
|
||||||
Message = 'MESSAGE_BOX'
|
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user