Я почти закончил пакет для NodeJS https://github.com/nodkz/graphql-compose-connection, который позволяет создавать типы соединений для типов graphql, построенных с помощью graphql-compose.
Этот пакет полностью соответствует Спецификации подключений релейного курсора (https://facebook.github.io/relay/graphql/connections.htm) с замечательными дополнениями: filter
arg (для фильтрации записей) и sort
arg (для сортировки записей по уникальным индексам).
Итак, у меня есть следующие вопросы об уникальности курсора:
1) Должен ли курсор быть уникальным среди разных типов?
2) Должен ли курсор быть уникальным среди одного соединения с разными аргументами?
Например. в UserConnection у меня есть фильтр arg. И я хочу отображать всех пользователей в первом списке и онлайн-пользователей во втором (2 списка одновременно на странице). В обоих списках может присутствовать один пользователь с таким же курсором.
3) Если Relay получит похожие курсоры в одном соединении, выдаст ли он ошибку?
4) Должен ли быть курсор в кодировке base64, или он может содержать строковый объект json?