site.graphql 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  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. pageExtensions: String
  31. authAutoLogin: Boolean
  32. authEnforce2FA: Boolean
  33. authHideLocal: Boolean
  34. authLoginBgUrl: String
  35. authJwtAudience: String
  36. authJwtExpiration: String
  37. authJwtRenewablePeriod: String
  38. featurePageRatings: Boolean
  39. featurePageComments: Boolean
  40. featurePersonalWikis: Boolean
  41. securityOpenRedirect: Boolean
  42. securityIframe: Boolean
  43. securityReferrerPolicy: Boolean
  44. securityTrustProxy: Boolean
  45. securitySRI: Boolean
  46. securityHSTS: Boolean
  47. securityHSTSDuration: Int
  48. securityCSP: Boolean
  49. securityCSPDirectives: String
  50. uploadMaxFileSize: Int
  51. uploadMaxFiles: Int
  52. uploadScanSVG: Boolean
  53. uploadForceDownload: Boolean
  54. ): DefaultResponse @auth(requires: ["manage:system"])
  55. }
  56. # -----------------------------------------------
  57. # TYPES
  58. # -----------------------------------------------
  59. type SiteConfig {
  60. host: String
  61. title: String
  62. description: String
  63. robots: [String]
  64. analyticsService: String
  65. analyticsId: String
  66. company: String
  67. contentLicense: String
  68. logoUrl: String
  69. pageExtensions: String
  70. authAutoLogin: Boolean
  71. authEnforce2FA: Boolean
  72. authHideLocal: Boolean
  73. authLoginBgUrl: String
  74. authJwtAudience: String
  75. authJwtExpiration: String
  76. authJwtRenewablePeriod: String
  77. featurePageRatings: Boolean
  78. featurePageComments: Boolean
  79. featurePersonalWikis: Boolean
  80. securityOpenRedirect: Boolean
  81. securityIframe: Boolean
  82. securityReferrerPolicy: Boolean
  83. securityTrustProxy: Boolean
  84. securitySRI: Boolean
  85. securityHSTS: Boolean
  86. securityHSTSDuration: Int
  87. securityCSP: Boolean
  88. securityCSPDirectives: String
  89. uploadMaxFileSize: Int
  90. uploadMaxFiles: Int
  91. uploadScanSVG: Boolean
  92. uploadForceDownload: Boolean
  93. }