fix: enables nested AND/OR queries (#3834)

This commit is contained in:
Patrik
2023-10-27 15:18:25 -04:00
committed by GitHub
parent 422c803da6
commit 237eebdf87
5 changed files with 6773 additions and 1076 deletions

View File

@@ -89,15 +89,15 @@ const buildWhereInputType = ({
const fieldName = formatName(name)
return new GraphQLInputObjectType({
name: `${fieldName}_where`,
fields: {
...fieldTypes,
const recursiveFields = {
AND: {
type: new GraphQLList(
new GraphQLInputObjectType({
name: `${fieldName}_where_and`,
fields: fieldTypes,
fields: () => ({
...fieldTypes,
...recursiveFields,
}),
}),
),
},
@@ -105,10 +105,20 @@ const buildWhereInputType = ({
type: new GraphQLList(
new GraphQLInputObjectType({
name: `${fieldName}_where_or`,
fields: fieldTypes,
fields: () => ({
...fieldTypes,
...recursiveFields,
}),
}),
),
},
}
return new GraphQLInputObjectType({
name: `${fieldName}_where`,
fields: {
...fieldTypes,
...recursiveFields,
},
})
}

View File

@@ -1,18 +1,20 @@
type Query {
Post(id: String!, draft: Boolean): Post
Posts(where: Post_where, draft: Boolean, page: Int, limit: Int, sort: String): Posts
Posts(draft: Boolean, where: Post_where, limit: Int, page: Int, sort: String): Posts
docAccessPost(id: String!): postsDocAccess
Media(id: String!, draft: Boolean): Media
allMedia(where: Media_where, draft: Boolean, page: Int, limit: Int, sort: String): allMedia
allMedia(draft: Boolean, where: Media_where, limit: Int, page: Int, sort: String): allMedia
docAccessMedia(id: String!): mediaDocAccess
User(id: String!, draft: Boolean): User
Users(where: User_where, draft: Boolean, page: Int, limit: Int, sort: String): Users
Users(draft: Boolean, where: User_where, limit: Int, page: Int, sort: String): Users
docAccessUser(id: String!): usersDocAccess
meUser: usersMe
initializedUser: Boolean
PayloadPreference(id: String!, draft: Boolean): PayloadPreference
PayloadPreferences(draft: Boolean, where: PayloadPreference_where, limit: Int, page: Int, sort: String): PayloadPreferences
docAccessPayloadPreference(id: String!): payload_preferencesDocAccess
Menu(draft: Boolean): Menu
docAccessMenu: menuDocAccess
Preference(key: String): Preference
Access: Access
}
@@ -51,8 +53,8 @@ input Post_AssociatedMedia_where {
width: Post_AssociatedMedia_width_operator
height: Post_AssociatedMedia_height_operator
id: Post_AssociatedMedia_id_operator
OR: [Post_AssociatedMedia_where_or]
AND: [Post_AssociatedMedia_where_and]
OR: [Post_AssociatedMedia_where_or]
}
input Post_AssociatedMedia_updatedAt_operator {
@@ -83,8 +85,8 @@ input Post_AssociatedMedia_url_operator {
like: String
contains: String
in: [String]
not_in: [[String]]
all: [[[String]]]
not_in: [String]
all: [String]
exists: Boolean
}
@@ -94,8 +96,8 @@ input Post_AssociatedMedia_filename_operator {
like: String
contains: String
in: [String]
not_in: [[String]]
all: [[[String]]]
not_in: [String]
all: [String]
exists: Boolean
}
@@ -105,8 +107,8 @@ input Post_AssociatedMedia_mimeType_operator {
like: String
contains: String
in: [String]
not_in: [[String]]
all: [[[String]]]
not_in: [String]
all: [String]
exists: Boolean
}
@@ -146,23 +148,11 @@ input Post_AssociatedMedia_id_operator {
like: String
contains: String
in: [String]
not_in: [[String]]
all: [[[String]]]
not_in: [String]
all: [String]
exists: Boolean
}
input Post_AssociatedMedia_where_or {
updatedAt: Post_AssociatedMedia_updatedAt_operator
createdAt: Post_AssociatedMedia_createdAt_operator
url: Post_AssociatedMedia_url_operator
filename: Post_AssociatedMedia_filename_operator
mimeType: Post_AssociatedMedia_mimeType_operator
filesize: Post_AssociatedMedia_filesize_operator
width: Post_AssociatedMedia_width_operator
height: Post_AssociatedMedia_height_operator
id: Post_AssociatedMedia_id_operator
}
input Post_AssociatedMedia_where_and {
updatedAt: Post_AssociatedMedia_updatedAt_operator
createdAt: Post_AssociatedMedia_createdAt_operator
@@ -173,20 +163,36 @@ input Post_AssociatedMedia_where_and {
width: Post_AssociatedMedia_width_operator
height: Post_AssociatedMedia_height_operator
id: Post_AssociatedMedia_id_operator
AND: [Post_AssociatedMedia_where_and]
OR: [Post_AssociatedMedia_where_or]
}
input Post_AssociatedMedia_where_or {
updatedAt: Post_AssociatedMedia_updatedAt_operator
createdAt: Post_AssociatedMedia_createdAt_operator
url: Post_AssociatedMedia_url_operator
filename: Post_AssociatedMedia_filename_operator
mimeType: Post_AssociatedMedia_mimeType_operator
filesize: Post_AssociatedMedia_filesize_operator
width: Post_AssociatedMedia_width_operator
height: Post_AssociatedMedia_height_operator
id: Post_AssociatedMedia_id_operator
AND: [Post_AssociatedMedia_where_and]
OR: [Post_AssociatedMedia_where_or]
}
type Posts {
docs: [Post]
totalDocs: Int
offset: Int
hasNextPage: Boolean
hasPrevPage: Boolean
limit: Int
totalPages: Int
nextPage: Int
offset: Int
page: Int
pagingCounter: Int
hasPrevPage: Boolean
hasNextPage: Boolean
prevPage: Int
nextPage: Int
totalDocs: Int
totalPages: Int
}
input Post_where {
@@ -195,8 +201,8 @@ input Post_where {
updatedAt: Post_updatedAt_operator
createdAt: Post_createdAt_operator
id: Post_id_operator
OR: [Post_where_or]
AND: [Post_where_and]
OR: [Post_where_or]
}
input Post_text_operator {
@@ -205,8 +211,8 @@ input Post_text_operator {
like: String
contains: String
in: [String]
not_in: [[String]]
all: [[[String]]]
not_in: [String]
all: [String]
exists: Boolean
}
@@ -244,25 +250,29 @@ input Post_id_operator {
like: String
contains: String
in: [String]
not_in: [[String]]
all: [[[String]]]
not_in: [String]
all: [String]
exists: Boolean
}
input Post_where_or {
text: Post_text_operator
associatedMedia: Post_associatedMedia_operator
updatedAt: Post_updatedAt_operator
createdAt: Post_createdAt_operator
id: Post_id_operator
}
input Post_where_and {
text: Post_text_operator
associatedMedia: Post_associatedMedia_operator
updatedAt: Post_updatedAt_operator
createdAt: Post_createdAt_operator
id: Post_id_operator
AND: [Post_where_and]
OR: [Post_where_or]
}
input Post_where_or {
text: Post_text_operator
associatedMedia: Post_associatedMedia_operator
updatedAt: Post_updatedAt_operator
createdAt: Post_createdAt_operator
id: Post_id_operator
AND: [Post_where_and]
OR: [Post_where_or]
}
type postsDocAccess {
@@ -399,16 +409,16 @@ type PostsDeleteDocAccess {
type allMedia {
docs: [Media]
totalDocs: Int
offset: Int
hasNextPage: Boolean
hasPrevPage: Boolean
limit: Int
totalPages: Int
nextPage: Int
offset: Int
page: Int
pagingCounter: Int
hasPrevPage: Boolean
hasNextPage: Boolean
prevPage: Int
nextPage: Int
totalDocs: Int
totalPages: Int
}
input Media_where {
@@ -421,8 +431,8 @@ input Media_where {
width: Media_width_operator
height: Media_height_operator
id: Media_id_operator
OR: [Media_where_or]
AND: [Media_where_and]
OR: [Media_where_or]
}
input Media_updatedAt_operator {
@@ -453,8 +463,8 @@ input Media_url_operator {
like: String
contains: String
in: [String]
not_in: [[String]]
all: [[[String]]]
not_in: [String]
all: [String]
exists: Boolean
}
@@ -464,8 +474,8 @@ input Media_filename_operator {
like: String
contains: String
in: [String]
not_in: [[String]]
all: [[[String]]]
not_in: [String]
all: [String]
exists: Boolean
}
@@ -475,8 +485,8 @@ input Media_mimeType_operator {
like: String
contains: String
in: [String]
not_in: [[String]]
all: [[[String]]]
not_in: [String]
all: [String]
exists: Boolean
}
@@ -516,23 +526,11 @@ input Media_id_operator {
like: String
contains: String
in: [String]
not_in: [[String]]
all: [[[String]]]
not_in: [String]
all: [String]
exists: Boolean
}
input Media_where_or {
updatedAt: Media_updatedAt_operator
createdAt: Media_createdAt_operator
url: Media_url_operator
filename: Media_filename_operator
mimeType: Media_mimeType_operator
filesize: Media_filesize_operator
width: Media_width_operator
height: Media_height_operator
id: Media_id_operator
}
input Media_where_and {
updatedAt: Media_updatedAt_operator
createdAt: Media_createdAt_operator
@@ -543,6 +541,22 @@ input Media_where_and {
width: Media_width_operator
height: Media_height_operator
id: Media_id_operator
AND: [Media_where_and]
OR: [Media_where_or]
}
input Media_where_or {
updatedAt: Media_updatedAt_operator
createdAt: Media_createdAt_operator
url: Media_url_operator
filename: Media_filename_operator
mimeType: Media_mimeType_operator
filesize: Media_filesize_operator
width: Media_width_operator
height: Media_height_operator
id: Media_id_operator
AND: [Media_where_and]
OR: [Media_where_or]
}
type mediaDocAccess {
@@ -772,9 +786,11 @@ type User {
id: String
updatedAt: DateTime
createdAt: DateTime
email: EmailAddress
email: EmailAddress!
resetPasswordToken: String
resetPasswordExpiration: DateTime
salt: String
hash: String
loginAttempts: Float
lockUntil: DateTime
password: String!
@@ -783,21 +799,20 @@ type User {
"""
A field whose value conforms to the standard internet email address format as specified in HTML Spec: https://html.spec.whatwg.org/multipage/input.html#valid-e-mail-address.
"""
scalar EmailAddress
@specifiedBy(url: "https://html.spec.whatwg.org/multipage/input.html#valid-e-mail-address")
scalar EmailAddress @specifiedBy(url: "https://html.spec.whatwg.org/multipage/input.html#valid-e-mail-address")
type Users {
docs: [User]
totalDocs: Int
offset: Int
hasNextPage: Boolean
hasPrevPage: Boolean
limit: Int
totalPages: Int
nextPage: Int
offset: Int
page: Int
pagingCounter: Int
hasPrevPage: Boolean
hasNextPage: Boolean
prevPage: Int
nextPage: Int
totalDocs: Int
totalPages: Int
}
input User_where {
@@ -805,8 +820,8 @@ input User_where {
createdAt: User_createdAt_operator
email: User_email_operator
id: User_id_operator
OR: [User_where_or]
AND: [User_where_and]
OR: [User_where_or]
}
input User_updatedAt_operator {
@@ -837,9 +852,8 @@ input User_email_operator {
like: EmailAddress
contains: EmailAddress
in: [EmailAddress]
not_in: [[EmailAddress]]
all: [[[EmailAddress]]]
exists: Boolean
not_in: [EmailAddress]
all: [EmailAddress]
}
input User_id_operator {
@@ -848,23 +862,27 @@ input User_id_operator {
like: String
contains: String
in: [String]
not_in: [[String]]
all: [[[String]]]
not_in: [String]
all: [String]
exists: Boolean
}
input User_where_or {
updatedAt: User_updatedAt_operator
createdAt: User_createdAt_operator
email: User_email_operator
id: User_id_operator
}
input User_where_and {
updatedAt: User_updatedAt_operator
createdAt: User_createdAt_operator
email: User_email_operator
id: User_id_operator
AND: [User_where_and]
OR: [User_where_or]
}
input User_where_or {
updatedAt: User_updatedAt_operator
createdAt: User_createdAt_operator
email: User_email_operator
id: User_id_operator
AND: [User_where_and]
OR: [User_where_or]
}
type usersDocAccess {
@@ -1001,10 +1019,296 @@ type UsersUnlockDocAccess {
}
type usersMe {
collection: String
exp: Int
token: String
user: User
exp: Int
collection: String
}
type PayloadPreference {
id: String
user: PayloadPreference_User_Relationship!
key: String
value: JSON
updatedAt: DateTime
createdAt: DateTime
}
type PayloadPreference_User_Relationship {
relationTo: PayloadPreference_User_RelationTo
value: PayloadPreference_User
}
enum PayloadPreference_User_RelationTo {
users
}
union PayloadPreference_User = User
"""
The `JSON` scalar type represents JSON values as specified by [ECMA-404](http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-404.pdf).
"""
scalar JSON
type PayloadPreferences {
docs: [PayloadPreference]
hasNextPage: Boolean
hasPrevPage: Boolean
limit: Int
nextPage: Int
offset: Int
page: Int
pagingCounter: Int
prevPage: Int
totalDocs: Int
totalPages: Int
}
input PayloadPreference_where {
user: PayloadPreference_user_Relation
key: PayloadPreference_key_operator
value: PayloadPreference_value_operator
updatedAt: PayloadPreference_updatedAt_operator
createdAt: PayloadPreference_createdAt_operator
id: PayloadPreference_id_operator
AND: [PayloadPreference_where_and]
OR: [PayloadPreference_where_or]
}
input PayloadPreference_user_Relation {
relationTo: PayloadPreference_user_Relation_RelationTo
value: JSON
}
enum PayloadPreference_user_Relation_RelationTo {
users
}
input PayloadPreference_key_operator {
equals: String
not_equals: String
like: String
contains: String
in: [String]
not_in: [String]
all: [String]
exists: Boolean
}
input PayloadPreference_value_operator {
equals: JSON
not_equals: JSON
like: JSON
contains: JSON
within: JSON
intersects: JSON
exists: Boolean
}
input PayloadPreference_updatedAt_operator {
equals: DateTime
not_equals: DateTime
greater_than_equal: DateTime
greater_than: DateTime
less_than_equal: DateTime
less_than: DateTime
like: DateTime
exists: Boolean
}
input PayloadPreference_createdAt_operator {
equals: DateTime
not_equals: DateTime
greater_than_equal: DateTime
greater_than: DateTime
less_than_equal: DateTime
less_than: DateTime
like: DateTime
exists: Boolean
}
input PayloadPreference_id_operator {
equals: String
not_equals: String
like: String
contains: String
in: [String]
not_in: [String]
all: [String]
exists: Boolean
}
input PayloadPreference_where_and {
user: PayloadPreference_user_Relation
key: PayloadPreference_key_operator
value: PayloadPreference_value_operator
updatedAt: PayloadPreference_updatedAt_operator
createdAt: PayloadPreference_createdAt_operator
id: PayloadPreference_id_operator
AND: [PayloadPreference_where_and]
OR: [PayloadPreference_where_or]
}
input PayloadPreference_where_or {
user: PayloadPreference_user_Relation
key: PayloadPreference_key_operator
value: PayloadPreference_value_operator
updatedAt: PayloadPreference_updatedAt_operator
createdAt: PayloadPreference_createdAt_operator
id: PayloadPreference_id_operator
AND: [PayloadPreference_where_and]
OR: [PayloadPreference_where_or]
}
type payload_preferencesDocAccess {
fields: PayloadPreferencesDocAccessFields
create: PayloadPreferencesCreateDocAccess
read: PayloadPreferencesReadDocAccess
update: PayloadPreferencesUpdateDocAccess
delete: PayloadPreferencesDeleteDocAccess
}
type PayloadPreferencesDocAccessFields {
user: PayloadPreferencesDocAccessFields_user
key: PayloadPreferencesDocAccessFields_key
value: PayloadPreferencesDocAccessFields_value
updatedAt: PayloadPreferencesDocAccessFields_updatedAt
createdAt: PayloadPreferencesDocAccessFields_createdAt
}
type PayloadPreferencesDocAccessFields_user {
create: PayloadPreferencesDocAccessFields_user_Create
read: PayloadPreferencesDocAccessFields_user_Read
update: PayloadPreferencesDocAccessFields_user_Update
delete: PayloadPreferencesDocAccessFields_user_Delete
}
type PayloadPreferencesDocAccessFields_user_Create {
permission: Boolean!
}
type PayloadPreferencesDocAccessFields_user_Read {
permission: Boolean!
}
type PayloadPreferencesDocAccessFields_user_Update {
permission: Boolean!
}
type PayloadPreferencesDocAccessFields_user_Delete {
permission: Boolean!
}
type PayloadPreferencesDocAccessFields_key {
create: PayloadPreferencesDocAccessFields_key_Create
read: PayloadPreferencesDocAccessFields_key_Read
update: PayloadPreferencesDocAccessFields_key_Update
delete: PayloadPreferencesDocAccessFields_key_Delete
}
type PayloadPreferencesDocAccessFields_key_Create {
permission: Boolean!
}
type PayloadPreferencesDocAccessFields_key_Read {
permission: Boolean!
}
type PayloadPreferencesDocAccessFields_key_Update {
permission: Boolean!
}
type PayloadPreferencesDocAccessFields_key_Delete {
permission: Boolean!
}
type PayloadPreferencesDocAccessFields_value {
create: PayloadPreferencesDocAccessFields_value_Create
read: PayloadPreferencesDocAccessFields_value_Read
update: PayloadPreferencesDocAccessFields_value_Update
delete: PayloadPreferencesDocAccessFields_value_Delete
}
type PayloadPreferencesDocAccessFields_value_Create {
permission: Boolean!
}
type PayloadPreferencesDocAccessFields_value_Read {
permission: Boolean!
}
type PayloadPreferencesDocAccessFields_value_Update {
permission: Boolean!
}
type PayloadPreferencesDocAccessFields_value_Delete {
permission: Boolean!
}
type PayloadPreferencesDocAccessFields_updatedAt {
create: PayloadPreferencesDocAccessFields_updatedAt_Create
read: PayloadPreferencesDocAccessFields_updatedAt_Read
update: PayloadPreferencesDocAccessFields_updatedAt_Update
delete: PayloadPreferencesDocAccessFields_updatedAt_Delete
}
type PayloadPreferencesDocAccessFields_updatedAt_Create {
permission: Boolean!
}
type PayloadPreferencesDocAccessFields_updatedAt_Read {
permission: Boolean!
}
type PayloadPreferencesDocAccessFields_updatedAt_Update {
permission: Boolean!
}
type PayloadPreferencesDocAccessFields_updatedAt_Delete {
permission: Boolean!
}
type PayloadPreferencesDocAccessFields_createdAt {
create: PayloadPreferencesDocAccessFields_createdAt_Create
read: PayloadPreferencesDocAccessFields_createdAt_Read
update: PayloadPreferencesDocAccessFields_createdAt_Update
delete: PayloadPreferencesDocAccessFields_createdAt_Delete
}
type PayloadPreferencesDocAccessFields_createdAt_Create {
permission: Boolean!
}
type PayloadPreferencesDocAccessFields_createdAt_Read {
permission: Boolean!
}
type PayloadPreferencesDocAccessFields_createdAt_Update {
permission: Boolean!
}
type PayloadPreferencesDocAccessFields_createdAt_Delete {
permission: Boolean!
}
type PayloadPreferencesCreateDocAccess {
permission: Boolean!
where: JSONObject
}
type PayloadPreferencesReadDocAccess {
permission: Boolean!
where: JSONObject
}
type PayloadPreferencesUpdateDocAccess {
permission: Boolean!
where: JSONObject
}
type PayloadPreferencesDeleteDocAccess {
permission: Boolean!
where: JSONObject
}
type Menu {
@@ -1104,23 +1408,12 @@ type MenuUpdateDocAccess {
where: JSONObject
}
type Preference {
key: String!
value: JSON
createdAt: DateTime!
updatedAt: DateTime!
}
"""
The `JSON` scalar type represents JSON values as specified by [ECMA-404](http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-404.pdf).
"""
scalar JSON
type Access {
canAccessAdmin: Boolean!
posts: postsAccess
media: mediaAccess
users: usersAccess
payload_preferences: payload_preferencesAccess
menu: menuAccess
}
@@ -1607,6 +1900,157 @@ type UsersUnlockAccess {
where: JSONObject
}
type payload_preferencesAccess {
fields: PayloadPreferencesFields
create: PayloadPreferencesCreateAccess
read: PayloadPreferencesReadAccess
update: PayloadPreferencesUpdateAccess
delete: PayloadPreferencesDeleteAccess
}
type PayloadPreferencesFields {
user: PayloadPreferencesFields_user
key: PayloadPreferencesFields_key
value: PayloadPreferencesFields_value
updatedAt: PayloadPreferencesFields_updatedAt
createdAt: PayloadPreferencesFields_createdAt
}
type PayloadPreferencesFields_user {
create: PayloadPreferencesFields_user_Create
read: PayloadPreferencesFields_user_Read
update: PayloadPreferencesFields_user_Update
delete: PayloadPreferencesFields_user_Delete
}
type PayloadPreferencesFields_user_Create {
permission: Boolean!
}
type PayloadPreferencesFields_user_Read {
permission: Boolean!
}
type PayloadPreferencesFields_user_Update {
permission: Boolean!
}
type PayloadPreferencesFields_user_Delete {
permission: Boolean!
}
type PayloadPreferencesFields_key {
create: PayloadPreferencesFields_key_Create
read: PayloadPreferencesFields_key_Read
update: PayloadPreferencesFields_key_Update
delete: PayloadPreferencesFields_key_Delete
}
type PayloadPreferencesFields_key_Create {
permission: Boolean!
}
type PayloadPreferencesFields_key_Read {
permission: Boolean!
}
type PayloadPreferencesFields_key_Update {
permission: Boolean!
}
type PayloadPreferencesFields_key_Delete {
permission: Boolean!
}
type PayloadPreferencesFields_value {
create: PayloadPreferencesFields_value_Create
read: PayloadPreferencesFields_value_Read
update: PayloadPreferencesFields_value_Update
delete: PayloadPreferencesFields_value_Delete
}
type PayloadPreferencesFields_value_Create {
permission: Boolean!
}
type PayloadPreferencesFields_value_Read {
permission: Boolean!
}
type PayloadPreferencesFields_value_Update {
permission: Boolean!
}
type PayloadPreferencesFields_value_Delete {
permission: Boolean!
}
type PayloadPreferencesFields_updatedAt {
create: PayloadPreferencesFields_updatedAt_Create
read: PayloadPreferencesFields_updatedAt_Read
update: PayloadPreferencesFields_updatedAt_Update
delete: PayloadPreferencesFields_updatedAt_Delete
}
type PayloadPreferencesFields_updatedAt_Create {
permission: Boolean!
}
type PayloadPreferencesFields_updatedAt_Read {
permission: Boolean!
}
type PayloadPreferencesFields_updatedAt_Update {
permission: Boolean!
}
type PayloadPreferencesFields_updatedAt_Delete {
permission: Boolean!
}
type PayloadPreferencesFields_createdAt {
create: PayloadPreferencesFields_createdAt_Create
read: PayloadPreferencesFields_createdAt_Read
update: PayloadPreferencesFields_createdAt_Update
delete: PayloadPreferencesFields_createdAt_Delete
}
type PayloadPreferencesFields_createdAt_Create {
permission: Boolean!
}
type PayloadPreferencesFields_createdAt_Read {
permission: Boolean!
}
type PayloadPreferencesFields_createdAt_Update {
permission: Boolean!
}
type PayloadPreferencesFields_createdAt_Delete {
permission: Boolean!
}
type PayloadPreferencesCreateAccess {
permission: Boolean!
where: JSONObject
}
type PayloadPreferencesReadAccess {
permission: Boolean!
where: JSONObject
}
type PayloadPreferencesUpdateAccess {
permission: Boolean!
where: JSONObject
}
type PayloadPreferencesDeleteAccess {
permission: Boolean!
where: JSONObject
}
type menuAccess {
fields: MenuFields
read: MenuReadAccess
@@ -1700,29 +2144,25 @@ type MenuUpdateAccess {
type Mutation {
createPost(data: mutationPostInput!, draft: Boolean): Post
updatePost(id: String!, data: mutationPostUpdateInput!, draft: Boolean, autosave: Boolean): Post
updatePost(id: String!, autosave: Boolean, data: mutationPostUpdateInput!, draft: Boolean): Post
deletePost(id: String!): Post
createMedia(data: mutationMediaInput!, draft: Boolean): Media
updateMedia(
id: String!
data: mutationMediaUpdateInput!
draft: Boolean
autosave: Boolean
): Media
updateMedia(id: String!, autosave: Boolean, data: mutationMediaUpdateInput!, draft: Boolean): Media
deleteMedia(id: String!): Media
createUser(data: mutationUserInput!, draft: Boolean): User
updateUser(id: String!, data: mutationUserUpdateInput!, draft: Boolean, autosave: Boolean): User
updateUser(id: String!, autosave: Boolean, data: mutationUserUpdateInput!, draft: Boolean): User
deleteUser(id: String!): User
refreshTokenUser(token: String): usersRefreshedUser
logoutUser: String
unlockUser(email: String!): Boolean!
loginUser(email: String, password: String): usersLoginResult
forgotPasswordUser(email: String!, disableEmail: Boolean, expiration: Int): Boolean!
resetPasswordUser(token: String, password: String): usersResetPassword
forgotPasswordUser(disableEmail: Boolean, email: String!, expiration: Int): Boolean!
resetPasswordUser(password: String, token: String): usersResetPassword
verifyEmailUser(token: String): Boolean
createPayloadPreference(data: mutationPayloadPreferenceInput!, draft: Boolean): PayloadPreference
updatePayloadPreference(id: String!, autosave: Boolean, data: mutationPayloadPreferenceUpdateInput!, draft: Boolean): PayloadPreference
deletePayloadPreference(id: String!): PayloadPreference
updateMenu(data: mutationMenuInput!, draft: Boolean): Menu
updatePreference(key: String!, value: JSON): Preference
deletePreference(key: String!): Preference
}
input mutationPostInput {
@@ -1764,9 +2204,11 @@ input mutationMediaUpdateInput {
input mutationUserInput {
updatedAt: String
createdAt: String
email: String
email: String!
resetPasswordToken: String
resetPasswordExpiration: String
salt: String
hash: String
loginAttempts: Float
lockUntil: String
password: String!
@@ -1778,15 +2220,17 @@ input mutationUserUpdateInput {
email: String
resetPasswordToken: String
resetPasswordExpiration: String
salt: String
hash: String
loginAttempts: Float
lockUntil: String
password: String
}
type usersRefreshedUser {
user: usersJWT
refreshedToken: String
exp: Int
refreshedToken: String
user: usersJWT
}
type usersJWT {
@@ -1795,9 +2239,9 @@ type usersJWT {
}
type usersLoginResult {
exp: Int
token: String
user: User
exp: Int
}
type usersResetPassword {
@@ -1805,6 +2249,40 @@ type usersResetPassword {
user: User
}
input mutationPayloadPreferenceInput {
user: PayloadPreference_UserRelationshipInput
key: String
value: JSON
updatedAt: String
createdAt: String
}
input PayloadPreference_UserRelationshipInput {
relationTo: PayloadPreference_UserRelationshipInputRelationTo
value: JSON
}
enum PayloadPreference_UserRelationshipInputRelationTo {
users
}
input mutationPayloadPreferenceUpdateInput {
user: PayloadPreferenceUpdate_UserRelationshipInput
key: String
value: JSON
updatedAt: String
createdAt: String
}
input PayloadPreferenceUpdate_UserRelationshipInput {
relationTo: PayloadPreferenceUpdate_UserRelationshipInputRelationTo
value: JSON
}
enum PayloadPreferenceUpdate_UserRelationshipInputRelationTo {
users
}
input mutationMenuInput {
globalText: String
updatedAt: String

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,35 +1,17 @@
type Query {
Collection1(id: String!, draft: Boolean): Collection1
Collection1s(
where: Collection1_where
draft: Boolean
page: Int
limit: Int
sort: String
): Collection1s
Collection1s(draft: Boolean, where: Collection1_where, limit: Int, page: Int, sort: String): Collection1s
docAccessCollection1(id: String!): collection1DocAccess
Collection2(id: String!, draft: Boolean): Collection2
Collection2s(
where: Collection2_where
draft: Boolean
page: Int
limit: Int
sort: String
): Collection2s
Collection2s(draft: Boolean, where: Collection2_where, limit: Int, page: Int, sort: String): Collection2s
docAccessCollection2(id: String!): collection2DocAccess
User(id: String!, draft: Boolean): User
Users(where: User_where, draft: Boolean, page: Int, limit: Int, sort: String): Users
Users(draft: Boolean, where: User_where, limit: Int, page: Int, sort: String): Users
docAccessUser(id: String!): usersDocAccess
meUser: usersMe
initializedUser: Boolean
PayloadPreference(id: String!, draft: Boolean): PayloadPreference
PayloadPreferences(
where: PayloadPreference_where
draft: Boolean
page: Int
limit: Int
sort: String
): PayloadPreferences
PayloadPreferences(draft: Boolean, where: PayloadPreference_where, limit: Int, page: Int, sort: String): PayloadPreferences
docAccessPayloadPreference(id: String!): payload_preferencesDocAccess
Access: Access
}
@@ -75,16 +57,16 @@ scalar DateTime
type Collection1s {
docs: [Collection1]
totalDocs: Int
offset: Int
hasNextPage: Boolean
hasPrevPage: Boolean
limit: Int
totalPages: Int
nextPage: Int
offset: Int
page: Int
pagingCounter: Int
hasPrevPage: Boolean
hasNextPage: Boolean
prevPage: Int
nextPage: Int
totalDocs: Int
totalPages: Int
}
input Collection1_where {
@@ -96,8 +78,8 @@ input Collection1_where {
updatedAt: Collection1_updatedAt_operator
createdAt: Collection1_createdAt_operator
id: Collection1_id_operator
OR: [Collection1_where_or]
AND: [Collection1_where_and]
OR: [Collection1_where_or]
}
input Collection1_testing_operator {
@@ -186,17 +168,6 @@ input Collection1_id_operator {
exists: Boolean
}
input Collection1_where_or {
testing: Collection1_testing_operator
title: Collection1_title_operator
meta__title: Collection1_meta__title_operator
meta__description: Collection1_meta__description_operator
meta__id: Collection1_meta__id_operator
updatedAt: Collection1_updatedAt_operator
createdAt: Collection1_createdAt_operator
id: Collection1_id_operator
}
input Collection1_where_and {
testing: Collection1_testing_operator
title: Collection1_title_operator
@@ -206,6 +177,21 @@ input Collection1_where_and {
updatedAt: Collection1_updatedAt_operator
createdAt: Collection1_createdAt_operator
id: Collection1_id_operator
AND: [Collection1_where_and]
OR: [Collection1_where_or]
}
input Collection1_where_or {
testing: Collection1_testing_operator
title: Collection1_title_operator
meta__title: Collection1_meta__title_operator
meta__description: Collection1_meta__description_operator
meta__id: Collection1_meta__id_operator
updatedAt: Collection1_updatedAt_operator
createdAt: Collection1_createdAt_operator
id: Collection1_id_operator
AND: [Collection1_where_and]
OR: [Collection1_where_or]
}
type collection1DocAccess {
@@ -483,16 +469,16 @@ type Collection2_NestedGroup {
type Collection2s {
docs: [Collection2]
totalDocs: Int
offset: Int
hasNextPage: Boolean
hasPrevPage: Boolean
limit: Int
totalPages: Int
nextPage: Int
offset: Int
page: Int
pagingCounter: Int
hasPrevPage: Boolean
hasNextPage: Boolean
prevPage: Int
nextPage: Int
totalDocs: Int
totalPages: Int
}
input Collection2_where {
@@ -504,8 +490,8 @@ input Collection2_where {
updatedAt: Collection2_updatedAt_operator
createdAt: Collection2_createdAt_operator
id: Collection2_id_operator
OR: [Collection2_where_or]
AND: [Collection2_where_and]
OR: [Collection2_where_or]
}
input Collection2_meta__title_operator {
@@ -596,17 +582,6 @@ input Collection2_id_operator {
exists: Boolean
}
input Collection2_where_or {
meta__title: Collection2_meta__title_operator
meta__description: Collection2_meta__description_operator
meta__id: Collection2_meta__id_operator
nestedGroup__meta__title: Collection2_nestedGroup__meta__title_operator
nestedGroup__meta__description: Collection2_nestedGroup__meta__description_operator
updatedAt: Collection2_updatedAt_operator
createdAt: Collection2_createdAt_operator
id: Collection2_id_operator
}
input Collection2_where_and {
meta__title: Collection2_meta__title_operator
meta__description: Collection2_meta__description_operator
@@ -616,6 +591,21 @@ input Collection2_where_and {
updatedAt: Collection2_updatedAt_operator
createdAt: Collection2_createdAt_operator
id: Collection2_id_operator
AND: [Collection2_where_and]
OR: [Collection2_where_or]
}
input Collection2_where_or {
meta__title: Collection2_meta__title_operator
meta__description: Collection2_meta__description_operator
meta__id: Collection2_meta__id_operator
nestedGroup__meta__title: Collection2_nestedGroup__meta__title_operator
nestedGroup__meta__description: Collection2_nestedGroup__meta__description_operator
updatedAt: Collection2_updatedAt_operator
createdAt: Collection2_createdAt_operator
id: Collection2_id_operator
AND: [Collection2_where_and]
OR: [Collection2_where_or]
}
type collection2DocAccess {
@@ -894,21 +884,20 @@ type User {
"""
A field whose value conforms to the standard internet email address format as specified in HTML Spec: https://html.spec.whatwg.org/multipage/input.html#valid-e-mail-address.
"""
scalar EmailAddress
@specifiedBy(url: "https://html.spec.whatwg.org/multipage/input.html#valid-e-mail-address")
scalar EmailAddress @specifiedBy(url: "https://html.spec.whatwg.org/multipage/input.html#valid-e-mail-address")
type Users {
docs: [User]
totalDocs: Int
offset: Int
hasNextPage: Boolean
hasPrevPage: Boolean
limit: Int
totalPages: Int
nextPage: Int
offset: Int
page: Int
pagingCounter: Int
hasPrevPage: Boolean
hasNextPage: Boolean
prevPage: Int
nextPage: Int
totalDocs: Int
totalPages: Int
}
input User_where {
@@ -916,8 +905,8 @@ input User_where {
createdAt: User_createdAt_operator
email: User_email_operator
id: User_id_operator
OR: [User_where_or]
AND: [User_where_and]
OR: [User_where_or]
}
input User_updatedAt_operator {
@@ -963,18 +952,22 @@ input User_id_operator {
exists: Boolean
}
input User_where_or {
updatedAt: User_updatedAt_operator
createdAt: User_createdAt_operator
email: User_email_operator
id: User_id_operator
}
input User_where_and {
updatedAt: User_updatedAt_operator
createdAt: User_createdAt_operator
email: User_email_operator
id: User_id_operator
AND: [User_where_and]
OR: [User_where_or]
}
input User_where_or {
updatedAt: User_updatedAt_operator
createdAt: User_createdAt_operator
email: User_email_operator
id: User_id_operator
AND: [User_where_and]
OR: [User_where_or]
}
type usersDocAccess {
@@ -1111,10 +1104,10 @@ type UsersUnlockDocAccess {
}
type usersMe {
collection: String
exp: Int
token: String
user: User
exp: Int
collection: String
}
type PayloadPreference {
@@ -1144,16 +1137,16 @@ scalar JSON
type PayloadPreferences {
docs: [PayloadPreference]
totalDocs: Int
offset: Int
hasNextPage: Boolean
hasPrevPage: Boolean
limit: Int
totalPages: Int
nextPage: Int
offset: Int
page: Int
pagingCounter: Int
hasPrevPage: Boolean
hasNextPage: Boolean
prevPage: Int
nextPage: Int
totalDocs: Int
totalPages: Int
}
input PayloadPreference_where {
@@ -1163,13 +1156,13 @@ input PayloadPreference_where {
updatedAt: PayloadPreference_updatedAt_operator
createdAt: PayloadPreference_createdAt_operator
id: PayloadPreference_id_operator
OR: [PayloadPreference_where_or]
AND: [PayloadPreference_where_and]
OR: [PayloadPreference_where_or]
}
input PayloadPreference_user_Relation {
relationTo: PayloadPreference_user_Relation_RelationTo
value: String
value: JSON
}
enum PayloadPreference_user_Relation_RelationTo {
@@ -1192,6 +1185,8 @@ input PayloadPreference_value_operator {
not_equals: JSON
like: JSON
contains: JSON
within: JSON
intersects: JSON
exists: Boolean
}
@@ -1228,15 +1223,6 @@ input PayloadPreference_id_operator {
exists: Boolean
}
input PayloadPreference_where_or {
user: PayloadPreference_user_Relation
key: PayloadPreference_key_operator
value: PayloadPreference_value_operator
updatedAt: PayloadPreference_updatedAt_operator
createdAt: PayloadPreference_createdAt_operator
id: PayloadPreference_id_operator
}
input PayloadPreference_where_and {
user: PayloadPreference_user_Relation
key: PayloadPreference_key_operator
@@ -1244,6 +1230,19 @@ input PayloadPreference_where_and {
updatedAt: PayloadPreference_updatedAt_operator
createdAt: PayloadPreference_createdAt_operator
id: PayloadPreference_id_operator
AND: [PayloadPreference_where_and]
OR: [PayloadPreference_where_or]
}
input PayloadPreference_where_or {
user: PayloadPreference_user_Relation
key: PayloadPreference_key_operator
value: PayloadPreference_value_operator
updatedAt: PayloadPreference_updatedAt_operator
createdAt: PayloadPreference_createdAt_operator
id: PayloadPreference_id_operator
AND: [PayloadPreference_where_and]
OR: [PayloadPreference_where_or]
}
type payload_preferencesDocAccess {
@@ -2201,38 +2200,23 @@ type PayloadPreferencesDeleteAccess {
type Mutation {
createCollection1(data: mutationCollection1Input!, draft: Boolean): Collection1
updateCollection1(
id: String!
data: mutationCollection1UpdateInput!
draft: Boolean
autosave: Boolean
): Collection1
updateCollection1(id: String!, autosave: Boolean, data: mutationCollection1UpdateInput!, draft: Boolean): Collection1
deleteCollection1(id: String!): Collection1
createCollection2(data: mutationCollection2Input!, draft: Boolean): Collection2
updateCollection2(
id: String!
data: mutationCollection2UpdateInput!
draft: Boolean
autosave: Boolean
): Collection2
updateCollection2(id: String!, autosave: Boolean, data: mutationCollection2UpdateInput!, draft: Boolean): Collection2
deleteCollection2(id: String!): Collection2
createUser(data: mutationUserInput!, draft: Boolean): User
updateUser(id: String!, data: mutationUserUpdateInput!, draft: Boolean, autosave: Boolean): User
updateUser(id: String!, autosave: Boolean, data: mutationUserUpdateInput!, draft: Boolean): User
deleteUser(id: String!): User
refreshTokenUser(token: String): usersRefreshedUser
logoutUser: String
unlockUser(email: String!): Boolean!
loginUser(email: String, password: String): usersLoginResult
forgotPasswordUser(email: String!, disableEmail: Boolean, expiration: Int): Boolean!
resetPasswordUser(token: String, password: String): usersResetPassword
forgotPasswordUser(disableEmail: Boolean, email: String!, expiration: Int): Boolean!
resetPasswordUser(password: String, token: String): usersResetPassword
verifyEmailUser(token: String): Boolean
createPayloadPreference(data: mutationPayloadPreferenceInput!, draft: Boolean): PayloadPreference
updatePayloadPreference(
id: String!
data: mutationPayloadPreferenceUpdateInput!
draft: Boolean
autosave: Boolean
): PayloadPreference
updatePayloadPreference(id: String!, autosave: Boolean, data: mutationPayloadPreferenceUpdateInput!, draft: Boolean): PayloadPreference
deletePayloadPreference(id: String!): PayloadPreference
}
@@ -2335,9 +2319,9 @@ input mutationUserUpdateInput {
}
type usersRefreshedUser {
user: usersJWT
refreshedToken: String
exp: Int
refreshedToken: String
user: usersJWT
}
type usersJWT {
@@ -2346,9 +2330,9 @@ type usersJWT {
}
type usersLoginResult {
exp: Int
token: String
user: User
exp: Int
}
type usersResetPassword {