/// <inheritdoc />
 public override Task AddXpAsync(HashId server, uint role, short amount) =>
 ExecuteRequestAsync(new RestRequest($"servers/{server}/roles/{role}/xp", Method.Post)
                     .AddJsonBody(new
 {
     amount
 })
                     );
Exemplo n.º 2
0
    public Topic(
        [JsonProperty(Required = Required.Always)]
        uint id,

        [JsonProperty(Required = Required.Always)]
        Guid channelId,

        [JsonProperty(Required = Required.Always)]
        HashId serverId,

        [JsonProperty(Required = Required.Always)]
        string title,

        [JsonProperty(Required = Required.Always)]
        string content,

        [JsonProperty(Required = Required.Always)]
        HashId createdBy,

        [JsonProperty(Required = Required.Always)]
        DateTime createdAt,

        [JsonProperty(Required = Required.Always)]
        DateTime bumpedAt,

        [JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
        Guid?createdByWebhookId = null,

        [JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
        DateTime?updatedAt = null
        ) : base(id, channelId, serverId, title, createdBy, createdAt, bumpedAt, createdByWebhookId, updatedAt) =>
Exemplo n.º 3
0
    public CalendarRsvp(
        [JsonProperty(Required = Required.Always)]
        uint calendarEventId,

        [JsonProperty(Required = Required.Always)]
        HashId userId,

        [JsonProperty(Required = Required.Always)]
        Guid channelId,

        [JsonProperty(Required = Required.Always)]
        HashId serverId,

        [JsonProperty(Required = Required.Always)]
        CalendarRsvpStatus status,

        [JsonProperty(Required = Required.Always)]
        HashId createdBy,

        [JsonProperty(Required = Required.Always)]
        DateTime createdAt,

        [JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
        HashId?updatedBy = null,

        [JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
        DateTime?updatedAt = null
        ) =>
    (UserId, CalendarEventId, ChannelId, ServerId, Status, CreatedBy, CreatedAt, UpdatedBy, UpdatedAt) = (userId, calendarEventId, channelId, serverId, status, createdBy, createdAt, updatedBy, updatedAt);
 /// <inheritdoc />
 public override Task <long> AddXpAsync(HashId server, HashId member, short amount) =>
 GetResponseProperty <long>(new RestRequest($"servers/{server}/members/{member}/xp", Method.Post)
                            .AddJsonBody(new
 {
     amount
 })
                            , "total");
Exemplo n.º 5
0
    public Webhook(
        [JsonProperty(Required = Required.Always)]
        Guid id,

        [JsonProperty(Required = Required.Always)]
        string name,

        [JsonProperty(Required = Required.Always)]
        Guid channelId,

        [JsonProperty(Required = Required.Always)]
        HashId serverId,

        [JsonProperty(Required = Required.Always)]
        DateTime createdAt,

        [JsonProperty(Required = Required.Always)]
        HashId createdBy,

        [JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
        string?token = null,

        [JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
        DateTime?deletedAt = null
        ) =>
    (Id, Name, Token, ChannelId, ServerId, CreatedAt, CreatedBy, DeletedAt) = (id, name, token, channelId, serverId, createdAt, createdBy, deletedAt);
 /// <inheritdoc />
 public override Task <MemberBan> AddMemberBanAsync(HashId server, HashId member, string?reason = null) =>
 GetResponseProperty <MemberBan>(new RestRequest($"servers/{server}/bans/{member}", Method.Post)
                                 .AddJsonBody(new
 {
     reason
 })
                                 , "serverMemberBan");
Exemplo n.º 7
0
    public TopicSummary(
        [JsonProperty(Required = Required.Always)]
        uint id,

        [JsonProperty(Required = Required.Always)]
        Guid channelId,

        [JsonProperty(Required = Required.Always)]
        HashId serverId,

        [JsonProperty(Required = Required.Always)]
        string title,

        [JsonProperty(Required = Required.Always)]
        HashId createdBy,

        [JsonProperty(Required = Required.Always)]
        DateTime createdAt,

        [JsonProperty(Required = Required.Always)]
        DateTime bumpedAt,

        [JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
        Guid?createdByWebhookId = null,

        [JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
        DateTime?updatedAt = null,

        [JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
        Mentions?mentions = null
        ) : base(id, channelId, serverId, title, createdBy, createdAt, updatedAt) =>
        (Mentions, BumpedAt, CreatedByWebhook) = (mentions, bumpedAt, createdByWebhookId);
Exemplo n.º 8
0
    public Doc(
        [JsonProperty(Required = Required.Always)]
        uint id,

        [JsonProperty(Required = Required.Always)]
        Guid channelId,

        [JsonProperty(Required = Required.Always)]
        HashId serverId,

        [JsonProperty(Required = Required.Always)]
        string title,

        [JsonProperty(Required = Required.Always)]
        string content,

        [JsonProperty(Required = Required.Always)]
        HashId createdBy,

        [JsonProperty(Required = Required.Always)]
        DateTime createdAt,

        [JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
        HashId?updatedBy = null,

        [JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
        DateTime?updatedAt = null,

        [JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
        Mentions?mentions = null
        ) : base(id, channelId, serverId, title, createdBy, createdAt, updatedAt) =>
        (Content, Mentions, UpdatedBy) = (content, mentions, updatedBy);
Exemplo n.º 9
0
    public ChannelEvent(
        [JsonProperty(Required = Required.Always)]
        ServerChannel channel,

        [JsonProperty(Required = Required.Always)]
        HashId serverId
        ) =>
    (ServerId, Channel) = (serverId, channel);
Exemplo n.º 10
0
    /// <summary>
    /// Initializes a new instance of <see cref="MemberSummary{T}" />.
    /// </summary>
    /// <param name="user"><see cref="Users.User">The user</see> who is present in <see cref="Server">the server</see></param>
    /// <param name="roleIds">The list of roles user holds</param>
    /// <param name="serverId">The identifier of the <see cref="Server">server</see> where the <see cref="Member">member</see> is</param>
    /// <returns>New <see cref="MemberSummary{T}" /> JSON instance</returns>
    /// <seealso cref="MemberSummary{T}" />
    public MemberSummary(
        T user,

        IList <uint> roleIds,

        HashId serverId
        ) =>
    (User, RoleIds, ServerId) = (user, roleIds, serverId);
Exemplo n.º 11
0
    public MemberJoinedEvent(
        [JsonProperty(Required = Required.Always)]
        HashId serverId,

        [JsonProperty(Required = Required.Always)]
        Member member
        ) =>
    (ServerId, Member) = (serverId, member);
Exemplo n.º 12
0
        public MemberUpdate(
            [JsonProperty(Required = Required.Always)]
            HashId id,

            [JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
            string?nickname = null
            ) =>
        (Id, Nickname) = (id, nickname);
Exemplo n.º 13
0
    public ListItemEvent(
        [JsonProperty(Required = Required.Always)]
        ListItem listItem,

        [JsonProperty(Required = Required.Always)]
        HashId serverId
        ) =>
    (ServerId, ListItem) = (serverId, listItem);
    public CalendarRsvpManyEvent(
        [JsonProperty(Required = Required.Always)]
        IList <CalendarRsvp> calendarEventRsvps,

        [JsonProperty(Required = Required.Always)]
        HashId serverId
        ) =>
    (ServerId, CalendarRsvps) = (serverId, calendarEventRsvps);
Exemplo n.º 15
0
    public CalendarRsvpEvent(
        [JsonProperty(Required = Required.Always)]
        CalendarRsvp calendarEventRsvp,

        [JsonProperty(Required = Required.Always)]
        HashId serverId
        ) =>
    (ServerId, CalendarRsvp) = (serverId, calendarEventRsvp);
    /// <inheritdoc />
    public override async Task <Member> GetMemberAsync(HashId server, HashId member)
    {
        var response = await GetResponseProperty <JObject>(new RestRequest($"servers/{server}/members/{member}", Method.Get), "member").ConfigureAwait(false);

        response.Add("serverId", JValue.CreateString(server.ToString()));

        return(response.ToObject <Member>(GuildedSerializer) !);
    }
Exemplo n.º 17
0
    public CalendarEventEvent(
        [JsonProperty(Required = Required.Always)]
        CalendarEvent calendarEvent,

        [JsonProperty(Required = Required.Always)]
        HashId serverId
        ) =>
    (ServerId, CalendarEvent) = (serverId, calendarEvent);
Exemplo n.º 18
0
    public TopicEvent(
        [JsonProperty(Required = Required.Always)]
        Topic forumTopic,

        [JsonProperty(Required = Required.Always)]
        HashId serverId
        ) =>
    (ServerId, Topic) = (serverId, forumTopic);
Exemplo n.º 19
0
    public DocEvent(
        [JsonProperty(Required = Required.Always)]
        Doc doc,

        [JsonProperty(Required = Required.Always)]
        HashId serverId
        ) =>
    (ServerId, Doc) = (serverId, doc);
Exemplo n.º 20
0
    public CalendarCancellation(
        [JsonProperty(Required = Required.Always)]
        string description,

        [JsonProperty(Required = Required.Always)]
        HashId createdBy
        ) =>
    (Description, CreatedBy) = (description, createdBy);
Exemplo n.º 21
0
    public MemberUpdatedEvent(
        [JsonProperty(Required = Required.Always)]
        HashId serverId,

        [JsonProperty(Required = Required.Always)]
        MemberUpdate userInfo
        ) =>
    (ServerId, UserInfo) = (serverId, userInfo);
Exemplo n.º 22
0
    public MemberBanEvent(
        [JsonProperty(Required = Required.Always)]
        HashId serverId,

        [JsonProperty(Required = Required.Always)]
        MemberBan serverMemberBan
        ) =>
    (ServerId, MemberBan) = (serverId, serverMemberBan);
Exemplo n.º 23
0
    public RolesUpdatedEvent(
        [JsonProperty(Required = Required.Always)]
        HashId serverId,

        [JsonProperty(Required = Required.Always)]
        IList <RolesUpdated> memberRoleIds
        ) =>
    (ServerId, MemberRoleIds) = (serverId, memberRoleIds);
Exemplo n.º 24
0
        public RolesUpdated(
            [JsonProperty(Required = Required.Always)]
            HashId userId,

            [JsonProperty(Required = Required.Always)]
            IList <uint> roleIds
            ) =>
        (UserId, RoleIds) = (userId, roleIds);
Exemplo n.º 25
0
    public WebhookEvent(
        [JsonProperty(Required = Required.Always)]
        HashId serverId,

        [JsonProperty(Required = Required.Always)]
        Webhook webhook
        ) =>
    (ServerId, Webhook) = (serverId, webhook);
    /// <inheritdoc />
    public override async Task <IList <MemberSummary> > GetMembersAsync(HashId server)
    {
        var response = await GetResponseProperty <IList <JObject> >(new RestRequest($"servers/{server}/members", Method.Get), "members").ConfigureAwait(false);

        return(response.Select(x =>
        {
            // Add serverId property to them
            x.Add("serverId", JValue.CreateString(server.ToString()));
            return x.ToObject <MemberSummary>(GuildedSerializer) !;
        }).ToList());
    }
Exemplo n.º 27
0
    public MemberBan(
        [JsonProperty(Required = Required.Always)]
        UserSummary user,

        [JsonProperty(Required = Required.Always)]
        HashId createdBy,

        [JsonProperty(Required = Required.Always)]
        DateTime createdAt,

        [JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
        string?reason = null
        ) =>
    (User, CreatedBy, CreatedAt, Reason) = (user, createdBy, createdAt, reason);
Exemplo n.º 28
0
    public ListItemNoteSummary(
        [JsonProperty(Required = Required.Always)]
        HashId createdBy,

        [JsonProperty(Required = Required.Always)]
        DateTime createdAt,

        [JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
        HashId?updatedBy = null,

        [JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
        DateTime?updatedAt = null
        ) =>
    (CreatedAt, CreatedBy, UpdatedAt, UpdatedBy) = (createdAt, createdBy, updatedAt, updatedBy);
Exemplo n.º 29
0
        public EventReaction(
            [JsonProperty(Required = Required.Always)]
            Emote emote,

            [JsonProperty(Required = Required.Always)]
            HashId createdBy,

            [JsonProperty(Required = Required.Always)]
            Guid channelId,

            [JsonProperty(Required = Required.Always)]
            Guid messageId
            ) =>
        (Emote, CreatedBy, ChannelId, MessageId) = (emote, createdBy, channelId, messageId);
Exemplo n.º 30
0
    public MemberRemovedEvent(
        [JsonProperty(Required = Required.Always)]
        HashId serverId,

        [JsonProperty(Required = Required.Always)]
        HashId userId,

        [JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
        bool isKick = false,

        [JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
        bool isBan = false
        ) =>
    (ServerId, UserId, IsKick, IsBan) = (serverId, userId, isKick, isBan);