AWS AppSync, фильтрация списков по @connection
Я создаю приложение для управления проектами с помощью AWS-Amplify. У меня есть тип верхнего уровня, известный как Компания:
type Company
@model
@auth(rules: [
{
allow: groups,
groups: ["SUPERUSER", "ADMIN"],
queries: [get, list],
mutations: [create, update, delete]
},
{
allow: groups,
groups: ["MANAGER, CONTRACTOR, CONSULTANT"],
queries: [get],
mutations: null
}
]
)
{
id: ID!
title: String!
projects: [Project] @connection(name: "CompanyProjects")
}
Содержит список проектов другого типа:
type Project
@model
@auth(rules: [
{
allow: owner
},
{
allow: groups,
groups: ["SUPERUSER", "ADMIN", "MANAGER"],
queries: [get, list],
mutations: [create, update]
},
{
allow: groups,
groups: ["CONTRACTOR", "CONSULTANT"],
queries: [get, list],
mutations: [update]
},
]
)
{
id: ID!
company: Company! @connection(name: "CompanyProjects")
createdOn: String!
title: String!
status: CompletionStatus!
description: String
documents: [Document] @connection(name: "ProjectDocuments")
}
Как правильно использовать фильтрацию во время запроса, например listProjects
чтобы текущий пользователь получал только проекты, связанные с компанией, частью которой он является?