blob: 3ee4cb28680bfc70f6ae46a55cafb226efffb76b (
plain) (
blame)
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
|
import CircularProgress from '@material-ui/core/CircularProgress'
import gql from 'graphql-tag'
import React from 'react'
import { Query } from 'react-apollo'
import LabelChange from './LabelChange'
import SetStatus from './SetStatus'
import SetTitle from './SetTitle'
import Timeline from './Timeline'
import Message from './Message'
const QUERY = gql`
query($id: String!, $first: Int = 10, $after: String) {
defaultRepository {
bug(prefix: $id) {
operations(first: $first, after: $after) {
nodes {
...Create
...Comment
...LabelChange
...SetTitle
...SetStatus
}
pageInfo {
hasNextPage
endCursor
}
}
}
}
}
${Message.createFragment}
${Message.commentFragment}
${LabelChange.fragment}
${SetTitle.fragment}
${SetStatus.fragment}
`
const TimelineQuery = ({id}) => (
<Query query={QUERY} variables={{id, first: 100}}>
{({loading, error, data, fetchMore}) => {
if (loading) return <CircularProgress/>
if (error) return <p>Error: {error}</p>
return <Timeline ops={data.defaultRepository.bug.operations.nodes} fetchMore={fetchMore}/>
}}
</Query>
)
export default TimelineQuery
|