remove authId from GetTeamsByOwner

This commit is contained in:
Barry Low committed 2018-10-30 21:50:47 -07:00
1 parent 94c962cd44
commit 43a3a4a7f0
11 files changed
+125 -216

No files matched your search

+1 -1
View File
@@ -4,7 +4,7 @@ import { sendTeamMemberInvite, sendTeamCreateConfirmation, verifyInviteToken } f
import TEAM_FB_FRAGMENT from '../../fragments/TeamFBFragment'
import { logger } from '../../../logger'
import { logger, AuthenticationError } from '../../../logger'
export const resolvers = {
Mutation: {
@@ -2,8 +2,8 @@
import gql from 'graphql-tag'
export const GET_TEAMS_BY_OWNER = gql`
query teamsByOwnerQuery($authId: String!) {
teams_TeamsByOwner(ownerId: $authId) {
query teamsByOwnerQuery {
teams_TeamsByOwner {
id
name
slug
@@ -41,7 +41,6 @@ export class ManageFBEdit extends Component {
this.handleAvatar = this.handleAvatar.bind(this)
const avatar = props.fb.avatar || ''
this.authId = props.authId
this.state = {
open: false,
@@ -57,8 +56,7 @@ export class ManageFBEdit extends Component {
mutation={UPDATE_FB}
refetchQueries={[
{
query: GET_TEAMS_BY_OWNER,
variables: { authId: this.authId }
query: GET_TEAMS_BY_OWNER
}
]}
>
@@ -197,8 +195,7 @@ export class ManageFBEdit extends Component {
ManageFBEdit.propTypes = {
classes: PropTypes.object.isRequired,
slug: PropTypes.string.isRequired,
fb: PropTypes.object,
authId: PropTypes.string.isRequired
fb: PropTypes.object
}
export default withStyles(styles)(ManageFBEdit)
@@ -10,7 +10,7 @@ import Typography from '@material-ui/core/Typography'
import ManageFBEdit from './ManageFBEdit'
export const ManageFBItem = ({ classes, team, authId }) => {
export const ManageFBItem = ({ classes, team }) => {
console.log('ManageFBItem', team, team.fb[0], team.profile.avatar)
let avatar
if (team.fb[0].avatar !== undefined && team.fb[0].avatar !== 'a') {
@@ -36,7 +36,7 @@ export const ManageFBItem = ({ classes, team, authId }) => {
</Typography>
</CardContent>
<CardActions>
<ManageFBEdit slug={team.slug} fb={team.fb[0]} authId={authId} />
<ManageFBEdit slug={team.slug} fb={team.fb[0]} />
</CardActions>
</div>
</Card>
@@ -46,8 +46,7 @@ export const ManageFBItem = ({ classes, team, authId }) => {
ManageFBItem.propTypes = {
classes: PropTypes.object.isRequired,
team: PropTypes.object.isRequired,
authId: PropTypes.string.isRequired
team: PropTypes.object.isRequired
}
export default ManageFBItem
@@ -1,15 +1,11 @@
import React from 'react'
import PropTypes from 'prop-types'
import { Query } from 'react-apollo'
import { withStateHandlers, lifecycle, compose } from 'recompose'
import Grid from '@material-ui/core/Grid'
import { MessageCard } from '@advancedalgos/web-components'
import { withStyles } from '@material-ui/core/styles'
import { isDefined, isString } from '../../../utils/js-helpers'
import { getItem } from '../../../utils/local-storage'
import GET_TEAMS_BY_OWNER from '../../../graphql/teams/GetTeamsByOwnerQuery'
import ManageFBItem from './ManageFBItem'
@@ -46,94 +42,63 @@ const styles = theme => ({
}
})
export const ManageFBList = ({ classes, user = null }) => {
let owner
let authId = null
console.log('ManageTeamsList: ', user)
if (user !== null && isString(user)) {
owner = JSON.parse(user)
if (isDefined(owner.authId)) authId = owner.authId
}
console.log('ManageTeamsList 2: ', owner, authId)
if (authId === undefined || authId === null) {
return (
<Grid container spacing={40}>
<Grid>
<MessageCard message='Loading...' />
</Grid>
</Grid>
)
} else {
return (
<Query
query={GET_TEAMS_BY_OWNER}
variables={{ authId }}
fetchPolicy='network-only'
>
{({ loading, error, data }) => {
console.log('GET_TEAMS_BY_OWNER: ', loading, error, data)
export const ManageFBList = ({ classes }) => (
<Query
query={GET_TEAMS_BY_OWNER}
fetchPolicy='network-only'
>
{({ loading, error, data }) => {
console.log('GET_TEAMS_BY_OWNER: ', loading, error, data)
let errors = null
if (error) {
errors = error.graphQLErrors.map(({ message }, i) => {
return <MessageCard message={message} />
})
}
if (!loading && !error) {
if (data.teams_TeamsByOwner.length > 0) {
return (
<React.Fragment>
<Grid container spacing={40}>
{!loading &&
data.teams_TeamsByOwner.map(team => (
<ManageFBItem
key={team.id}
team={team}
classes={classes}
authId={authId}
/>
))}
{errors}
</Grid>
</React.Fragment>
)
}
} else {
return (
let errors = null
if (error) {
errors = error.graphQLErrors.map(({ message }, i) => {
return <MessageCard message={message} />
})
}
if (!loading && !error) {
if (data.teams_TeamsByOwner.length > 0) {
return (
<React.Fragment>
<Grid container spacing={40}>
<Grid item xs={12}>
<MessageCard message='Loading...' />
{errors !== null && <MessageCard message={errors} />}
</Grid>
{!loading &&
data.teams_TeamsByOwner.map(team => (
<ManageFBItem
key={team.id}
team={team}
classes={classes}
/>
))}
{errors}
</Grid>
)
}
}}
</Query>
)
}
}
</React.Fragment>
)
} else {
return (
<Grid container spacing={40}>
<Grid item xs={12}>
<MessageCard message='No financial beings yet — Create a team first!' />
{errors !== null && <MessageCard message={errors} />}
</Grid>
</Grid>
)
}
} else {
return (
<Grid container spacing={40}>
<Grid item xs={12}>
<MessageCard message='Loading...' />
{errors !== null && <MessageCard message={errors} />}
</Grid>
</Grid>
)
}
}}
</Query>
)
ManageFBList.propTypes = {
user: PropTypes.any,
classes: PropTypes.object.isRequired
}
const getUserOnMount = lifecycle({
componentDidMount () {
getItem('user').then(user => {
this.setState({ user })
}) // Set user to state
}
})
const mapStateToProps = withStateHandlers(() => ({ user: null }), {
user: ({ user }) => () => ({ user })
})
const ManageFBListAuthId = compose(
mapStateToProps,
getUserOnMount
)(ManageFBList)
export default withStyles(styles)(ManageFBListAuthId)
export default withStyles(styles)(ManageFBList)
@@ -66,13 +66,12 @@ export class CreateTeamDialog extends Component {
}
render () {
const { classes, authId } = this.props
const { classes } = this.props
return (
<Mutation
mutation={CREATE_TEAM}
refetchQueries={[{
query: GET_TEAMS_BY_OWNER,
variables: { authId: authId }
query: GET_TEAMS_BY_OWNER
}]}
>
{(createTeam, { loading, error, data }) => {
@@ -255,8 +254,7 @@ export class CreateTeamDialog extends Component {
}
CreateTeamDialog.propTypes = {
classes: PropTypes.object.isRequired,
authId: PropTypes.string
classes: PropTypes.object.isRequired
}
export default withStyles(styles)(CreateTeamDialog)
@@ -55,14 +55,13 @@ export class ManageTeamDelete extends Component {
render () {
console.log(this.props, this.props.slug)
const { classes, authId } = this.props
const { classes } = this.props
return (
<Mutation
mutation={DELETE_TEAM}
refetchQueries={[
{
query: GET_TEAMS_BY_OWNER,
variables: { authId }
query: GET_TEAMS_BY_OWNER
}
]}
>
@@ -149,8 +148,7 @@ export class ManageTeamDelete extends Component {
ManageTeamDelete.propTypes = {
classes: PropTypes.object.isRequired,
slug: PropTypes.string.isRequired,
authId: PropTypes.string.isRequired
slug: PropTypes.string.isRequired
}
export default withStyles(styles)(ManageTeamDelete)
@@ -47,7 +47,6 @@ export class ManageTeamEdit extends Component {
const description = props.team.profile.description || ''
const avatar = props.team.profile.avatar || null
const banner = props.team.profile.banner || null
this.authId = props.authId
this.state = {
open: false,
@@ -66,8 +65,7 @@ export class ManageTeamEdit extends Component {
mutation={UPDATE_TEAM_PROFILE}
refetchQueries={[
{
query: GET_TEAMS_BY_OWNER,
variables: { authId: this.authId }
query: GET_TEAMS_BY_OWNER
}
]}
>
@@ -275,7 +273,6 @@ ManageTeamEdit.propTypes = {
classes: PropTypes.object.isRequired,
slug: PropTypes.string.isRequired,
team: PropTypes.object,
authId: PropTypes.string.isRequired,
match: PropTypes.object
}
@@ -67,7 +67,6 @@ export const ManageTeamMembersList = ({ classes, user = null }) => {
return (
<Query
query={GET_TEAMS_BY_OWNER}
variables={{ authId }}
fetchPolicy='network-only'
>
{({ loading, error, data }) => {
@@ -12,7 +12,7 @@ import ManageTeamDetails from './ManageTeamDetails'
import ManageTeamDelete from './ManageTeamDelete'
import ManageTeamEdit from './ManageTeamEdit'
export const ManageTeamsItem = ({ classes, team, authId, ...props }) => {
export const ManageTeamsItem = ({ classes, team, ...props }) => {
console.log('ManageTeamsItem', team, team.profile, team.profile.avatar)
let avatar
if (team.profile.avatar !== undefined && team.profile.avatar !== 'a') {
@@ -39,8 +39,8 @@ export const ManageTeamsItem = ({ classes, team, authId, ...props }) => {
</CardContent>
<CardActions>
<ManageTeamDetails team={team} />
<ManageTeamEdit slug={team.slug} team={team} authId={authId} {...props} />
<ManageTeamDelete slug={team.slug} authId={authId} />
<ManageTeamEdit slug={team.slug} team={team} {...props} />
<ManageTeamDelete slug={team.slug} />
</CardActions>
</div>
</Card>
@@ -50,8 +50,7 @@ export const ManageTeamsItem = ({ classes, team, authId, ...props }) => {
ManageTeamsItem.propTypes = {
classes: PropTypes.object.isRequired,
team: PropTypes.object.isRequired,
authId: PropTypes.string.isRequired
team: PropTypes.object.isRequired
}
export default ManageTeamsItem
@@ -1,15 +1,11 @@
import React from 'react'
import PropTypes from 'prop-types'
import { Query } from 'react-apollo'
import { withStateHandlers, lifecycle, compose } from 'recompose'
import Grid from '@material-ui/core/Grid'
import { MessageCard } from '@advancedalgos/web-components'
import { withStyles } from '@material-ui/core/styles'
import { isDefined, isString } from '../../../utils/js-helpers'
import { getItem } from '../../../utils/local-storage'
import GET_TEAMS_BY_OWNER from '../../../graphql/teams/GetTeamsByOwnerQuery'
import ManageTeamsItem from './ManageTeamsItem'
@@ -47,105 +43,66 @@ const styles = theme => ({
}
})
export const ManageTeamsList = ({ classes, user = null, ...props }) => {
let owner
let authId = null
console.log('ManageTeamsList: ', user)
if (user !== null && isString(user)) {
owner = JSON.parse(user)
if (isDefined(owner.authId)) authId = owner.authId
}
console.log('ManageTeamsList 2: ', owner, authId)
if (authId === undefined || authId === null) {
return (
<Grid container spacing={40}>
<Grid>
<MessageCard message='Loading...' />
</Grid>
</Grid>
)
} else {
return (
<Query
query={GET_TEAMS_BY_OWNER}
variables={{ authId }}
fetchPolicy='network-only'
>
{({ loading, error, data }) => {
console.log('GET_TEAMS_BY_OWNER: ', loading, error, data)
export const ManageTeamsList = ({ classes, user = null, ...props }) => (
<Query
query={GET_TEAMS_BY_OWNER}
fetchPolicy='network-only'
>
{({ loading, error, data }) => {
console.log('GET_TEAMS_BY_OWNER: ', loading, error, data)
let errors = null
if (error) {
errors = error.graphQLErrors.map(({ message }, i) => {
return <MessageCard message={message} />
})
}
if (!loading && !error) {
if (data.teams_TeamsByOwner.length > 0) {
return (
<React.Fragment>
<Grid container spacing={40}>
{!loading &&
data.teams_TeamsByOwner.map(team => (
<ManageTeamsItem
key={team.id}
team={team}
classes={classes}
authId={authId}
{...props}
/>
))}
{errors}
</Grid>
</React.Fragment>
)
} else {
return (
<Grid container spacing={40}>
<Grid item xs={10}>
<MessageCard message='You don&rsquo;t have any teams. Create one!'>
<CreateTeamDialog authId={authId} />
</MessageCard>
</Grid>
</Grid>
)
}
} else {
return (
let errors = null
if (error) {
errors = error.graphQLErrors.map(({ message }, i) => {
return <MessageCard message={message} />
})
}
if (!loading && !error) {
if (data.teams_TeamsByOwner.length > 0) {
return (
<React.Fragment>
<Grid container spacing={40}>
<Grid item xs={12}>
<MessageCard message='Loading...' />
{errors !== null && <MessageCard message={errors} />}
</Grid>
{!loading &&
data.teams_TeamsByOwner.map(team => (
<ManageTeamsItem
key={team.id}
team={team}
classes={classes}
{...props}
/>
))}
{errors}
</Grid>
)
}
}}
</Query>
)
}
}
</React.Fragment>
)
} else {
return (
<Grid container spacing={40}>
<Grid item xs={10}>
<MessageCard message='You don&rsquo;t have any teams. Create one!'>
<CreateTeamDialog />
</MessageCard>
</Grid>
</Grid>
)
}
} else {
return (
<Grid container spacing={40}>
<Grid item xs={12}>
<MessageCard message='Loading...' />
{errors !== null && <MessageCard message={errors} />}
</Grid>
</Grid>
)
}
}}
</Query>
)
ManageTeamsList.propTypes = {
user: PropTypes.any,
classes: PropTypes.object.isRequired
}
const getUserOnMount = lifecycle({
componentDidMount () {
getItem('user').then(user => {
this.setState({ user })
}) // Set user to state
}
})
const mapStateToProps = withStateHandlers(() => ({ user: null }), {
user: ({ user }) => () => ({ user })
})
const ManageTeamsListAuthId = compose(
mapStateToProps,
getUserOnMount
)(ManageTeamsList)
export default withStyles(styles)(ManageTeamsListAuthId)
export default withStyles(styles)(ManageTeamsList)