This repository has been archived by the owner on Jun 16, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathschema.graphql
117 lines (102 loc) · 2.32 KB
/
schema.graphql
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
# -----------------------------------------------
# !!! THIS FILE WAS GENERATED BY TYPE-GRAPHQL !!!
# !!! DO NOT MODIFY THIS FILE BY YOURSELF !!!
# -----------------------------------------------
type BaseEntity {
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
}
type CategoryEntity {
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
name: String!
}
input CreateCategoryDto {
name: String!
}
input CreateListDto {
name: String!
}
input CreateProductDto {
name: String!
unit: String!
categoryId: Int!
}
"""
The javascript `Date` as string. Type represents date and time as the ISO Date string.
"""
scalar DateTime
type ItemEntity {
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
quantity: Int!
notes: String!
productId: Int!
listId: Int!
product: ProductEntity!
list: ListEntity!
}
type ListEntity {
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
name: String!
items: [ItemEntity!]!
}
type Mutation {
createProduct(product: CreateProductDto!): ProductEntity!
updateProduct: ProductEntity!
deleteProduct: Boolean!
createCategory(category: CreateCategoryDto!): CategoryEntity!
updateCategory(category: CreateCategoryDto!, id: Float!): CategoryEntity!
deleteCategory(id: Float!): Boolean!
createList(list: CreateListDto!): ListEntity!
updateList(list: UpdateListDto!, id: Float!): ListEntity!
deleteList(id: Float!): Boolean!
addItemToList(id: Float!): ListEntity!
removeItemFromList(itemId: Float!, listId: Float!): ListEntity!
}
type PaginatedCategoriesDto {
records: [CategoryEntity!]!
page: Int!
limit: Int!
count: Int!
}
type PaginatedListsDto {
records: [ListEntity!]!
page: Int!
limit: Int!
count: Int!
}
type PaginatedProductsDto {
records: [ProductEntity!]!
page: Int!
limit: Int!
count: Int!
}
type ProductEntity {
id: ID!
createdAt: DateTime!
updatedAt: DateTime!
name: String!
unit: String!
categoryId: Int!
category: CategoryEntity!
items: [ItemEntity!]!
}
type Query {
products: PaginatedProductsDto!
product(id: Float!): ProductEntity!
categories: PaginatedCategoriesDto!
category(id: Float!): CategoryEntity!
lists: PaginatedListsDto!
list(id: Float!): ListEntity!
listItem(itemId: Float!, listId: Float!): ItemEntity!
listItems(listId: Float!): [ItemEntity!]!
}
input UpdateListDto {
name: String!
}