summary refs log tree commit diff
path: root/extra/admin-api/Spacebar.Db/Models/Channel.cs
blob: c321c88ff8f867ca3f42fef2e1d7d99f7c648982 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using Microsoft.EntityFrameworkCore;

namespace Spacebar.Db.Models;

[Table("channels")]
public partial class Channel
{
    [Key]
    [Column("id", TypeName = "character varying")]
    public string Id { get; set; } = null!;

    [Column("created_at", TypeName = "timestamp without time zone")]
    public DateTime CreatedAt { get; set; }

    [Column("name", TypeName = "character varying")]
    public string? Name { get; set; }

    [Column("icon")]
    public string? Icon { get; set; }

    [Column("type")]
    public int Type { get; set; }

    [Column("last_message_id", TypeName = "character varying")]
    public string? LastMessageId { get; set; }

    [Column("guild_id", TypeName = "character varying")]
    public string? GuildId { get; set; }

    [Column("parent_id", TypeName = "character varying")]
    public string? ParentId { get; set; }

    [Column("owner_id", TypeName = "character varying")]
    public string? OwnerId { get; set; }

    [Column("last_pin_timestamp")]
    public int? LastPinTimestamp { get; set; }

    [Column("default_auto_archive_duration")]
    public int? DefaultAutoArchiveDuration { get; set; }

    [Column("permission_overwrites")]
    public string? PermissionOverwrites { get; set; }

    [Column("video_quality_mode")]
    public int? VideoQualityMode { get; set; }

    [Column("bitrate")]
    public int? Bitrate { get; set; }

    [Column("user_limit")]
    public int? UserLimit { get; set; }

    [Column("nsfw")]
    public bool Nsfw { get; set; }

    [Column("rate_limit_per_user")]
    public int? RateLimitPerUser { get; set; }

    [Column("topic", TypeName = "character varying")]
    public string? Topic { get; set; }

    [Column("retention_policy_id", TypeName = "character varying")]
    public string? RetentionPolicyId { get; set; }

    [Column("flags")]
    public int Flags { get; set; }

    [Column("default_thread_rate_limit_per_user")]
    public int? DefaultThreadRateLimitPerUser { get; set; }

    [InverseProperty("Channel")]
    public virtual ICollection<CloudAttachment> CloudAttachments { get; set; } = new List<CloudAttachment>();

    [ForeignKey("GuildId")]
    [InverseProperty("Channels")]
    public virtual Guild? Guild { get; set; }

    [InverseProperty("AfkChannel")]
    public virtual ICollection<Guild> GuildAfkChannels { get; set; } = new List<Guild>();

    [InverseProperty("PublicUpdatesChannel")]
    public virtual ICollection<Guild> GuildPublicUpdatesChannels { get; set; } = new List<Guild>();

    [InverseProperty("RulesChannel")]
    public virtual ICollection<Guild> GuildRulesChannels { get; set; } = new List<Guild>();

    [InverseProperty("SystemChannel")]
    public virtual ICollection<Guild> GuildSystemChannels { get; set; } = new List<Guild>();

    [InverseProperty("WidgetChannel")]
    public virtual ICollection<Guild> GuildWidgetChannels { get; set; } = new List<Guild>();

    [InverseProperty("Parent")]
    public virtual ICollection<Channel> InverseParent { get; set; } = new List<Channel>();

    [InverseProperty("Channel")]
    public virtual ICollection<Invite> Invites { get; set; } = new List<Invite>();

    [InverseProperty("Channel")]
    public virtual ICollection<Message> Messages { get; set; } = new List<Message>();

    [ForeignKey("OwnerId")]
    [InverseProperty("Channels")]
    public virtual User? Owner { get; set; }

    [ForeignKey("ParentId")]
    [InverseProperty("InverseParent")]
    public virtual Channel? Parent { get; set; }

    [InverseProperty("Channel")]
    public virtual ICollection<ReadState> ReadStates { get; set; } = new List<ReadState>();

    [InverseProperty("Channel")]
    public virtual ICollection<Recipient> Recipients { get; set; } = new List<Recipient>();

    [InverseProperty("Channel")]
    public virtual ICollection<Stream> Streams { get; set; } = new List<Stream>();

    [InverseProperty("Channel")]
    public virtual ICollection<VoiceState> VoiceStates { get; set; } = new List<VoiceState>();

    [InverseProperty("Channel")]
    public virtual ICollection<Webhook> WebhookChannels { get; set; } = new List<Webhook>();

    [InverseProperty("SourceChannel")]
    public virtual ICollection<Webhook> WebhookSourceChannels { get; set; } = new List<Webhook>();

    [ForeignKey("ChannelsId")]
    [InverseProperty("Channels")]
    public virtual ICollection<Message> MessagesNavigation { get; set; } = new List<Message>();
}