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.

96 lines
2.3 KiB

  1. # ===============================================
  2. # SITE
  3. # ===============================================
  4. extend type Query {
  5. site: SiteQuery
  6. }
  7. extend type Mutation {
  8. site: SiteMutation
  9. }
  10. # -----------------------------------------------
  11. # QUERIES
  12. # -----------------------------------------------
  13. type SiteQuery {
  14. config: SiteConfig @auth(requires: ["manage:system"])
  15. }
  16. # -----------------------------------------------
  17. # MUTATIONS
  18. # -----------------------------------------------
  19. type SiteMutation {
  20. updateConfig(
  21. host: String
  22. title: String
  23. description: String
  24. robots: [String]
  25. analyticsService: String
  26. analyticsId: String
  27. company: String
  28. contentLicense: String
  29. logoUrl: String
  30. authAutoLogin: Boolean
  31. authEnforce2FA: Boolean
  32. authHideLocal: Boolean
  33. authLoginBgUrl: String
  34. authJwtAudience: String
  35. authJwtExpiration: String
  36. authJwtRenewablePeriod: String
  37. featurePageRatings: Boolean
  38. featurePageComments: Boolean
  39. featurePersonalWikis: Boolean
  40. securityOpenRedirect: Boolean
  41. securityIframe: Boolean
  42. securityReferrerPolicy: Boolean
  43. securityTrustProxy: Boolean
  44. securitySRI: Boolean
  45. securityHSTS: Boolean
  46. securityHSTSDuration: Int
  47. securityCSP: Boolean
  48. securityCSPDirectives: String
  49. uploadMaxFileSize: Int
  50. uploadMaxFiles: Int
  51. ): DefaultResponse @auth(requires: ["manage:system"])
  52. }
  53. # -----------------------------------------------
  54. # TYPES
  55. # -----------------------------------------------
  56. type SiteConfig {
  57. host: String!
  58. title: String!
  59. description: String!
  60. robots: [String]!
  61. analyticsService: String!
  62. analyticsId: String!
  63. company: String!
  64. contentLicense: String!
  65. logoUrl: String!
  66. authAutoLogin: Boolean
  67. authEnforce2FA: Boolean
  68. authHideLocal: Boolean
  69. authLoginBgUrl: String
  70. authJwtAudience: String
  71. authJwtExpiration: String
  72. authJwtRenewablePeriod: String
  73. featurePageRatings: Boolean!
  74. featurePageComments: Boolean!
  75. featurePersonalWikis: Boolean!
  76. securityOpenRedirect: Boolean!
  77. securityIframe: Boolean!
  78. securityReferrerPolicy: Boolean!
  79. securityTrustProxy: Boolean!
  80. securitySRI: Boolean!
  81. securityHSTS: Boolean!
  82. securityHSTSDuration: Int!
  83. securityCSP: Boolean!
  84. securityCSPDirectives: String!
  85. uploadMaxFileSize: Int!
  86. uploadMaxFiles: Int!
  87. }