spinelsun
(Or Chen)
6
type User {
username: String! @search(by: [hash, regexp]) @id
name: String
email: String! @search(by: [hash, regexp])
memberships: [Membership!] @hasInverse(field: belongsTo)
hasCredentials: [Credentials!] @hasInverse(field: forUser)
visits: [UserVisit!]
joinedAt: DateTime @search(by: [month])
}
type Version {
orkId: String! @search(by: [hash]) @id
code: String! @search(by: [regexp, hash])
vid: String!
gitCommit: String @search(by: [hash])
next: Version
previous: Version @hasInverse(field: next)
ofBranch: Branch! @hasInverse(field: versions)
publishedFrom: Version @hasInverse(field: publications)
publications: [Version!]
checkouts: [Branch!]
artifacts: [IArtifact!] @hasInverse(field: inVersion)
createdAt: DateTime!
lastModified: DateTime
createdBy: User!
wayOfCreation: CreationType!
}
type Branch {
orkId: String! @search(by: [hash]) @id
changeMark: String!
name: String! @search(by: [exact, regexp])
versions: [Version!]!
checkedOutFrom: Version @hasInverse(field: checkouts)
in: Repository! @hasInverse(field: branches)
createdAt: DateTime!
createdBy: User!
}
enum CreationType {
New_Version
New_Branch
Publish
Root
}