// using System; using System.Collections.Generic; using DysonNetwork.Shared.Data; using DysonNetwork.Sphere; using DysonNetwork.Sphere.Chat; using DysonNetwork.Sphere.Developer; using DysonNetwork.Sphere.WebReader; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Infrastructure; using Microsoft.EntityFrameworkCore.Storage.ValueConversion; using NodaTime; using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; using NpgsqlTypes; #nullable disable namespace DysonNetwork.Sphere.Migrations { [DbContext(typeof(AppDatabase))] partial class AppDatabaseModelSnapshot : ModelSnapshot { protected override void BuildModel(ModelBuilder modelBuilder) { #pragma warning disable 612, 618 modelBuilder .HasAnnotation("ProductVersion", "9.0.3") .HasAnnotation("Relational:MaxIdentifierLength", 63); NpgsqlModelBuilderExtensions.HasPostgresExtension(modelBuilder, "postgis"); NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); modelBuilder.Entity("DysonNetwork.Sphere.Chat.ChatMember", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uuid") .HasColumnName("id"); b.Property("AccountId") .HasColumnType("uuid") .HasColumnName("account_id"); b.Property("BreakUntil") .HasColumnType("timestamp with time zone") .HasColumnName("break_until"); b.Property("ChatRoomId") .HasColumnType("uuid") .HasColumnName("chat_room_id"); b.Property("CreatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("created_at"); b.Property("DeletedAt") .HasColumnType("timestamp with time zone") .HasColumnName("deleted_at"); b.Property("IsBot") .HasColumnType("boolean") .HasColumnName("is_bot"); b.Property("JoinedAt") .HasColumnType("timestamp with time zone") .HasColumnName("joined_at"); b.Property("LastReadAt") .HasColumnType("timestamp with time zone") .HasColumnName("last_read_at"); b.Property("LeaveAt") .HasColumnType("timestamp with time zone") .HasColumnName("leave_at"); b.Property("Nick") .HasMaxLength(1024) .HasColumnType("character varying(1024)") .HasColumnName("nick"); b.Property("Notify") .HasColumnType("integer") .HasColumnName("notify"); b.Property("Role") .HasColumnType("integer") .HasColumnName("role"); b.Property("TimeoutCause") .HasColumnType("jsonb") .HasColumnName("timeout_cause"); b.Property("TimeoutUntil") .HasColumnType("timestamp with time zone") .HasColumnName("timeout_until"); b.Property("UpdatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("updated_at"); b.HasKey("Id") .HasName("pk_chat_members"); b.HasAlternateKey("ChatRoomId", "AccountId") .HasName("ak_chat_members_chat_room_id_account_id"); b.ToTable("chat_members", (string)null); }); modelBuilder.Entity("DysonNetwork.Sphere.Chat.ChatRoom", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uuid") .HasColumnName("id"); b.Property("Background") .HasColumnType("jsonb") .HasColumnName("background"); b.Property("BackgroundId") .HasMaxLength(32) .HasColumnType("character varying(32)") .HasColumnName("background_id"); b.Property("CreatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("created_at"); b.Property("DeletedAt") .HasColumnType("timestamp with time zone") .HasColumnName("deleted_at"); b.Property("Description") .HasMaxLength(4096) .HasColumnType("character varying(4096)") .HasColumnName("description"); b.Property("IsCommunity") .HasColumnType("boolean") .HasColumnName("is_community"); b.Property("IsPublic") .HasColumnType("boolean") .HasColumnName("is_public"); b.Property("Name") .HasMaxLength(1024) .HasColumnType("character varying(1024)") .HasColumnName("name"); b.Property("Picture") .HasColumnType("jsonb") .HasColumnName("picture"); b.Property("PictureId") .HasMaxLength(32) .HasColumnType("character varying(32)") .HasColumnName("picture_id"); b.Property("RealmId") .HasColumnType("uuid") .HasColumnName("realm_id"); b.Property("Type") .HasColumnType("integer") .HasColumnName("type"); b.Property("UpdatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("updated_at"); b.HasKey("Id") .HasName("pk_chat_rooms"); b.HasIndex("RealmId") .HasDatabaseName("ix_chat_rooms_realm_id"); b.ToTable("chat_rooms", (string)null); }); modelBuilder.Entity("DysonNetwork.Sphere.Chat.Message", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uuid") .HasColumnName("id"); b.Property>("Attachments") .IsRequired() .HasColumnType("jsonb") .HasColumnName("attachments"); b.Property("ChatRoomId") .HasColumnType("uuid") .HasColumnName("chat_room_id"); b.Property("Content") .HasMaxLength(4096) .HasColumnType("character varying(4096)") .HasColumnName("content"); b.Property("CreatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("created_at"); b.Property("DeletedAt") .HasColumnType("timestamp with time zone") .HasColumnName("deleted_at"); b.Property("EditedAt") .HasColumnType("timestamp with time zone") .HasColumnName("edited_at"); b.Property("ForwardedMessageId") .HasColumnType("uuid") .HasColumnName("forwarded_message_id"); b.Property>("MembersMentioned") .HasColumnType("jsonb") .HasColumnName("members_mentioned"); b.Property>("Meta") .HasColumnType("jsonb") .HasColumnName("meta"); b.Property("Nonce") .IsRequired() .HasMaxLength(36) .HasColumnType("character varying(36)") .HasColumnName("nonce"); b.Property("RepliedMessageId") .HasColumnType("uuid") .HasColumnName("replied_message_id"); b.Property("SenderId") .HasColumnType("uuid") .HasColumnName("sender_id"); b.Property("Type") .IsRequired() .HasMaxLength(1024) .HasColumnType("character varying(1024)") .HasColumnName("type"); b.Property("UpdatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("updated_at"); b.HasKey("Id") .HasName("pk_chat_messages"); b.HasIndex("ChatRoomId") .HasDatabaseName("ix_chat_messages_chat_room_id"); b.HasIndex("ForwardedMessageId") .HasDatabaseName("ix_chat_messages_forwarded_message_id"); b.HasIndex("RepliedMessageId") .HasDatabaseName("ix_chat_messages_replied_message_id"); b.HasIndex("SenderId") .HasDatabaseName("ix_chat_messages_sender_id"); b.ToTable("chat_messages", (string)null); }); modelBuilder.Entity("DysonNetwork.Sphere.Chat.MessageReaction", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uuid") .HasColumnName("id"); b.Property("Attitude") .HasColumnType("integer") .HasColumnName("attitude"); b.Property("CreatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("created_at"); b.Property("DeletedAt") .HasColumnType("timestamp with time zone") .HasColumnName("deleted_at"); b.Property("MessageId") .HasColumnType("uuid") .HasColumnName("message_id"); b.Property("SenderId") .HasColumnType("uuid") .HasColumnName("sender_id"); b.Property("Symbol") .IsRequired() .HasMaxLength(256) .HasColumnType("character varying(256)") .HasColumnName("symbol"); b.Property("UpdatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("updated_at"); b.HasKey("Id") .HasName("pk_chat_reactions"); b.HasIndex("MessageId") .HasDatabaseName("ix_chat_reactions_message_id"); b.HasIndex("SenderId") .HasDatabaseName("ix_chat_reactions_sender_id"); b.ToTable("chat_reactions", (string)null); }); modelBuilder.Entity("DysonNetwork.Sphere.Chat.RealtimeCall", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uuid") .HasColumnName("id"); b.Property("CreatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("created_at"); b.Property("DeletedAt") .HasColumnType("timestamp with time zone") .HasColumnName("deleted_at"); b.Property("EndedAt") .HasColumnType("timestamp with time zone") .HasColumnName("ended_at"); b.Property("ProviderName") .HasColumnType("text") .HasColumnName("provider_name"); b.Property("RoomId") .HasColumnType("uuid") .HasColumnName("room_id"); b.Property("SenderId") .HasColumnType("uuid") .HasColumnName("sender_id"); b.Property("SessionId") .HasColumnType("text") .HasColumnName("session_id"); b.Property("UpdatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("updated_at"); b.Property("UpstreamConfigJson") .HasColumnType("jsonb") .HasColumnName("upstream"); b.HasKey("Id") .HasName("pk_chat_realtime_call"); b.HasIndex("RoomId") .HasDatabaseName("ix_chat_realtime_call_room_id"); b.HasIndex("SenderId") .HasDatabaseName("ix_chat_realtime_call_sender_id"); b.ToTable("chat_realtime_call", (string)null); }); modelBuilder.Entity("DysonNetwork.Sphere.Developer.CustomApp", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uuid") .HasColumnName("id"); b.Property("Background") .HasColumnType("jsonb") .HasColumnName("background"); b.Property("CreatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("created_at"); b.Property("DeletedAt") .HasColumnType("timestamp with time zone") .HasColumnName("deleted_at"); b.Property("Description") .HasMaxLength(4096) .HasColumnType("character varying(4096)") .HasColumnName("description"); b.Property("Links") .HasColumnType("jsonb") .HasColumnName("links"); b.Property("Name") .IsRequired() .HasMaxLength(1024) .HasColumnType("character varying(1024)") .HasColumnName("name"); b.Property("OauthConfig") .HasColumnType("jsonb") .HasColumnName("oauth_config"); b.Property("Picture") .HasColumnType("jsonb") .HasColumnName("picture"); b.Property("PublisherId") .HasColumnType("uuid") .HasColumnName("publisher_id"); b.Property("Slug") .IsRequired() .HasMaxLength(1024) .HasColumnType("character varying(1024)") .HasColumnName("slug"); b.Property("Status") .HasColumnType("integer") .HasColumnName("status"); b.Property("UpdatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("updated_at"); b.Property("Verification") .HasColumnType("jsonb") .HasColumnName("verification"); b.HasKey("Id") .HasName("pk_custom_apps"); b.HasIndex("PublisherId") .HasDatabaseName("ix_custom_apps_publisher_id"); b.ToTable("custom_apps", (string)null); }); modelBuilder.Entity("DysonNetwork.Sphere.Developer.CustomAppSecret", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uuid") .HasColumnName("id"); b.Property("AppId") .HasColumnType("uuid") .HasColumnName("app_id"); b.Property("CreatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("created_at"); b.Property("DeletedAt") .HasColumnType("timestamp with time zone") .HasColumnName("deleted_at"); b.Property("Description") .HasMaxLength(4096) .HasColumnType("character varying(4096)") .HasColumnName("description"); b.Property("ExpiredAt") .HasColumnType("timestamp with time zone") .HasColumnName("expired_at"); b.Property("IsOidc") .HasColumnType("boolean") .HasColumnName("is_oidc"); b.Property("Secret") .IsRequired() .HasMaxLength(1024) .HasColumnType("character varying(1024)") .HasColumnName("secret"); b.Property("UpdatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("updated_at"); b.HasKey("Id") .HasName("pk_custom_app_secrets"); b.HasIndex("AppId") .HasDatabaseName("ix_custom_app_secrets_app_id"); b.HasIndex("Secret") .IsUnique() .HasDatabaseName("ix_custom_app_secrets_secret"); b.ToTable("custom_app_secrets", (string)null); }); modelBuilder.Entity("DysonNetwork.Sphere.Post.Post", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uuid") .HasColumnName("id"); b.Property>("Attachments") .IsRequired() .HasColumnType("jsonb") .HasColumnName("attachments"); b.Property("Content") .HasColumnType("text") .HasColumnName("content"); b.Property("CreatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("created_at"); b.Property("DeletedAt") .HasColumnType("timestamp with time zone") .HasColumnName("deleted_at"); b.Property("Description") .HasMaxLength(4096) .HasColumnType("character varying(4096)") .HasColumnName("description"); b.Property("Downvotes") .HasColumnType("integer") .HasColumnName("downvotes"); b.Property("EditedAt") .HasColumnType("timestamp with time zone") .HasColumnName("edited_at"); b.Property("ForwardedPostId") .HasColumnType("uuid") .HasColumnName("forwarded_post_id"); b.Property("Language") .HasMaxLength(128) .HasColumnType("character varying(128)") .HasColumnName("language"); b.Property>("Meta") .HasColumnType("jsonb") .HasColumnName("meta"); b.Property("PublishedAt") .HasColumnType("timestamp with time zone") .HasColumnName("published_at"); b.Property("PublisherId") .HasColumnType("uuid") .HasColumnName("publisher_id"); b.Property("RepliedPostId") .HasColumnType("uuid") .HasColumnName("replied_post_id"); b.Property("SearchVector") .IsRequired() .ValueGeneratedOnAddOrUpdate() .HasColumnType("tsvector") .HasColumnName("search_vector") .HasAnnotation("Npgsql:TsVectorConfig", "simple") .HasAnnotation("Npgsql:TsVectorProperties", new[] { "Title", "Description", "Content" }); b.Property>("SensitiveMarks") .HasColumnType("jsonb") .HasColumnName("sensitive_marks"); b.Property("Title") .HasMaxLength(1024) .HasColumnType("character varying(1024)") .HasColumnName("title"); b.Property("Type") .HasColumnType("integer") .HasColumnName("type"); b.Property("UpdatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("updated_at"); b.Property("Upvotes") .HasColumnType("integer") .HasColumnName("upvotes"); b.Property("ViewsTotal") .HasColumnType("integer") .HasColumnName("views_total"); b.Property("ViewsUnique") .HasColumnType("integer") .HasColumnName("views_unique"); b.Property("Visibility") .HasColumnType("integer") .HasColumnName("visibility"); b.HasKey("Id") .HasName("pk_posts"); b.HasIndex("ForwardedPostId") .HasDatabaseName("ix_posts_forwarded_post_id"); b.HasIndex("PublisherId") .HasDatabaseName("ix_posts_publisher_id"); b.HasIndex("RepliedPostId") .HasDatabaseName("ix_posts_replied_post_id"); b.HasIndex("SearchVector") .HasDatabaseName("ix_posts_search_vector"); NpgsqlIndexBuilderExtensions.HasMethod(b.HasIndex("SearchVector"), "GIN"); b.ToTable("posts", (string)null); }); modelBuilder.Entity("DysonNetwork.Sphere.Post.PostCategory", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uuid") .HasColumnName("id"); b.Property("CreatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("created_at"); b.Property("DeletedAt") .HasColumnType("timestamp with time zone") .HasColumnName("deleted_at"); b.Property("Name") .HasMaxLength(256) .HasColumnType("character varying(256)") .HasColumnName("name"); b.Property("Slug") .IsRequired() .HasMaxLength(128) .HasColumnType("character varying(128)") .HasColumnName("slug"); b.Property("UpdatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("updated_at"); b.HasKey("Id") .HasName("pk_post_categories"); b.ToTable("post_categories", (string)null); }); modelBuilder.Entity("DysonNetwork.Sphere.Post.PostCollection", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uuid") .HasColumnName("id"); b.Property("CreatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("created_at"); b.Property("DeletedAt") .HasColumnType("timestamp with time zone") .HasColumnName("deleted_at"); b.Property("Description") .HasMaxLength(4096) .HasColumnType("character varying(4096)") .HasColumnName("description"); b.Property("Name") .HasMaxLength(256) .HasColumnType("character varying(256)") .HasColumnName("name"); b.Property("PublisherId") .HasColumnType("uuid") .HasColumnName("publisher_id"); b.Property("Slug") .IsRequired() .HasMaxLength(128) .HasColumnType("character varying(128)") .HasColumnName("slug"); b.Property("UpdatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("updated_at"); b.HasKey("Id") .HasName("pk_post_collections"); b.HasIndex("PublisherId") .HasDatabaseName("ix_post_collections_publisher_id"); b.ToTable("post_collections", (string)null); }); modelBuilder.Entity("DysonNetwork.Sphere.Post.PostReaction", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uuid") .HasColumnName("id"); b.Property("AccountId") .HasColumnType("uuid") .HasColumnName("account_id"); b.Property("Attitude") .HasColumnType("integer") .HasColumnName("attitude"); b.Property("CreatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("created_at"); b.Property("DeletedAt") .HasColumnType("timestamp with time zone") .HasColumnName("deleted_at"); b.Property("PostId") .HasColumnType("uuid") .HasColumnName("post_id"); b.Property("Symbol") .IsRequired() .HasMaxLength(256) .HasColumnType("character varying(256)") .HasColumnName("symbol"); b.Property("UpdatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("updated_at"); b.HasKey("Id") .HasName("pk_post_reactions"); b.HasIndex("PostId") .HasDatabaseName("ix_post_reactions_post_id"); b.ToTable("post_reactions", (string)null); }); modelBuilder.Entity("DysonNetwork.Sphere.Post.PostTag", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uuid") .HasColumnName("id"); b.Property("CreatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("created_at"); b.Property("DeletedAt") .HasColumnType("timestamp with time zone") .HasColumnName("deleted_at"); b.Property("Name") .HasMaxLength(256) .HasColumnType("character varying(256)") .HasColumnName("name"); b.Property("Slug") .IsRequired() .HasMaxLength(128) .HasColumnType("character varying(128)") .HasColumnName("slug"); b.Property("UpdatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("updated_at"); b.HasKey("Id") .HasName("pk_post_tags"); b.ToTable("post_tags", (string)null); }); modelBuilder.Entity("DysonNetwork.Sphere.Publisher.Publisher", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uuid") .HasColumnName("id"); b.Property("AccountId") .HasColumnType("uuid") .HasColumnName("account_id"); b.Property("Background") .HasColumnType("jsonb") .HasColumnName("background"); b.Property("BackgroundId") .HasMaxLength(32) .HasColumnType("character varying(32)") .HasColumnName("background_id"); b.Property("Bio") .HasMaxLength(4096) .HasColumnType("character varying(4096)") .HasColumnName("bio"); b.Property("CreatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("created_at"); b.Property("DeletedAt") .HasColumnType("timestamp with time zone") .HasColumnName("deleted_at"); b.Property("Name") .IsRequired() .HasMaxLength(256) .HasColumnType("character varying(256)") .HasColumnName("name"); b.Property("Nick") .IsRequired() .HasMaxLength(256) .HasColumnType("character varying(256)") .HasColumnName("nick"); b.Property("Picture") .HasColumnType("jsonb") .HasColumnName("picture"); b.Property("PictureId") .HasMaxLength(32) .HasColumnType("character varying(32)") .HasColumnName("picture_id"); b.Property("RealmId") .HasColumnType("uuid") .HasColumnName("realm_id"); b.Property("Type") .HasColumnType("integer") .HasColumnName("type"); b.Property("UpdatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("updated_at"); b.Property("Verification") .HasColumnType("jsonb") .HasColumnName("verification"); b.HasKey("Id") .HasName("pk_publishers"); b.HasIndex("Name") .IsUnique() .HasDatabaseName("ix_publishers_name"); b.HasIndex("RealmId") .HasDatabaseName("ix_publishers_realm_id"); b.ToTable("publishers", (string)null); }); modelBuilder.Entity("DysonNetwork.Sphere.Publisher.PublisherFeature", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uuid") .HasColumnName("id"); b.Property("CreatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("created_at"); b.Property("DeletedAt") .HasColumnType("timestamp with time zone") .HasColumnName("deleted_at"); b.Property("ExpiredAt") .HasColumnType("timestamp with time zone") .HasColumnName("expired_at"); b.Property("Flag") .IsRequired() .HasMaxLength(1024) .HasColumnType("character varying(1024)") .HasColumnName("flag"); b.Property("PublisherId") .HasColumnType("uuid") .HasColumnName("publisher_id"); b.Property("UpdatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("updated_at"); b.HasKey("Id") .HasName("pk_publisher_features"); b.HasIndex("PublisherId") .HasDatabaseName("ix_publisher_features_publisher_id"); b.ToTable("publisher_features", (string)null); }); modelBuilder.Entity("DysonNetwork.Sphere.Publisher.PublisherMember", b => { b.Property("PublisherId") .HasColumnType("uuid") .HasColumnName("publisher_id"); b.Property("AccountId") .HasColumnType("uuid") .HasColumnName("account_id"); b.Property("CreatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("created_at"); b.Property("DeletedAt") .HasColumnType("timestamp with time zone") .HasColumnName("deleted_at"); b.Property("JoinedAt") .HasColumnType("timestamp with time zone") .HasColumnName("joined_at"); b.Property("Role") .HasColumnType("integer") .HasColumnName("role"); b.Property("UpdatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("updated_at"); b.HasKey("PublisherId", "AccountId") .HasName("pk_publisher_members"); b.ToTable("publisher_members", (string)null); }); modelBuilder.Entity("DysonNetwork.Sphere.Publisher.PublisherSubscription", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uuid") .HasColumnName("id"); b.Property("AccountId") .HasColumnType("uuid") .HasColumnName("account_id"); b.Property("CreatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("created_at"); b.Property("DeletedAt") .HasColumnType("timestamp with time zone") .HasColumnName("deleted_at"); b.Property("PublisherId") .HasColumnType("uuid") .HasColumnName("publisher_id"); b.Property("Status") .HasColumnType("integer") .HasColumnName("status"); b.Property("Tier") .HasColumnType("integer") .HasColumnName("tier"); b.Property("UpdatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("updated_at"); b.HasKey("Id") .HasName("pk_publisher_subscriptions"); b.HasIndex("PublisherId") .HasDatabaseName("ix_publisher_subscriptions_publisher_id"); b.ToTable("publisher_subscriptions", (string)null); }); modelBuilder.Entity("DysonNetwork.Sphere.Realm.Realm", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uuid") .HasColumnName("id"); b.Property("AccountId") .HasColumnType("uuid") .HasColumnName("account_id"); b.Property("Background") .HasColumnType("jsonb") .HasColumnName("background"); b.Property("BackgroundId") .HasMaxLength(32) .HasColumnType("character varying(32)") .HasColumnName("background_id"); b.Property("CreatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("created_at"); b.Property("DeletedAt") .HasColumnType("timestamp with time zone") .HasColumnName("deleted_at"); b.Property("Description") .IsRequired() .HasMaxLength(4096) .HasColumnType("character varying(4096)") .HasColumnName("description"); b.Property("IsCommunity") .HasColumnType("boolean") .HasColumnName("is_community"); b.Property("IsPublic") .HasColumnType("boolean") .HasColumnName("is_public"); b.Property("Name") .IsRequired() .HasMaxLength(1024) .HasColumnType("character varying(1024)") .HasColumnName("name"); b.Property("Picture") .HasColumnType("jsonb") .HasColumnName("picture"); b.Property("PictureId") .HasMaxLength(32) .HasColumnType("character varying(32)") .HasColumnName("picture_id"); b.Property("Slug") .IsRequired() .HasMaxLength(1024) .HasColumnType("character varying(1024)") .HasColumnName("slug"); b.Property("UpdatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("updated_at"); b.Property("Verification") .HasColumnType("jsonb") .HasColumnName("verification"); b.HasKey("Id") .HasName("pk_realms"); b.HasIndex("Slug") .IsUnique() .HasDatabaseName("ix_realms_slug"); b.ToTable("realms", (string)null); }); modelBuilder.Entity("DysonNetwork.Sphere.Realm.RealmMember", b => { b.Property("RealmId") .HasColumnType("uuid") .HasColumnName("realm_id"); b.Property("AccountId") .HasColumnType("uuid") .HasColumnName("account_id"); b.Property("CreatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("created_at"); b.Property("DeletedAt") .HasColumnType("timestamp with time zone") .HasColumnName("deleted_at"); b.Property("JoinedAt") .HasColumnType("timestamp with time zone") .HasColumnName("joined_at"); b.Property("LeaveAt") .HasColumnType("timestamp with time zone") .HasColumnName("leave_at"); b.Property("Role") .HasColumnType("integer") .HasColumnName("role"); b.Property("UpdatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("updated_at"); b.HasKey("RealmId", "AccountId") .HasName("pk_realm_members"); b.ToTable("realm_members", (string)null); }); modelBuilder.Entity("DysonNetwork.Sphere.Realm.RealmTag", b => { b.Property("RealmId") .HasColumnType("uuid") .HasColumnName("realm_id"); b.Property("TagId") .HasColumnType("uuid") .HasColumnName("tag_id"); b.Property("CreatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("created_at"); b.Property("DeletedAt") .HasColumnType("timestamp with time zone") .HasColumnName("deleted_at"); b.Property("UpdatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("updated_at"); b.HasKey("RealmId", "TagId") .HasName("pk_realm_tags"); b.HasIndex("TagId") .HasDatabaseName("ix_realm_tags_tag_id"); b.ToTable("realm_tags", (string)null); }); modelBuilder.Entity("DysonNetwork.Sphere.Realm.Tag", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uuid") .HasColumnName("id"); b.Property("CreatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("created_at"); b.Property("DeletedAt") .HasColumnType("timestamp with time zone") .HasColumnName("deleted_at"); b.Property("Name") .IsRequired() .HasMaxLength(64) .HasColumnType("character varying(64)") .HasColumnName("name"); b.Property("UpdatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("updated_at"); b.HasKey("Id") .HasName("pk_tags"); b.ToTable("tags", (string)null); }); modelBuilder.Entity("DysonNetwork.Sphere.Sticker.Sticker", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uuid") .HasColumnName("id"); b.Property("CreatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("created_at"); b.Property("DeletedAt") .HasColumnType("timestamp with time zone") .HasColumnName("deleted_at"); b.Property("Image") .HasColumnType("jsonb") .HasColumnName("image"); b.Property("ImageId") .HasMaxLength(32) .HasColumnType("character varying(32)") .HasColumnName("image_id"); b.Property("PackId") .HasColumnType("uuid") .HasColumnName("pack_id"); b.Property("Slug") .IsRequired() .HasMaxLength(128) .HasColumnType("character varying(128)") .HasColumnName("slug"); b.Property("UpdatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("updated_at"); b.HasKey("Id") .HasName("pk_stickers"); b.HasIndex("PackId") .HasDatabaseName("ix_stickers_pack_id"); b.HasIndex("Slug") .HasDatabaseName("ix_stickers_slug"); b.ToTable("stickers", (string)null); }); modelBuilder.Entity("DysonNetwork.Sphere.Sticker.StickerPack", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uuid") .HasColumnName("id"); b.Property("CreatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("created_at"); b.Property("DeletedAt") .HasColumnType("timestamp with time zone") .HasColumnName("deleted_at"); b.Property("Description") .IsRequired() .HasMaxLength(4096) .HasColumnType("character varying(4096)") .HasColumnName("description"); b.Property("Name") .IsRequired() .HasMaxLength(1024) .HasColumnType("character varying(1024)") .HasColumnName("name"); b.Property("Prefix") .IsRequired() .HasMaxLength(128) .HasColumnType("character varying(128)") .HasColumnName("prefix"); b.Property("PublisherId") .HasColumnType("uuid") .HasColumnName("publisher_id"); b.Property("UpdatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("updated_at"); b.HasKey("Id") .HasName("pk_sticker_packs"); b.HasIndex("Prefix") .IsUnique() .HasDatabaseName("ix_sticker_packs_prefix"); b.HasIndex("PublisherId") .HasDatabaseName("ix_sticker_packs_publisher_id"); b.ToTable("sticker_packs", (string)null); }); modelBuilder.Entity("DysonNetwork.Sphere.WebReader.WebArticle", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uuid") .HasColumnName("id"); b.Property("Author") .HasMaxLength(4096) .HasColumnType("character varying(4096)") .HasColumnName("author"); b.Property("Content") .HasColumnType("text") .HasColumnName("content"); b.Property("CreatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("created_at"); b.Property("DeletedAt") .HasColumnType("timestamp with time zone") .HasColumnName("deleted_at"); b.Property("FeedId") .HasColumnType("uuid") .HasColumnName("feed_id"); b.Property>("Meta") .HasColumnType("jsonb") .HasColumnName("meta"); b.Property("Preview") .HasColumnType("jsonb") .HasColumnName("preview"); b.Property("PublishedAt") .HasColumnType("timestamp with time zone") .HasColumnName("published_at"); b.Property("Title") .IsRequired() .HasMaxLength(4096) .HasColumnType("character varying(4096)") .HasColumnName("title"); b.Property("UpdatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("updated_at"); b.Property("Url") .IsRequired() .HasMaxLength(8192) .HasColumnType("character varying(8192)") .HasColumnName("url"); b.HasKey("Id") .HasName("pk_web_articles"); b.HasIndex("FeedId") .HasDatabaseName("ix_web_articles_feed_id"); b.HasIndex("Url") .IsUnique() .HasDatabaseName("ix_web_articles_url"); b.ToTable("web_articles", (string)null); }); modelBuilder.Entity("DysonNetwork.Sphere.WebReader.WebFeed", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uuid") .HasColumnName("id"); b.Property("Config") .IsRequired() .HasColumnType("jsonb") .HasColumnName("config"); b.Property("CreatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("created_at"); b.Property("DeletedAt") .HasColumnType("timestamp with time zone") .HasColumnName("deleted_at"); b.Property("Description") .HasMaxLength(8192) .HasColumnType("character varying(8192)") .HasColumnName("description"); b.Property("Preview") .HasColumnType("jsonb") .HasColumnName("preview"); b.Property("PublisherId") .HasColumnType("uuid") .HasColumnName("publisher_id"); b.Property("Title") .IsRequired() .HasMaxLength(4096) .HasColumnType("character varying(4096)") .HasColumnName("title"); b.Property("UpdatedAt") .HasColumnType("timestamp with time zone") .HasColumnName("updated_at"); b.Property("Url") .IsRequired() .HasMaxLength(8192) .HasColumnType("character varying(8192)") .HasColumnName("url"); b.HasKey("Id") .HasName("pk_web_feeds"); b.HasIndex("PublisherId") .HasDatabaseName("ix_web_feeds_publisher_id"); b.HasIndex("Url") .IsUnique() .HasDatabaseName("ix_web_feeds_url"); b.ToTable("web_feeds", (string)null); }); modelBuilder.Entity("PostPostCategory", b => { b.Property("CategoriesId") .HasColumnType("uuid") .HasColumnName("categories_id"); b.Property("PostsId") .HasColumnType("uuid") .HasColumnName("posts_id"); b.HasKey("CategoriesId", "PostsId") .HasName("pk_post_category_links"); b.HasIndex("PostsId") .HasDatabaseName("ix_post_category_links_posts_id"); b.ToTable("post_category_links", (string)null); }); modelBuilder.Entity("PostPostCollection", b => { b.Property("CollectionsId") .HasColumnType("uuid") .HasColumnName("collections_id"); b.Property("PostsId") .HasColumnType("uuid") .HasColumnName("posts_id"); b.HasKey("CollectionsId", "PostsId") .HasName("pk_post_collection_links"); b.HasIndex("PostsId") .HasDatabaseName("ix_post_collection_links_posts_id"); b.ToTable("post_collection_links", (string)null); }); modelBuilder.Entity("PostPostTag", b => { b.Property("PostsId") .HasColumnType("uuid") .HasColumnName("posts_id"); b.Property("TagsId") .HasColumnType("uuid") .HasColumnName("tags_id"); b.HasKey("PostsId", "TagsId") .HasName("pk_post_tag_links"); b.HasIndex("TagsId") .HasDatabaseName("ix_post_tag_links_tags_id"); b.ToTable("post_tag_links", (string)null); }); modelBuilder.Entity("DysonNetwork.Sphere.Chat.ChatMember", b => { b.HasOne("DysonNetwork.Sphere.Chat.ChatRoom", "ChatRoom") .WithMany("Members") .HasForeignKey("ChatRoomId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("fk_chat_members_chat_rooms_chat_room_id"); b.Navigation("ChatRoom"); }); modelBuilder.Entity("DysonNetwork.Sphere.Chat.ChatRoom", b => { b.HasOne("DysonNetwork.Sphere.Realm.Realm", "Realm") .WithMany("ChatRooms") .HasForeignKey("RealmId") .HasConstraintName("fk_chat_rooms_realms_realm_id"); b.Navigation("Realm"); }); modelBuilder.Entity("DysonNetwork.Sphere.Chat.Message", b => { b.HasOne("DysonNetwork.Sphere.Chat.ChatRoom", "ChatRoom") .WithMany() .HasForeignKey("ChatRoomId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("fk_chat_messages_chat_rooms_chat_room_id"); b.HasOne("DysonNetwork.Sphere.Chat.Message", "ForwardedMessage") .WithMany() .HasForeignKey("ForwardedMessageId") .OnDelete(DeleteBehavior.Restrict) .HasConstraintName("fk_chat_messages_chat_messages_forwarded_message_id"); b.HasOne("DysonNetwork.Sphere.Chat.Message", "RepliedMessage") .WithMany() .HasForeignKey("RepliedMessageId") .OnDelete(DeleteBehavior.Restrict) .HasConstraintName("fk_chat_messages_chat_messages_replied_message_id"); b.HasOne("DysonNetwork.Sphere.Chat.ChatMember", "Sender") .WithMany() .HasForeignKey("SenderId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("fk_chat_messages_chat_members_sender_id"); b.Navigation("ChatRoom"); b.Navigation("ForwardedMessage"); b.Navigation("RepliedMessage"); b.Navigation("Sender"); }); modelBuilder.Entity("DysonNetwork.Sphere.Chat.MessageReaction", b => { b.HasOne("DysonNetwork.Sphere.Chat.Message", "Message") .WithMany("Reactions") .HasForeignKey("MessageId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("fk_chat_reactions_chat_messages_message_id"); b.HasOne("DysonNetwork.Sphere.Chat.ChatMember", "Sender") .WithMany() .HasForeignKey("SenderId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("fk_chat_reactions_chat_members_sender_id"); b.Navigation("Message"); b.Navigation("Sender"); }); modelBuilder.Entity("DysonNetwork.Sphere.Chat.RealtimeCall", b => { b.HasOne("DysonNetwork.Sphere.Chat.ChatRoom", "Room") .WithMany() .HasForeignKey("RoomId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("fk_chat_realtime_call_chat_rooms_room_id"); b.HasOne("DysonNetwork.Sphere.Chat.ChatMember", "Sender") .WithMany() .HasForeignKey("SenderId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("fk_chat_realtime_call_chat_members_sender_id"); b.Navigation("Room"); b.Navigation("Sender"); }); modelBuilder.Entity("DysonNetwork.Sphere.Developer.CustomApp", b => { b.HasOne("DysonNetwork.Sphere.Publisher.Publisher", "Developer") .WithMany() .HasForeignKey("PublisherId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("fk_custom_apps_publishers_publisher_id"); b.Navigation("Developer"); }); modelBuilder.Entity("DysonNetwork.Sphere.Developer.CustomAppSecret", b => { b.HasOne("DysonNetwork.Sphere.Developer.CustomApp", "App") .WithMany("Secrets") .HasForeignKey("AppId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("fk_custom_app_secrets_custom_apps_app_id"); b.Navigation("App"); }); modelBuilder.Entity("DysonNetwork.Sphere.Post.Post", b => { b.HasOne("DysonNetwork.Sphere.Post.Post", "ForwardedPost") .WithMany() .HasForeignKey("ForwardedPostId") .OnDelete(DeleteBehavior.Restrict) .HasConstraintName("fk_posts_posts_forwarded_post_id"); b.HasOne("DysonNetwork.Sphere.Publisher.Publisher", "Publisher") .WithMany("Posts") .HasForeignKey("PublisherId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("fk_posts_publishers_publisher_id"); b.HasOne("DysonNetwork.Sphere.Post.Post", "RepliedPost") .WithMany() .HasForeignKey("RepliedPostId") .OnDelete(DeleteBehavior.Restrict) .HasConstraintName("fk_posts_posts_replied_post_id"); b.Navigation("ForwardedPost"); b.Navigation("Publisher"); b.Navigation("RepliedPost"); }); modelBuilder.Entity("DysonNetwork.Sphere.Post.PostCollection", b => { b.HasOne("DysonNetwork.Sphere.Publisher.Publisher", "Publisher") .WithMany("Collections") .HasForeignKey("PublisherId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("fk_post_collections_publishers_publisher_id"); b.Navigation("Publisher"); }); modelBuilder.Entity("DysonNetwork.Sphere.Post.PostReaction", b => { b.HasOne("DysonNetwork.Sphere.Post.Post", "Post") .WithMany("Reactions") .HasForeignKey("PostId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("fk_post_reactions_posts_post_id"); b.Navigation("Post"); }); modelBuilder.Entity("DysonNetwork.Sphere.Publisher.Publisher", b => { b.HasOne("DysonNetwork.Sphere.Realm.Realm", "Realm") .WithMany() .HasForeignKey("RealmId") .HasConstraintName("fk_publishers_realms_realm_id"); b.Navigation("Realm"); }); modelBuilder.Entity("DysonNetwork.Sphere.Publisher.PublisherFeature", b => { b.HasOne("DysonNetwork.Sphere.Publisher.Publisher", "Publisher") .WithMany("Features") .HasForeignKey("PublisherId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("fk_publisher_features_publishers_publisher_id"); b.Navigation("Publisher"); }); modelBuilder.Entity("DysonNetwork.Sphere.Publisher.PublisherMember", b => { b.HasOne("DysonNetwork.Sphere.Publisher.Publisher", "Publisher") .WithMany("Members") .HasForeignKey("PublisherId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("fk_publisher_members_publishers_publisher_id"); b.Navigation("Publisher"); }); modelBuilder.Entity("DysonNetwork.Sphere.Publisher.PublisherSubscription", b => { b.HasOne("DysonNetwork.Sphere.Publisher.Publisher", "Publisher") .WithMany("Subscriptions") .HasForeignKey("PublisherId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("fk_publisher_subscriptions_publishers_publisher_id"); b.Navigation("Publisher"); }); modelBuilder.Entity("DysonNetwork.Sphere.Realm.RealmMember", b => { b.HasOne("DysonNetwork.Sphere.Realm.Realm", "Realm") .WithMany("Members") .HasForeignKey("RealmId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("fk_realm_members_realms_realm_id"); b.Navigation("Realm"); }); modelBuilder.Entity("DysonNetwork.Sphere.Realm.RealmTag", b => { b.HasOne("DysonNetwork.Sphere.Realm.Realm", "Realm") .WithMany("RealmTags") .HasForeignKey("RealmId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("fk_realm_tags_realms_realm_id"); b.HasOne("DysonNetwork.Sphere.Realm.Tag", "Tag") .WithMany("RealmTags") .HasForeignKey("TagId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("fk_realm_tags_tags_tag_id"); b.Navigation("Realm"); b.Navigation("Tag"); }); modelBuilder.Entity("DysonNetwork.Sphere.Sticker.Sticker", b => { b.HasOne("DysonNetwork.Sphere.Sticker.StickerPack", "Pack") .WithMany() .HasForeignKey("PackId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("fk_stickers_sticker_packs_pack_id"); b.Navigation("Pack"); }); modelBuilder.Entity("DysonNetwork.Sphere.Sticker.StickerPack", b => { b.HasOne("DysonNetwork.Sphere.Publisher.Publisher", "Publisher") .WithMany() .HasForeignKey("PublisherId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("fk_sticker_packs_publishers_publisher_id"); b.Navigation("Publisher"); }); modelBuilder.Entity("DysonNetwork.Sphere.WebReader.WebArticle", b => { b.HasOne("DysonNetwork.Sphere.WebReader.WebFeed", "Feed") .WithMany("Articles") .HasForeignKey("FeedId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("fk_web_articles_web_feeds_feed_id"); b.Navigation("Feed"); }); modelBuilder.Entity("DysonNetwork.Sphere.WebReader.WebFeed", b => { b.HasOne("DysonNetwork.Sphere.Publisher.Publisher", "Publisher") .WithMany() .HasForeignKey("PublisherId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("fk_web_feeds_publishers_publisher_id"); b.Navigation("Publisher"); }); modelBuilder.Entity("PostPostCategory", b => { b.HasOne("DysonNetwork.Sphere.Post.PostCategory", null) .WithMany() .HasForeignKey("CategoriesId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("fk_post_category_links_post_categories_categories_id"); b.HasOne("DysonNetwork.Sphere.Post.Post", null) .WithMany() .HasForeignKey("PostsId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("fk_post_category_links_posts_posts_id"); }); modelBuilder.Entity("PostPostCollection", b => { b.HasOne("DysonNetwork.Sphere.Post.PostCollection", null) .WithMany() .HasForeignKey("CollectionsId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("fk_post_collection_links_post_collections_collections_id"); b.HasOne("DysonNetwork.Sphere.Post.Post", null) .WithMany() .HasForeignKey("PostsId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("fk_post_collection_links_posts_posts_id"); }); modelBuilder.Entity("PostPostTag", b => { b.HasOne("DysonNetwork.Sphere.Post.Post", null) .WithMany() .HasForeignKey("PostsId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("fk_post_tag_links_posts_posts_id"); b.HasOne("DysonNetwork.Sphere.Post.PostTag", null) .WithMany() .HasForeignKey("TagsId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("fk_post_tag_links_post_tags_tags_id"); }); modelBuilder.Entity("DysonNetwork.Sphere.Chat.ChatRoom", b => { b.Navigation("Members"); }); modelBuilder.Entity("DysonNetwork.Sphere.Chat.Message", b => { b.Navigation("Reactions"); }); modelBuilder.Entity("DysonNetwork.Sphere.Developer.CustomApp", b => { b.Navigation("Secrets"); }); modelBuilder.Entity("DysonNetwork.Sphere.Post.Post", b => { b.Navigation("Reactions"); }); modelBuilder.Entity("DysonNetwork.Sphere.Publisher.Publisher", b => { b.Navigation("Collections"); b.Navigation("Features"); b.Navigation("Members"); b.Navigation("Posts"); b.Navigation("Subscriptions"); }); modelBuilder.Entity("DysonNetwork.Sphere.Realm.Realm", b => { b.Navigation("ChatRooms"); b.Navigation("Members"); b.Navigation("RealmTags"); }); modelBuilder.Entity("DysonNetwork.Sphere.Realm.Tag", b => { b.Navigation("RealmTags"); }); modelBuilder.Entity("DysonNetwork.Sphere.WebReader.WebFeed", b => { b.Navigation("Articles"); }); #pragma warning restore 612, 618 } } }