53 lines
1.1 KiB
GraphQL
53 lines
1.1 KiB
GraphQL
# ===============================================
|
|
# THEMES
|
|
# ===============================================
|
|
|
|
extend type Query {
|
|
theming: ThemingQuery
|
|
}
|
|
|
|
extend type Mutation {
|
|
theming: ThemingMutation
|
|
}
|
|
|
|
# -----------------------------------------------
|
|
# QUERIES
|
|
# -----------------------------------------------
|
|
|
|
type ThemingQuery {
|
|
themes: [ThemingTheme] @auth(requires: ["manage:theme", "manage:system"])
|
|
config: ThemingConfig @auth(requires: ["manage:theme", "manage:system"])
|
|
}
|
|
|
|
# -----------------------------------------------
|
|
# MUTATIONS
|
|
# -----------------------------------------------
|
|
|
|
type ThemingMutation {
|
|
setConfig(
|
|
theme: String!
|
|
darkMode: Boolean!
|
|
injectCSS: String
|
|
injectHead: String
|
|
injectBody: String
|
|
): DefaultResponse @auth(requires: ["manage:theme", "manage:system"])
|
|
}
|
|
|
|
# -----------------------------------------------
|
|
# TYPES
|
|
# -----------------------------------------------
|
|
|
|
type ThemingConfig {
|
|
theme: String!
|
|
darkMode: Boolean!
|
|
injectCSS: String
|
|
injectHead: String
|
|
injectBody: String
|
|
}
|
|
|
|
type ThemingTheme {
|
|
key: String
|
|
title: String
|
|
author: String
|
|
}
|