membership.graphql 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. type AvatarObject @variant {
  2. "The avatar data object"
  3. avatarObject: StorageDataObject!
  4. }
  5. type AvatarUri @variant {
  6. "The avatar URL"
  7. avatarUri: String!
  8. }
  9. union Avatar = AvatarObject | AvatarUri
  10. type MemberMetadata @entity {
  11. "Member's name"
  12. name: String
  13. "Avatar data object"
  14. avatar: Avatar
  15. "Short text chosen by member to share information about themselves"
  16. about: String
  17. member: Membership! @unique
  18. }
  19. "Stored information about a registered user"
  20. type Membership @entity {
  21. "MemberId: runtime identifier for a user"
  22. id: ID!
  23. "Timestamp of the block the membership was created at"
  24. createdAt: DateTime!
  25. "The unique handle chosen by member"
  26. handle: String! @unique
  27. "Member's metadata"
  28. metadata: MemberMetadata @derivedFrom(field: "member")
  29. "Member's controller account id"
  30. controllerAccount: String!
  31. "Auctions in which is this user whitelisted to participate"
  32. whitelistedInAuctions: [AuctionWhitelistedMember!] @derivedFrom(field: "member")
  33. "Channels owned by this member"
  34. channels: [Channel!] @derivedFrom(field: "ownerMember")
  35. "Channels the member is banned from (in terms of commenting/reacting)"
  36. bannedFromChannels: [BannedMember!] @derivedFrom(field: "member")
  37. "Number of channels ever created by this member"
  38. totalChannelsCreated: Int!
  39. }