@valueflows/vf-graphql
Version:
Reference GraphQL implementation of the ValueFlows spec
51 lines (45 loc) • 1.85 kB
JavaScript
// Generated by scripts/build.js - edit the *.gql file instead!
module.exports = `
##
#
# 'History' module providing metadata needed to implement revision introspection.
#
# This module extends responses for all updateable record types with an additional
# metadata payload-
#
# meta: RecordMeta!
#
# Most of the fields in this metadata are optional, since the capabilities affording
# the features they depend upon differ between data storage engines. User interfaces
# intending to provide version-management functionality should bear this in mind, and
# design for all possibilities and absences of data.
#
# In addition to this record metadata, all record types gain an additional query edge-
#
# revision(revisionId: ID!): Self
#
# This allows the UI to pass any \`Revision.ID\` it is able to obtain for a record into
# a simple and predictable API which it can then use to fetch, display and compare data.
#
# @see bridging/history.*.gql
#
##
type RecordMeta {
"Metadata about the previous revision of this record, queryable via \`revision(previousRevision.id)\`. If this is the first revision of a record, this field is empty."
previousRevision: Revision
"Number of older revisions, if known."
previousRevisionsCount: Int
"Number of newer revisions, if known."
futureRevisionsCount: Int
"Metadata regarding the most recent revision of this record, if able to be determined."
latestRevision: Revision # left optional, since in some systems this will be difficult or impossible to determine
"Metadata regarding the requested revision of this record. A record's \`retrievedRevision.id\` == \`revisionId\`."
retrievedRevision: Revision!
}
type Revision {
"ID of the revision, used to query a specific version of the related record."
id: ID!
"Time this revision was created, if known."
time: DateTime
}
`