-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathqueries.js
108 lines (102 loc) · 1.68 KB
/
queries.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
import { gql } from 'graphql-request';
export const getPostsQuery = gql`
query GetPosts {
postsConnection {
edges {
cursor
node {
author {
bio
name
id
photo {
url
}
}
createdAt
slug
title
excerpt
featuredImage {
url
}
categories {
name
slug
}
}
}
}
}
`
export const getRecentPostsQuery = gql`
query GetRecentPosts {
posts(orderBy: createdAt_ASC, last: 3) {
title
slug
createdAt
featuredImage {
url
}
}
}
`
export const getRelatedPostsQuery = gql`
query GetRelatedPosts($slug: String!, $categories: [String!]) {
posts(
where: { slug_not: $slug, AND: { categories_some: { slug_in: $categories } } }
last: 3
) {
title
featuredImage {
url
}
createdAt
slug
}
}
`
export const getCategoriesQuery = gql`
query GetCategories {
categories {
slug
name
}
}
`
export const getPostQuery = gql`
query GetPost($slug : String!) {
post(where: { slug: $slug }) {
title
excerpt
featuredImage {
url
}
author {
name
bio
photo {
url
}
}
createdAt
slug
content {
raw
}
categories {
name
slug
}
}
}
`
export const getPostCommentsQuery = gql`
query GetComments($slug: String!) {
comments(where: { post: { slug: $slug } }) {
name
createdAt
text
}
}
`