-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathschema.graphql
119 lines (109 loc) · 2.25 KB
/
schema.graphql
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
109
110
111
112
113
114
115
116
117
118
119
type Contract @entity {
id: ID!
address: Bytes!
totalSupply: BigInt!
removedTraits: [Int!]
}
type Character @entity {
id: ID!
tokenId: BigInt!
owner: Owner!
name: String
nameHistory: [String!]
createdAt: BigInt!
transactionHash: String!
traits: TraitMap!
}
type TraitMap @entity {
id: ID!
tokenId: BigInt!
character: Character! @derivedFrom(field: "traits")
tribe: Int!
skinColor: Int!
furColor: Int!
eyeColor: Int!
pupilColor: Int!
hair: Int!
mouth: Int!
beard: Int!
top: Int!
outerwear: Int!
print: Int!
bottom: Int!
footwear: Int!
belt: Int!
hat: Int!
eyewear: Int!
piercing: Int!
wrist: Int!
hands: Int!
neckwear: Int!
leftItem: Int!
rightItem: Int!
background: Int!
}
type Owner @entity {
id: ID!
address: Bytes!
createdAt: BigInt!
characters: [Character!] @derivedFrom(field: "owner")
characterCount: Int!
}
type Approval @entity(immutable: true) {
id: Bytes!
owner: Bytes! # address
approved: Bytes! # address
tokenId: BigInt! # uint256
blockNumber: BigInt!
blockTimestamp: BigInt!
transactionHash: Bytes!
}
type ApprovalForAll @entity(immutable: true) {
id: Bytes!
owner: Bytes! # address
operator: Bytes! # address
approved: Boolean! # bool
blockNumber: BigInt!
blockTimestamp: BigInt!
transactionHash: Bytes!
}
type NameUpdated @entity(immutable: true) {
id: Bytes!
tokenId: BigInt! # uint256
previousName: String! # string
newName: String! # string
blockNumber: BigInt!
blockTimestamp: BigInt!
transactionHash: Bytes!
}
type OwnershipTransferred @entity(immutable: true) {
id: Bytes!
previousOwner: Bytes! # address
newOwner: Bytes! # address
blockNumber: BigInt!
blockTimestamp: BigInt!
transactionHash: Bytes!
}
type Paused @entity(immutable: true) {
id: Bytes!
account: Bytes! # address
blockNumber: BigInt!
blockTimestamp: BigInt!
transactionHash: Bytes!
}
type Transfer @entity(immutable: true) {
id: Bytes!
from: Bytes! # address
to: Bytes! # address
tokenId: BigInt! # uint256
blockNumber: BigInt!
blockTimestamp: BigInt!
transactionHash: Bytes!
}
type Unpaused @entity(immutable: true) {
id: Bytes!
account: Bytes! # address
blockNumber: BigInt!
blockTimestamp: BigInt!
transactionHash: Bytes!
}