mirror of
https://github.com/Artemis-RGB/Artemis
synced 2026-11-11 11:26:27 +00:00
Workshop - Add button to upload submission directly from library
Workshop - While creating submission allow fitting the icon instead of cropping Workshop - Add the ability to filter default entries
This commit is contained in:
1 parent
13c497f41e
commit
f0cbc3e561
11 files changed
+227
-60
No files matched your search
@@ -1,6 +1,4 @@
|
||||
# This file was generated. Do not edit manually.
|
||||
|
||||
schema {
|
||||
schema {
|
||||
query: Query
|
||||
mutation: Mutation
|
||||
}
|
||||
@@ -107,11 +105,19 @@ type Mutation {
|
||||
addEntry(input: CreateEntryInput!): Entry @authorize @cost(weight: "10")
|
||||
updateEntry(input: UpdateEntryInput!): Entry @authorize @cost(weight: "10")
|
||||
removeEntry(id: Long!): Entry @authorize @cost(weight: "10")
|
||||
updateEntryImage(input: UpdateEntryImageInput!): Image @authorize @cost(weight: "10")
|
||||
setLayoutInfo(input: SetLayoutInfoInput!): [LayoutInfo!]! @authorize @cost(weight: "10")
|
||||
addLayoutInfo(input: CreateLayoutInfoInput!): LayoutInfo @authorize @cost(weight: "10")
|
||||
updateEntryImage(input: UpdateEntryImageInput!): Image
|
||||
@authorize
|
||||
@cost(weight: "10")
|
||||
setLayoutInfo(input: SetLayoutInfoInput!): [LayoutInfo!]!
|
||||
@authorize
|
||||
@cost(weight: "10")
|
||||
addLayoutInfo(input: CreateLayoutInfoInput!): LayoutInfo
|
||||
@authorize
|
||||
@cost(weight: "10")
|
||||
removeLayoutInfo(id: Long!): LayoutInfo! @authorize @cost(weight: "10")
|
||||
updateRelease(input: UpdateReleaseInput!): Release @authorize @cost(weight: "10")
|
||||
updateRelease(input: UpdateReleaseInput!): Release
|
||||
@authorize
|
||||
@cost(weight: "10")
|
||||
removeRelease(id: Long!): Release! @authorize @cost(weight: "10")
|
||||
}
|
||||
|
||||
@@ -152,16 +158,88 @@ type PluginInfosCollectionSegment {
|
||||
}
|
||||
|
||||
type Query {
|
||||
categories(order: [CategorySortInput!] @cost(weight: "10") where: CategoryFilterInput @cost(weight: "10")): [Category!]! @cost(weight: "10")
|
||||
entries(skip: Int take: Int search: String popular: Boolean order: [EntrySortInput!] @cost(weight: "10") where: EntryFilterInput @cost(weight: "10")): EntriesCollectionSegment @listSize(assumedSize: 100, slicingArguments: [ "take" ], slicingArgumentDefaultValue: 10, sizedFields: [ "items" ], requireOneSlicingArgument: false) @cost(weight: "10")
|
||||
entriesV2(search: String popular: Boolean "Returns the first _n_ elements from the list." first: Int "Returns the elements in the list that come after the specified cursor." after: String "Returns the last _n_ elements from the list." last: Int "Returns the elements in the list that come before the specified cursor." before: String order: [EntrySortInput!] @cost(weight: "10") where: EntryFilterInput @cost(weight: "10")): EntriesV2Connection @listSize(assumedSize: 100, slicingArguments: [ "first", "last" ], slicingArgumentDefaultValue: 10, sizedFields: [ "edges", "nodes" ], requireOneSlicingArgument: false) @cost(weight: "10")
|
||||
categories(
|
||||
order: [CategorySortInput!] @cost(weight: "10")
|
||||
where: CategoryFilterInput @cost(weight: "10")
|
||||
): [Category!]! @cost(weight: "10")
|
||||
entries(
|
||||
skip: Int
|
||||
take: Int
|
||||
search: String
|
||||
popular: Boolean
|
||||
order: [EntrySortInput!] @cost(weight: "10")
|
||||
where: EntryFilterInput @cost(weight: "10")
|
||||
): EntriesCollectionSegment
|
||||
@listSize(
|
||||
assumedSize: 100
|
||||
slicingArguments: ["take"]
|
||||
slicingArgumentDefaultValue: 10
|
||||
sizedFields: ["items"]
|
||||
requireOneSlicingArgument: false
|
||||
)
|
||||
@cost(weight: "10")
|
||||
entriesV2(
|
||||
search: String
|
||||
popular: Boolean
|
||||
"Returns the first _n_ elements from the list."
|
||||
first: Int
|
||||
"Returns the elements in the list that come after the specified cursor."
|
||||
after: String
|
||||
"Returns the last _n_ elements from the list."
|
||||
last: Int
|
||||
"Returns the elements in the list that come before the specified cursor."
|
||||
before: String
|
||||
order: [EntrySortInput!] @cost(weight: "10")
|
||||
where: EntryFilterInput @cost(weight: "10")
|
||||
): EntriesV2Connection
|
||||
@listSize(
|
||||
assumedSize: 100
|
||||
slicingArguments: ["first", "last"]
|
||||
slicingArgumentDefaultValue: 10
|
||||
sizedFields: ["edges", "nodes"]
|
||||
requireOneSlicingArgument: false
|
||||
)
|
||||
@cost(weight: "10")
|
||||
entry(id: Long!): Entry @cost(weight: "10")
|
||||
submittedEntries(order: [EntrySortInput!] @cost(weight: "10") where: EntryFilterInput @cost(weight: "10")): [Entry!]! @authorize @cost(weight: "10")
|
||||
popularEntries(where: EntryFilterInput @cost(weight: "10")): [Entry!]! @cost(weight: "10")
|
||||
searchEntries(input: String! type: EntryType order: [EntrySortInput!] @cost(weight: "10") where: EntryFilterInput @cost(weight: "10")): [Entry!]! @cost(weight: "10")
|
||||
searchLayout(deviceProvider: UUID! deviceType: RGBDeviceType! vendor: String! model: String!): LayoutInfo @cost(weight: "10")
|
||||
searchKeyboardLayout(deviceProvider: UUID! vendor: String! model: String! physicalLayout: KeyboardLayoutType! logicalLayout: String): LayoutInfo @cost(weight: "10")
|
||||
pluginInfos(skip: Int take: Int order: [PluginInfoSortInput!] @cost(weight: "10") where: PluginInfoFilterInput @cost(weight: "10")): PluginInfosCollectionSegment @listSize(assumedSize: 100, slicingArguments: [ "take" ], slicingArgumentDefaultValue: 10, sizedFields: [ "items" ], requireOneSlicingArgument: false) @cost(weight: "10")
|
||||
submittedEntries(
|
||||
order: [EntrySortInput!] @cost(weight: "10")
|
||||
where: EntryFilterInput @cost(weight: "10")
|
||||
): [Entry!]! @authorize @cost(weight: "10")
|
||||
popularEntries(where: EntryFilterInput @cost(weight: "10")): [Entry!]!
|
||||
@cost(weight: "10")
|
||||
searchEntries(
|
||||
input: String!
|
||||
type: EntryType
|
||||
order: [EntrySortInput!] @cost(weight: "10")
|
||||
where: EntryFilterInput @cost(weight: "10")
|
||||
): [Entry!]! @cost(weight: "10")
|
||||
searchLayout(
|
||||
deviceProvider: UUID!
|
||||
deviceType: RGBDeviceType!
|
||||
vendor: String!
|
||||
model: String!
|
||||
): LayoutInfo @cost(weight: "10")
|
||||
searchKeyboardLayout(
|
||||
deviceProvider: UUID!
|
||||
vendor: String!
|
||||
model: String!
|
||||
physicalLayout: KeyboardLayoutType!
|
||||
logicalLayout: String
|
||||
): LayoutInfo @cost(weight: "10")
|
||||
pluginInfos(
|
||||
skip: Int
|
||||
take: Int
|
||||
order: [PluginInfoSortInput!] @cost(weight: "10")
|
||||
where: PluginInfoFilterInput @cost(weight: "10")
|
||||
): PluginInfosCollectionSegment
|
||||
@listSize(
|
||||
assumedSize: 100
|
||||
slicingArguments: ["take"]
|
||||
slicingArgumentDefaultValue: 10
|
||||
sizedFields: ["items"]
|
||||
requireOneSlicingArgument: false
|
||||
)
|
||||
@cost(weight: "10")
|
||||
pluginInfo(pluginGuid: UUID!): PluginInfo @cost(weight: "10")
|
||||
release(id: Long!): Release @cost(weight: "10")
|
||||
}
|
||||
@@ -621,21 +699,45 @@ enum SortEnumType {
|
||||
}
|
||||
|
||||
"The authorize directive."
|
||||
directive @authorize("The name of the authorization policy that determines access to the annotated resource." policy: String "Roles that are allowed to access the annotated resource." roles: [String!] "Defines when when the authorize directive shall be applied.By default the authorize directives are applied during the validation phase." apply: ApplyPolicy! = BEFORE_RESOLVER) repeatable on OBJECT | FIELD_DEFINITION
|
||||
directive @authorize(
|
||||
"The name of the authorization policy that determines access to the annotated resource."
|
||||
policy: String
|
||||
"Roles that are allowed to access the annotated resource."
|
||||
roles: [String!]
|
||||
"Defines when when the authorize directive shall be applied.By default the authorize directives are applied during the validation phase."
|
||||
apply: ApplyPolicy! = BEFORE_RESOLVER
|
||||
) repeatable on OBJECT | FIELD_DEFINITION
|
||||
|
||||
"The purpose of the `cost` directive is to define a `weight` for GraphQL types, fields, and arguments. Static analysis can use these weights when calculating the overall cost of a query or response."
|
||||
directive @cost("The `weight` argument defines what value to add to the overall cost for every appearance, or possible appearance, of a type, field, argument, etc." weight: String!) on SCALAR | OBJECT | FIELD_DEFINITION | ARGUMENT_DEFINITION | ENUM | INPUT_FIELD_DEFINITION
|
||||
directive @cost(
|
||||
"The `weight` argument defines what value to add to the overall cost for every appearance, or possible appearance, of a type, field, argument, etc."
|
||||
weight: String!
|
||||
) on SCALAR | OBJECT | FIELD_DEFINITION | ARGUMENT_DEFINITION | ENUM | INPUT_FIELD_DEFINITION
|
||||
|
||||
"The purpose of the `@listSize` directive is to either inform the static analysis about the size of returned lists (if that information is statically available), or to point the analysis to where to find that information."
|
||||
directive @listSize("The `assumedSize` argument can be used to statically define the maximum length of a list returned by a field." assumedSize: Int "The `slicingArguments` argument can be used to define which of the field's arguments with numeric type are slicing arguments, so that their value determines the size of the list returned by that field. It may specify a list of multiple slicing arguments." slicingArguments: [String!] "The `slicingArgumentDefaultValue` argument can be used to define a default value for a slicing argument, which is used if the argument is not present in a query." slicingArgumentDefaultValue: Int "The `sizedFields` argument can be used to define that the value of the `assumedSize` argument or of a slicing argument does not affect the size of a list returned by a field itself, but that of a list returned by one of its sub-fields." sizedFields: [String!] "The `requireOneSlicingArgument` argument can be used to inform the static analysis that it should expect that exactly one of the defined slicing arguments is present in a query. If that is not the case (i.e., if none or multiple slicing arguments are present), the static analysis may throw an error." requireOneSlicingArgument: Boolean! = true) on FIELD_DEFINITION
|
||||
directive @listSize(
|
||||
"The `assumedSize` argument can be used to statically define the maximum length of a list returned by a field."
|
||||
assumedSize: Int
|
||||
"The `slicingArguments` argument can be used to define which of the field's arguments with numeric type are slicing arguments, so that their value determines the size of the list returned by that field. It may specify a list of multiple slicing arguments."
|
||||
slicingArguments: [String!]
|
||||
"The `slicingArgumentDefaultValue` argument can be used to define a default value for a slicing argument, which is used if the argument is not present in a query."
|
||||
slicingArgumentDefaultValue: Int
|
||||
"The `sizedFields` argument can be used to define that the value of the `assumedSize` argument or of a slicing argument does not affect the size of a list returned by a field itself, but that of a list returned by one of its sub-fields."
|
||||
sizedFields: [String!]
|
||||
"The `requireOneSlicingArgument` argument can be used to inform the static analysis that it should expect that exactly one of the defined slicing arguments is present in a query. If that is not the case (i.e., if none or multiple slicing arguments are present), the static analysis may throw an error."
|
||||
requireOneSlicingArgument: Boolean! = true
|
||||
) on FIELD_DEFINITION
|
||||
|
||||
"The `@specifiedBy` directive is used within the type system definition language to provide a URL for specifying the behavior of custom scalar definitions."
|
||||
directive @specifiedBy("The specifiedBy URL points to a human-readable specification. This field will only read a result for scalar types." url: String!) on SCALAR
|
||||
directive @specifiedBy(
|
||||
"The specifiedBy URL points to a human-readable specification. This field will only read a result for scalar types."
|
||||
url: String!
|
||||
) on SCALAR
|
||||
|
||||
"The `DateTime` scalar represents an ISO-8601 compliant date time type."
|
||||
scalar DateTime @specifiedBy(url: "https:\/\/www.graphql-scalars.com\/date-time")
|
||||
scalar DateTime @specifiedBy(url: "https://www.graphql-scalars.com/date-time")
|
||||
|
||||
"The `Long` scalar type represents non-fractional signed whole 64-bit numeric values. Long can represent values between -(2^63) and 2^63 - 1."
|
||||
scalar Long
|
||||
|
||||
scalar UUID @specifiedBy(url: "https:\/\/tools.ietf.org\/html\/rfc4122")
|
||||
scalar UUID @specifiedBy(url: "https://tools.ietf.org/html/rfc4122")
|
||||
Reference in new issue
Block a user