Workshop - Layout info WIP

This commit is contained in:
Robert committed 2023-10-23 19:33:38 +02:00
1 parent c77d51fb58
commit f4b9b67f1a
25 files changed
+361 -63

No files matched your search

@@ -42,6 +42,7 @@ type Entry {
images: [Image!]!
latestRelease: Release
latestReleaseId: Long
layoutInfo: [LayoutInfo!]!
name: String!
releases: [Release!]!
summary: String!
@@ -53,9 +54,23 @@ type Image {
mimeType: String!
}
type LayoutInfo {
deviceProvider: UUID!
deviceType: RGBDeviceType!
entry: Entry!
entryId: Long!
id: Long!
logicalLayout: String
model: String!
physicalLayout: KeyboardLayoutType
vendor: String!
}
type Mutation {
addEntry(input: CreateEntryInput!): Entry
addLayoutInfo(input: CreateLayoutInfoInput!): LayoutInfo
removeEntry(id: Long!): Entry
removeLayoutInfo(id: Long!): LayoutInfo!
updateEntry(input: UpdateEntryInput!): Entry
}
@@ -64,6 +79,8 @@ type Query {
entries(order: [EntrySortInput!], search: String, skip: Int, take: Int, where: EntryFilterInput): EntriesCollectionSegment
entry(id: Long!): Entry
searchEntries(input: String!, order: [EntrySortInput!], type: EntryType, where: EntryFilterInput): [Entry!]!
searchKeyboardLayout(deviceProvider: UUID!, logicalLayout: String, model: String!, physicalLayout: KeyboardLayoutType!, vendor: String!): LayoutInfo
searchLayout(deviceProvider: UUID!, deviceType: RGBDeviceType!, model: String!, vendor: String!): LayoutInfo
submittedEntries(order: [EntrySortInput!], where: EntryFilterInput): [Entry!]!
}
@@ -95,6 +112,37 @@ enum EntryType {
PROFILE
}
enum KeyboardLayoutType {
ABNT
ANSI
ISO
JIS
KS
UNKNOWN
}
enum RGBDeviceType {
ALL
COOLER
DRAM
FAN
GRAPHICS_CARD
HEADSET
HEADSET_STAND
KEYBOARD
KEYPAD
LED_CONTROLLER
LED_MATRIX
LED_STRIPE
MAINBOARD
MONITOR
MOUSE
MOUSEPAD
NONE
SPEAKER
UNKNOWN
}
enum SortEnumType {
ASC
DESC
@@ -131,6 +179,16 @@ input CreateEntryInput {
tags: [String!]!
}
input CreateLayoutInfoInput {
deviceProvider: UUID!
deviceType: RGBDeviceType!
entryId: Long!
logicalLayout: String
model: String!
physicalLayout: KeyboardLayoutType
vendor: String!
}
input DateTimeOperationFilterInput {
eq: DateTime
gt: DateTime
@@ -161,6 +219,7 @@ input EntryFilterInput {
images: ListFilterInputTypeOfImageFilterInput
latestRelease: ReleaseFilterInput
latestReleaseId: LongOperationFilterInput
layoutInfo: ListFilterInputTypeOfLayoutInfoFilterInput
name: StringOperationFilterInput
or: [EntryFilterInput!]
releases: ListFilterInputTypeOfReleaseFilterInput
@@ -203,6 +262,20 @@ input ImageSortInput {
mimeType: SortEnumType
}
input LayoutInfoFilterInput {
and: [LayoutInfoFilterInput!]
deviceProvider: UuidOperationFilterInput
deviceType: RGBDeviceTypeOperationFilterInput
entry: EntryFilterInput
entryId: LongOperationFilterInput
id: LongOperationFilterInput
logicalLayout: StringOperationFilterInput
model: StringOperationFilterInput
or: [LayoutInfoFilterInput!]
physicalLayout: NullableOfKeyboardLayoutTypeOperationFilterInput
vendor: StringOperationFilterInput
}
input ListFilterInputTypeOfCategoryFilterInput {
all: CategoryFilterInput
any: Boolean
@@ -217,6 +290,13 @@ input ListFilterInputTypeOfImageFilterInput {
some: ImageFilterInput
}
input ListFilterInputTypeOfLayoutInfoFilterInput {
all: LayoutInfoFilterInput
any: Boolean
none: LayoutInfoFilterInput
some: LayoutInfoFilterInput
}
input ListFilterInputTypeOfReleaseFilterInput {
all: ReleaseFilterInput
any: Boolean
@@ -246,6 +326,20 @@ input LongOperationFilterInput {
nlte: Long
}
input NullableOfKeyboardLayoutTypeOperationFilterInput {
eq: KeyboardLayoutType
in: [KeyboardLayoutType]
neq: KeyboardLayoutType
nin: [KeyboardLayoutType]
}
input RGBDeviceTypeOperationFilterInput {
eq: RGBDeviceType
in: [RGBDeviceType!]
neq: RGBDeviceType
nin: [RGBDeviceType!]
}
input ReleaseFilterInput {
and: [ReleaseFilterInput!]
createdAt: DateTimeOperationFilterInput