View Source Mobilizon.GraphQL.Resolvers.Group (Mobilizon v4.1.0-alpha.1)
Handles the group-related GraphQL calls.
Summary
Functions
Create a new group. The creator is automatically added as admin
Delete an existing group
Find a group
Follow a group
Get a group
Join an existing group
Leave a existing group
Lists all groups
Unfollow a group
Update a group. The creator is automatically added as admin
Update a group follow
Functions
@spec create_group(any(), map(), Absinthe.Resolution.t()) :: {:ok, Mobilizon.Actors.Actor.t()} | {:error, String.t()}
Create a new group. The creator is automatically added as admin
@spec delete_group(any(), map(), Absinthe.Resolution.t()) :: {:ok, %{id: integer()}} | {:error, String.t()}
Delete an existing group
@spec find_events_for_group( Mobilizon.Actors.Actor.t(), map(), Absinthe.Resolution.t() | nil ) :: {:ok, Page.t(Event.t())}
@spec find_group( any(), %{:preferred_username => binary(), optional(any()) => any()}, Absinthe.Resolution.t() ) :: {:error, :group_not_found} | {:ok, Mobilizon.Actors.Actor.t()}
Find a group
@spec follow_group(any(), map(), Absinthe.Resolution.t()) :: {:ok, Mobilizon.Actors.Follower.t()} | {:error, String.t()}
Follow a group
@spec get_group(any(), map(), Absinthe.Resolution.t()) :: {:ok, Mobilizon.Actors.Actor.t()} | {:error, String.t()}
Get a group
@spec join_group(any(), map(), Absinthe.Resolution.t()) :: {:ok, Mobilizon.Actors.Member.t()} | {:error, String.t()}
Join an existing group
@spec leave_group(any(), map(), Absinthe.Resolution.t()) :: {:ok, Mobilizon.Actors.Member.t()} | {:error, String.t()}
Leave a existing group
@spec list_groups(any(), map(), Absinthe.Resolution.t()) :: {:ok, Page.t(Mobilizon.Actors.Actor.t())} | {:error, String.t()}
Lists all groups
@spec unfollow_group(any(), map(), Absinthe.Resolution.t()) :: {:ok, Mobilizon.Actors.Follower.t()} | {:error, String.t()}
Unfollow a group
@spec update_group(any(), map(), Absinthe.Resolution.t()) :: {:ok, Mobilizon.Actors.Actor.t()} | {:error, String.t()}
Update a group. The creator is automatically added as admin
@spec update_group_follow(any(), map(), Absinthe.Resolution.t()) :: {:ok, Mobilizon.Actors.Member.t()} | {:error, String.t()}
Update a group follow