You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

64 lines
2.0 KiB

5 years ago
5 years ago
5 years ago
5 years ago
  1. # ===============================================
  2. # SYSTEM
  3. # ===============================================
  4. extend type Query {
  5. system: SystemQuery
  6. }
  7. extend type Mutation {
  8. system: SystemMutation
  9. }
  10. # -----------------------------------------------
  11. # QUERIES
  12. # -----------------------------------------------
  13. type SystemQuery {
  14. flags: [SystemFlag] @auth(requires: ["manage:system"])
  15. info: SystemInfo
  16. }
  17. # -----------------------------------------------
  18. # MUTATIONS
  19. # -----------------------------------------------
  20. type SystemMutation {
  21. updateFlags(
  22. flags: [SystemFlagInput]!
  23. ): DefaultResponse @auth(requires: ["manage:system"])
  24. }
  25. # -----------------------------------------------
  26. # TYPES
  27. # -----------------------------------------------
  28. type SystemFlag {
  29. key: String!
  30. value: Boolean!
  31. }
  32. input SystemFlagInput {
  33. key: String!
  34. value: Boolean!
  35. }
  36. type SystemInfo {
  37. configFile: String @auth(requires: ["manage:system"])
  38. cpuCores: Int @auth(requires: ["manage:system"])
  39. currentVersion: String @auth(requires: ["manage:system"])
  40. dbHost: String @auth(requires: ["manage:system"])
  41. dbType: String @auth(requires: ["manage:system"])
  42. dbVersion: String @auth(requires: ["manage:system"])
  43. groupsTotal: Int @auth(requires: ["manage:system", "manage:navigation", "manage:groups", "write:groups", "manage:users", "write:users"])
  44. hostname: String @auth(requires: ["manage:system"])
  45. latestVersion: String @auth(requires: ["manage:system"])
  46. latestVersionReleaseDate: Date @auth(requires: ["manage:system"])
  47. nodeVersion: String @auth(requires: ["manage:system"])
  48. operatingSystem: String @auth(requires: ["manage:system"])
  49. pagesTotal: Int @auth(requires: ["manage:system", "manage:navigation", "manage:pages", "delete:pages"])
  50. platform: String @auth(requires: ["manage:system"])
  51. ramTotal: String @auth(requires: ["manage:system"])
  52. usersTotal: Int @auth(requires: ["manage:system", "manage:navigation", "manage:groups", "write:groups", "manage:users", "write:users"])
  53. workingDirectory: String @auth(requires: ["manage:system"])
  54. }