34 lines
		
	
	
		
			825 B
		
	
	
	
		
			GraphQL
		
	
	
	
	
	
			
		
		
	
	
			34 lines
		
	
	
		
			825 B
		
	
	
	
		
			GraphQL
		
	
	
	
	
	
 | 
						|
type Meta @goModel(model: "go.sour.is/ev/pkg/event.Meta") {
 | 
						|
    eventID: String! @goField(name: "getEventID")
 | 
						|
    streamID: String! @goField(name: "ActualStreamID")
 | 
						|
    position: Int! @goField(name: "ActualPosition")
 | 
						|
    created: Time!
 | 
						|
}
 | 
						|
 | 
						|
extend type Query {
 | 
						|
    events(streamID: String! paging: PageInput): Connection!
 | 
						|
}
 | 
						|
extend type Mutation {
 | 
						|
    truncateStream(streamID: String! index:Int!): Boolean!
 | 
						|
}
 | 
						|
extend type Subscription {
 | 
						|
    """after == 0 start from begining, after == -1 start from end"""
 | 
						|
    eventAdded(streamID: String! after: Int! = -1): Event
 | 
						|
}
 | 
						|
 | 
						|
type Event implements Edge @goModel(model: "go.sour.is/ev/pkg/gql.Event") {
 | 
						|
    id: ID!
 | 
						|
 | 
						|
    eventID: String!
 | 
						|
    streamID: String!
 | 
						|
    position: Int!
 | 
						|
 | 
						|
    values: Map!
 | 
						|
    bytes: String!
 | 
						|
    type: String!
 | 
						|
    created: Time!
 | 
						|
    meta: Meta!
 | 
						|
 | 
						|
    linked: Event
 | 
						|
} |