Skip to content

Commit 99e1ebb

Browse files
authored
Merge pull request #6719 from topcoder-platform/timeline-wall-api-issues-17
fix: side navigation doesn't work on mobile
2 parents c565010 + 874e5d3 commit 99e1ebb

File tree

3 files changed

+10
-9
lines changed

3 files changed

+10
-9
lines changed

src/shared/containers/timeline-wall/index.jsx

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ function TimelineWallContainer(props) {
4242
const role = 'Admin User';
4343
const authToken = _.get(auth, 'tokenV3');
4444
const isMobile = useMediaQuery({
45-
query: '(max-device-width: 768px)',
45+
query: '(max-width: 768px)',
4646
});
4747

4848
useEffect(() => {
@@ -89,7 +89,7 @@ function TimelineWallContainer(props) {
8989
let date = moment(`${currentYear}-${currentMonth + 1}`).format('YYYY-MM');
9090

9191
while (!target) {
92-
target = document.getElementById(`${moment(date).year()}-${(moment(date).month()).toString().padStart(2, '0')}`);
92+
target = document.getElementById(`${isMobile ? 'mobile-' : 'desktop-'}${moment(date).year()}-${(moment(date).month()).toString().padStart(2, '0')}`);
9393

9494
if (target || !moment(date).isValid() || moment(date).year() > maxYear) {
9595
break;
@@ -100,11 +100,7 @@ function TimelineWallContainer(props) {
100100
if (target) {
101101
const yOffset = -10;
102102
const coordinate = target.getBoundingClientRect().top + window.pageYOffset + yOffset;
103-
if (isMobile) {
104-
setTimeout(target.scrollTo(), 100);
105-
} else {
106-
window.scrollTo({ top: coordinate, behavior: 'smooth' });
107-
}
103+
window.scrollTo({ top: coordinate, behavior: 'smooth' });
108104
} else {
109105
window.scrollTo({ top: 0, behavior: 'smooth' });
110106
}

src/shared/containers/timeline-wall/timeline-events/events/event-item/index.jsx

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ import './styles.scss';
1616
import { DEFAULT_AVATAR_URL } from '../../../../../utils/url';
1717

1818
function EventItem({
19-
className, isLeft, eventItem, deleteEvent, isAdmin, userAvatars,
19+
className, isLeft, eventItem, deleteEvent, isAdmin, userAvatars, idPrefix,
2020
}) {
2121
const [isExpanded, setIsExpanded] = useState(false);
2222
const [showModalPhoto, setShowModalPhoto] = useState(false);
@@ -33,7 +33,7 @@ function EventItem({
3333
'color-red': eventItem.color === 'red',
3434
'color-purple': eventItem.color === 'purple',
3535
})}
36-
id={moment(eventItem.eventDate).format('YYYY-MM')}
36+
id={`${idPrefix}${moment(eventItem.eventDate).format('YYYY-MM')}`}
3737
>
3838
{isLeft ? null : (<div styleName="dot dot-left" />)}
3939
{isLeft ? null : (<IconTooltipLeft styleName="tooltip-indicator" />)}
@@ -137,6 +137,7 @@ EventItem.defaultProps = {
137137
},
138138
isAdmin: false,
139139
userAvatars: {},
140+
idPrefix: '',
140141
};
141142

142143
/**
@@ -149,6 +150,7 @@ EventItem.propTypes = {
149150
isAdmin: PT.bool,
150151
userAvatars: PT.shape(),
151152
deleteEvent: PT.func.isRequired,
153+
idPrefix: PT.string,
152154
};
153155

154156
export default EventItem;

src/shared/containers/timeline-wall/timeline-events/events/index.jsx

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,7 @@ function Events({
6767
userAvatars={userAvatars}
6868
isAdmin={isAdmin}
6969
deleteEvent={deleteEvent}
70+
idPrefix="desktop-"
7071
/>
7172
))}
7273
</div>
@@ -84,6 +85,7 @@ function Events({
8485
userAvatars={userAvatars}
8586
isAdmin={isAdmin}
8687
deleteEvent={deleteEvent}
88+
idPrefix="desktop-"
8789
/>
8890
))}
8991
</div>
@@ -101,6 +103,7 @@ function Events({
101103
userAvatars={userAvatars}
102104
isAdmin={isAdmin}
103105
deleteEvent={deleteEvent}
106+
idPrefix="mobile-"
104107
/>
105108
))}
106109
</div>

0 commit comments

Comments
 (0)