Skip to content
This repository was archived by the owner on Feb 10, 2022. It is now read-only.

Commit 30ebe82

Browse files
committed
[CALLS-700]Call history design implementation
apply review comment.
1 parent 835a50d commit 30ebe82

File tree

5 files changed

+20
-36
lines changed

5 files changed

+20
-36
lines changed

lib/components/App.js

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,11 +31,10 @@ export default class App extends BaseElement {
3131
for (let i = this.children.length - 1 ; i >= 0 ; i--) {
3232
const child = this.children[i];
3333
if(child.element.id === 'header' || child.element.id === 'tabtoolbar') {
34-
if(opt.isRemoveHeader === true) {
34+
if(opt.isRemoveHeader) {
3535
child.remove();
3636
}
37-
}
38-
else{
37+
} else {
3938
child.remove();
4039
}
4140
}

lib/css/styles.js

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1114,6 +1114,12 @@ const styles = {
11141114
listStyle: 'none',
11151115
margin: '0',
11161116
padding: '0',
1117+
borderRight: 'solid 1px #dee2f2',
1118+
'li': {
1119+
'&:first-child': {
1120+
borderTop: 'unset'
1121+
}
1122+
}
11171123
},
11181124

11191125
callLogListDesc: {
@@ -1172,7 +1178,7 @@ const styles = {
11721178
width: '376px',
11731179
minHeight: '88px',
11741180
height: 'auto',
1175-
borderRight: 'solid 1px #dee2f2',
1181+
borderTop: 'solid 1px #dee2f2',
11761182
paddingBottom: '5px',
11771183
},
11781184

@@ -1231,10 +1237,6 @@ const styles = {
12311237
height: '100%'
12321238
},
12331239

1234-
callLogItemWarpBorder: {
1235-
borderTop: 'solid 1px #dee2f2'
1236-
},
1237-
12381240
callLogItemType: {
12391241
display: 'block',
12401242
width: '20px',

lib/utils/domUtil.js

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -142,7 +142,4 @@ export function replaceClassName(element, searchValue, newValue) {
142142

143143
export function hasClassName(element, searchValue) {
144144
return (element.classList.value.indexOf(searchValue) !== -1);
145-
return false;
146-
}
147-
return true;
148145
}

lib/views/CallLogItem.js

Lines changed: 7 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -15,16 +15,13 @@ export class CallLogItem {
1515
if(callLogInfo.isVideoCall){
1616
if(callLogInfo.userRole === 'dc_caller'){
1717
callType = outgoingVideo;
18-
}
19-
else{
18+
} else {
2019
callType = incomingVideo;
2120
}
22-
}
23-
else{
21+
} else {
2422
if(callLogInfo.userRole === 'dc_caller'){
2523
callType = outgoingVoice;
26-
}
27-
else{
24+
} else {
2825
callType = incomingVoice;
2926
}
3027
}
@@ -34,8 +31,7 @@ export class CallLogItem {
3431
if(callLogInfo.userRole === 'dc_caller'){
3532
profileImage = callLogInfo.callee.profileUrl;
3633
displayName = callLogInfo.callee.userId;
37-
}
38-
else{
34+
} else {
3935
profileImage = callLogInfo.caller.profileUrl;
4036
displayName = callLogInfo.caller.userId;
4137
}
@@ -46,7 +42,7 @@ export class CallLogItem {
4642

4743
const profileImg = createImg({ className: `${classes['callLogProfileImg']}`, src: profileImage, onerror: (error) => {
4844
error.currentTarget.src = avatarIcon;
49-
} });
45+
}});
5046

5147
const profileDiv = createDiv({ className: `${classes['callLogProfileDiv']}` });
5248
profileDiv.appendChild(profileImg);
@@ -81,10 +77,7 @@ export class CallLogItem {
8177

8278

8379
let callStartTime = new Date(callLogInfo.startedAt);
84-
let callStartTimeLabel = callStartTime.getFullYear() + '/' +
85-
callStartTime.toLocaleString(['en-US'], {month: '2-digit'}) + '/' +
86-
callStartTime.toLocaleString(['en-US'], {day: '2-digit'}) + ' ' +
87-
this.formatAMPM(callStartTime);
80+
let callStartTimeLabel = `${callStartTime.getFullYear()}/${callStartTime.toLocaleString(['en-US'], {month: '2-digit'})}/${callStartTime.toLocaleString(['en-US'], {day: '2-digit'})} ${this.formatAMPM(callStartTime)}`;
8881

8982
const callLogStartTime = createLabel({ className: `${classes['callLogStartTime']} ${classes['fontSmall']}`, innerText: callStartTimeLabel});
9083
const callActionBtnWrap = createDiv({ className: `${classes['callLogActionBtnWrap']}` });
@@ -125,7 +118,7 @@ export class CallLogItem {
125118
let minutes = date.getMinutes();
126119
let ampm = hours >= 12 ? 'pm' : 'am';
127120
hours = hours % 12;
128-
hours = hours ? hours : 12; // the hour '0' should be '12'
121+
hours = hours || 12; // the hour '0' should be '12'
129122
minutes = minutes < 10 ? '0'+minutes : minutes;
130123
let strTime = hours + ':' + minutes + ampm;
131124
return strTime;

lib/views/CallLogView.js

Lines changed: 4 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,7 @@ export default class CallLogView extends BaseElement{
3131
if(this.args.isWidget) {
3232
callLogList.classList.add(classes['widgetCallLog']);
3333
this.element.appendChild(callLogList);
34-
}
35-
else{
34+
} else {
3635
const callLogDescription = createDiv({ id: 'call_log_desc', className: `${classes['callLogListDesc']}` });
3736
const callLogDescLogo = createDiv({ className: `${classes['callLogDescLogo']}` });
3837
const callLogDescTitle = createDiv({ innerText: 'Sendbird Calls Quickstart', className: `${classes['callLogDescTitle']} ${classes['font24']} ${classes['fontDemi']}` });
@@ -50,21 +49,15 @@ export default class CallLogView extends BaseElement{
5049
if (!this.callLogQuery.hasNext || this.callLogQuery.isLoading) return;
5150
this.callLogQuery.next((directCallLog) => {
5251
if( directCallLog.length > 0 ) {
53-
for( let i = 0; i < directCallLog.length; i++ ){
54-
let callItem = null;
55-
if(i === 0){
56-
callItem = new CallLogItem({ callLogInfo: directCallLog[i], className: `${classes['callLogItemWrap']}` });
57-
} else {
58-
callItem = new CallLogItem({ callLogInfo: directCallLog[i], className: `${classes['callLogItemWrap']} ${classes['callLogItemWarpBorder']}` });
59-
}
52+
for(let callLogItem of directCallLog) {
53+
const callItem = new CallLogItem({ callLogInfo: callLogItem, className: `${classes['callLogItemWrap']}` });
6054
callItem.onclick = (event, args) => {
6155
this.sendToParent('dial', args);
6256
};
6357

6458
element.appendChild(callItem.element);
6559
}
66-
}
67-
else{
60+
} else {
6861
// empty call log
6962
const emptyCallLog = new CallLogItem({ className: `${classes['callLogEmptyWrap']}` });
7063
element.appendChild(emptyCallLog.element);

0 commit comments

Comments
 (0)