fixed loading route and maps

This commit is contained in:
Fedor Katurov 2019-12-12 13:52:30 +07:00
parent 1f774a8299
commit 62cb8d8e18
18 changed files with 715 additions and 369 deletions

View file

@ -40,8 +40,8 @@ export interface IMapListDialogProps extends IRootState {
}
export interface IMapListDialogState {
menu_target: IRouteListItem['_id'],
editor_target: IRouteListItem['_id'],
menu_target: IRouteListItem['address'],
editor_target: IRouteListItem['address'],
is_editing: boolean,
is_dropping: boolean,
@ -56,14 +56,14 @@ class Component extends React.Component<IMapListDialogProps, IMapListDialogState
is_dropping: false,
};
startEditing = (editor_target: IRouteListItem['_id']): void => this.setState({
startEditing = (editor_target: IRouteListItem['address']): void => this.setState({
editor_target,
menu_target: null,
is_editing: true,
is_dropping: false,
});
showMenu = (menu_target: IRouteListItem['_id']): void => this.setState({
showMenu = (menu_target: IRouteListItem['address']): void => this.setState({
menu_target,
});
@ -71,7 +71,7 @@ class Component extends React.Component<IMapListDialogProps, IMapListDialogState
menu_target: null,
});
showDropCard = (editor_target: IRouteListItem['_id']): void => this.setState({
showDropCard = (editor_target: IRouteListItem['address']): void => this.setState({
editor_target,
menu_target: null,
is_editing: false,
@ -211,13 +211,13 @@ class Component extends React.Component<IMapListDialogProps, IMapListDialogState
<RouteRowWrapper
title={route.title}
distance={route.distance}
_id={route._id}
_id={route.address}
is_public={route.is_public}
is_starred={route.is_starred}
tab={tab}
is_editing_mode={is_dropping ? 'drop' : 'edit'}
is_editing_target={editor_target === route._id}
is_menu_target={menu_target === route._id}
is_editing_target={editor_target === route.address}
is_menu_target={menu_target === route.address}
openRoute={this.openRoute}
startEditing={this.startEditing}
stopEditing={this.stopEditing}
@ -227,7 +227,7 @@ class Component extends React.Component<IMapListDialogProps, IMapListDialogState
dropRoute={this.dropRoute}
modifyRoute={this.modifyRoute}
toggleStarred={this.toggleStarred}
key={route._id}
key={route.address}
is_admin={role === ROLES.admin}
/>
))

View file

@ -30,7 +30,7 @@ export const RouteRowView = ({
title, distance, _id, openRoute, tab, startEditing, showMenu, showDropCard, hideMenu, is_admin, is_starred, toggleStarred,
}: Props): ReactElement<Props, null> => (
<div
className={classnames('route-row-view', { has_menu: (tab === 'mine') })}
className={classnames('route-row-view', { has_menu: (tab === 'my') })}
>
{
(tab === 'all' || tab === 'starred') && is_admin &&
@ -48,7 +48,7 @@ export const RouteRowView = ({
>
<div className="route-title">
{
(tab === 'mine' || !is_admin) && is_starred &&
(tab === 'my' || !is_admin) && is_starred &&
<div className="route-row-corner"><Icon icon="icon-star-fill" size={18} /></div>
}
<span>
@ -68,7 +68,7 @@ export const RouteRowView = ({
</div>
</div>
{
tab === 'mine' &&
tab === 'my' &&
<React.Fragment>
<div
className="route-row-edit-button pointer"

View file

@ -65,7 +65,7 @@ export class Component extends React.PureComponent<Props, State> {
setMenuOpened = () => this.setState({ menuOpened: !this.state.menuOpened });
openMapsDialog = () => {
this.props.openMapDialog('mine');
this.props.openMapDialog('my');
};
openAppInfoDialog = () => {
@ -81,7 +81,7 @@ export class Component extends React.PureComponent<Props, State> {
const left = (width - 700) / 2;
window.open(
`https://oauth.vk.com/authorize?client_id=5987644&scope=&redirect_uri=${CLIENT.API_ADDR}/auth/social/vk`,
`https://oauth.vk.com/authorize?client_id=5987644&scope=&redirect_uri=${CLIENT.API_ADDR}/api/auth/vk`,
'socialPopupWindow',
`location=no,width=700,height=370,scrollbars=no,top=${top},left=${left},resizable=no`
);

View file

@ -1,28 +1,24 @@
// @flow
import * as React from 'react';
import { UserPicture } from '$components/user/UserPicture';
import * as React from "react";
import { UserPicture } from "$components/user/UserPicture";
import { IUser } from "$constants/auth";
interface Props {
user: IUser,
setMenuOpened: () => void,
user: IUser;
setMenuOpened: () => void;
}
export const UserButton = ({
setMenuOpened,
user: {
id,
photo,
first_name,
}
user: { uid, photo, name }
}: Props) => (
<div className="control-bar user-bar">
<div className="user-button" onClick={setMenuOpened}>
<UserPicture photo={photo} />
<div className="user-button-fields">
<div className="user-button-name">{(first_name || id || '...')}</div>
<div className="user-button-text">{(id || 'пользователь')}</div>
<div className="user-button-name">{name || uid || "..."}</div>
<div className="user-button-text">{uid || "пользователь"}</div>
</div>
</div>
</div>