# A Log is the "file" of an RP session type Log { # A unique identifier for the log. id: String! # A secondary unique identifier for the log. This is a lot shorter and more suitable for storage when # the link doesn't need to be as expressive. shortId: String! # The date for a log. date: Time! # The channel of a log. channelName: String! # Information about the channel this log is in. channel: Channel! # The session's title. title: String! # The log's event, which is the same as the tags in the previous logbot site. # Empty string means that it's no event. eventName: String! # The description of a session, which is empty if unset. description: String! # Whether the log session is open. open: Boolean! # The characters involved in the log file. characters: [Character!]! # The posts of the logfile, which can be filtered by kinds. posts(kinds:[String!]): [Post!]! } # Filter for logs query input LogsFilter { # Channels to limit results to (inclusive) channels: [String!] # Events to limit results to (inclusive) events: [String!] # Characters to limit results to (exclusive) characters: [String!] # Search post content search: String # Limit by whether it's open or not open: Boolean # Limit the amount of results you get back limit: Int } # Input for addLog mutation input LogAddInput { # The date of the log. date: Time! # The channel where the log is set channel: String! # Optional: The log title title: String # Optional: Whether the log is open open: Boolean # Optional: The log event name event: String # Optional: A short description of the log description: String } # Input for addLog mutation input LogEditInput { # The id of the log id: String! # The log title title: String # The log event name event: String # A short description of the log description: String # Open/close the log open: Boolean } # Input for removeLog mutation input LogRemoveInput { # The id of the log to remove id: String! } """ Input for importLog mutation. """ input LogImportInput { "The channel of the log, alwyas required." channelName: String! "Which importer to use." importer: LogImporter! "The timezone of the import, all log and post dates will be treated as it. It will be UTC if none is specified." timezone: String "The date of the log, if not provided in the log body." date: Time "The log body itself." data: String! } enum LogImporter { """ mIRC-like: This importer parses logs that copied from mIRC posts without spaces. """ MircLike """ Forum log: This importer parses the format on the forum. The displayed log, not the post source. """ ForumLog }