117 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			GraphQL
		
	
	
	
	
	
			
		
		
	
	
			117 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			GraphQL
		
	
	
	
	
	
# ===============================================
 | 
						|
# SITE
 | 
						|
# ===============================================
 | 
						|
 | 
						|
extend type Query {
 | 
						|
  site: SiteQuery
 | 
						|
}
 | 
						|
 | 
						|
extend type Mutation {
 | 
						|
  site: SiteMutation
 | 
						|
}
 | 
						|
 | 
						|
# -----------------------------------------------
 | 
						|
# QUERIES
 | 
						|
# -----------------------------------------------
 | 
						|
 | 
						|
type SiteQuery {
 | 
						|
  config: SiteConfig @auth(requires: ["manage:system"])
 | 
						|
}
 | 
						|
 | 
						|
# -----------------------------------------------
 | 
						|
# MUTATIONS
 | 
						|
# -----------------------------------------------
 | 
						|
 | 
						|
type SiteMutation {
 | 
						|
  updateConfig(
 | 
						|
    host: String
 | 
						|
    title: String
 | 
						|
    description: String
 | 
						|
    robots: [String]
 | 
						|
    analyticsService: String
 | 
						|
    analyticsId: String
 | 
						|
    company: String
 | 
						|
    contentLicense: String
 | 
						|
    logoUrl: String
 | 
						|
    pageExtensions: String
 | 
						|
    authAutoLogin: Boolean
 | 
						|
    authEnforce2FA: Boolean
 | 
						|
    authHideLocal: Boolean
 | 
						|
    authLoginBgUrl: String
 | 
						|
    authJwtAudience: String
 | 
						|
    authJwtExpiration: String
 | 
						|
    authJwtRenewablePeriod: String
 | 
						|
    editFab: Boolean
 | 
						|
    editMenuBar: Boolean
 | 
						|
    editMenuBtn: Boolean
 | 
						|
    editMenuExternalBtn: Boolean
 | 
						|
    editMenuExternalName: String
 | 
						|
    editMenuExternalIcon: String
 | 
						|
    editMenuExternalUrl: String
 | 
						|
    featurePageRatings: Boolean
 | 
						|
    featurePageComments: Boolean
 | 
						|
    featurePersonalWikis: Boolean
 | 
						|
    securityOpenRedirect: Boolean
 | 
						|
    securityIframe: Boolean
 | 
						|
    securityReferrerPolicy: Boolean
 | 
						|
    securityTrustProxy: Boolean
 | 
						|
    securitySRI: Boolean
 | 
						|
    securityHSTS: Boolean
 | 
						|
    securityHSTSDuration: Int
 | 
						|
    securityCSP: Boolean
 | 
						|
    securityCSPDirectives: String
 | 
						|
    uploadMaxFileSize: Int
 | 
						|
    uploadMaxFiles: Int
 | 
						|
    uploadScanSVG: Boolean
 | 
						|
    uploadForceDownload: Boolean
 | 
						|
 | 
						|
  ): DefaultResponse @auth(requires: ["manage:system"])
 | 
						|
}
 | 
						|
 | 
						|
# -----------------------------------------------
 | 
						|
# TYPES
 | 
						|
# -----------------------------------------------
 | 
						|
 | 
						|
type SiteConfig {
 | 
						|
  host: String
 | 
						|
  title: String
 | 
						|
  description: String
 | 
						|
  robots: [String]
 | 
						|
  analyticsService: String
 | 
						|
  analyticsId: String
 | 
						|
  company: String
 | 
						|
  contentLicense: String
 | 
						|
  logoUrl: String
 | 
						|
  pageExtensions: String
 | 
						|
  authAutoLogin: Boolean
 | 
						|
  authEnforce2FA: Boolean
 | 
						|
  authHideLocal: Boolean
 | 
						|
  authLoginBgUrl: String
 | 
						|
  authJwtAudience: String
 | 
						|
  authJwtExpiration: String
 | 
						|
  authJwtRenewablePeriod: String
 | 
						|
  editFab: Boolean
 | 
						|
  editMenuBar: Boolean
 | 
						|
  editMenuBtn: Boolean
 | 
						|
  editMenuExternalBtn: Boolean
 | 
						|
  editMenuExternalName: String
 | 
						|
  editMenuExternalIcon: String
 | 
						|
  editMenuExternalUrl: String
 | 
						|
  featurePageRatings: Boolean
 | 
						|
  featurePageComments: Boolean
 | 
						|
  featurePersonalWikis: Boolean
 | 
						|
  securityOpenRedirect: Boolean
 | 
						|
  securityIframe: Boolean
 | 
						|
  securityReferrerPolicy: Boolean
 | 
						|
  securityTrustProxy: Boolean
 | 
						|
  securitySRI: Boolean
 | 
						|
  securityHSTS: Boolean
 | 
						|
  securityHSTSDuration: Int
 | 
						|
  securityCSP: Boolean
 | 
						|
  securityCSPDirectives: String
 | 
						|
  uploadMaxFileSize: Int
 | 
						|
  uploadMaxFiles: Int
 | 
						|
  uploadScanSVG: Boolean
 | 
						|
  uploadForceDownload: Boolean
 | 
						|
}
 |