Skip to content

Commit 2102ed5

Browse files
committed
Pass orderBy down from ReviewList to delete()
1 parent 3191e74 commit 2102ed5

File tree

2 files changed

+16
-15
lines changed

2 files changed

+16
-15
lines changed

src/components/Review.js

Lines changed: 9 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ class Review extends Component {
7272

7373
delete = () => {
7474
this.closeDeleteConfirmation()
75-
this.props.delete(this.props.review.id).catch(e => {
75+
this.props.delete(this.props.review.id, this.props.orderBy).catch(e => {
7676
if (find(e.graphQLErrors, { message: 'unauthorized' })) {
7777
alert('👮‍♀️✋ You can only delete your own reviews!')
7878
}
@@ -181,7 +181,8 @@ class Review extends Component {
181181
Review.propTypes = {
182182
review: propType(REVIEW_ENTRY).isRequired,
183183
favorite: PropTypes.func.isRequired,
184-
user: PropTypes.object
184+
user: PropTypes.object,
185+
orderBy: PropTypes.string.isRequired
185186
}
186187

187188
const FAVORITE_REVIEW_MUTATION = gql`
@@ -239,7 +240,7 @@ const DELETE_REVIEW_MUTATION = gql`
239240

240241
const withDeleteMutation = graphql(DELETE_REVIEW_MUTATION, {
241242
props: ({ mutate }) => ({
242-
delete: id =>
243+
delete: (id, orderBy) =>
243244
mutate({
244245
variables: { id },
245246
optimisticResponse: {
@@ -248,21 +249,13 @@ const withDeleteMutation = graphql(DELETE_REVIEW_MUTATION, {
248249
update: store => {
249250
const query = {
250251
query: REVIEWS_QUERY,
251-
variables: { limit: 10, orderBy: 'createdAt_DESC' }
252+
variables: { limit: 10, orderBy }
252253
}
253254

254255
let data = store.readQuery(query)
255256
remove(data.reviews, { id })
256257
store.writeQuery({ ...query, data })
257258

258-
query.variables.orderBy = 'createdAt_ASC'
259-
260-
try {
261-
data = store.readQuery(query)
262-
remove(data.reviews, { id })
263-
store.writeQuery({ ...query, data })
264-
} catch (e) {}
265-
266259
data = store.readQuery({ query: READ_USER_FAVORITES })
267260
remove(data.currentUser.favoriteReviews, { id })
268261
store.writeQuery({ query: READ_USER_FAVORITES, data })
@@ -271,4 +264,7 @@ const withDeleteMutation = graphql(DELETE_REVIEW_MUTATION, {
271264
})
272265
})
273266

274-
export default compose(withFavoriteMutation, withDeleteMutation)(Review)
267+
export default compose(
268+
withFavoriteMutation,
269+
withDeleteMutation
270+
)(Review)

src/components/ReviewList.js

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,14 +32,19 @@ class ReviewList extends Component {
3232
}
3333

3434
render() {
35-
const { reviews, user } = this.props
35+
const { reviews, user, orderBy } = this.props
3636

3737
return (
3838
<div className="Reviews-list">
3939
<div className="Reviews-content">
4040
{reviews &&
4141
reviews.map(review => (
42-
<Review key={review.id} review={review} user={user} />
42+
<Review
43+
key={review.id}
44+
review={review}
45+
user={user}
46+
orderBy={orderBy}
47+
/>
4348
))}
4449
</div>
4550
<div className="Spinner" />

0 commit comments

Comments
 (0)