From 466a52ecd939f71e71f03a9541f3cc72e6416d4d Mon Sep 17 00:00:00 2001 From: LittleSheep Date: Thu, 1 Jan 2026 14:05:21 +0800 Subject: [PATCH] :card_file_box: Merge migrations in sphere --- .../20251228100758_AddActivityPub.Designer.cs | 2657 ---------------- .../20251228100758_AddActivityPub.cs | 350 --- ...1228165042_AddSeprateActorType.Designer.cs | 2663 ---------------- .../20251228165042_AddSeprateActorType.cs | 30 - ...173217_EnrichFediverseInstance.Designer.cs | 2691 ---------------- .../20251228173217_EnrichFediverseInstance.cs | 83 - ...0251229163103_BetterLocalActor.Designer.cs | 2683 ---------------- .../20251229163103_BetterLocalActor.cs | 60 - ...0251229174336_AddPublisherKeys.Designer.cs | 2693 ----------------- .../20251229174336_AddPublisherKeys.cs | 40 - ...153545_MergeFediverseDataClass.Designer.cs | 2385 --------------- ...oveFollowingBooleanInFediverse.Designer.cs | 2377 --------------- ...02829_RemoveFollowingBooleanInFediverse.cs | 40 - ...1_RemoveSeprateLikeCountOnPost.Designer.cs | 2373 --------------- ...1231143021_RemoveSeprateLikeCountOnPost.cs | 29 - .../20251231163256_AddActivityPubDelivery.cs | 48 - ...20260101135529_AddActivityPub.Designer.cs} | 4 +- ...ss.cs => 20260101135529_AddActivityPub.cs} | 495 +-- 18 files changed, 263 insertions(+), 21438 deletions(-) delete mode 100644 DysonNetwork.Sphere/Migrations/20251228100758_AddActivityPub.Designer.cs delete mode 100644 DysonNetwork.Sphere/Migrations/20251228100758_AddActivityPub.cs delete mode 100644 DysonNetwork.Sphere/Migrations/20251228165042_AddSeprateActorType.Designer.cs delete mode 100644 DysonNetwork.Sphere/Migrations/20251228165042_AddSeprateActorType.cs delete mode 100644 DysonNetwork.Sphere/Migrations/20251228173217_EnrichFediverseInstance.Designer.cs delete mode 100644 DysonNetwork.Sphere/Migrations/20251228173217_EnrichFediverseInstance.cs delete mode 100644 DysonNetwork.Sphere/Migrations/20251229163103_BetterLocalActor.Designer.cs delete mode 100644 DysonNetwork.Sphere/Migrations/20251229163103_BetterLocalActor.cs delete mode 100644 DysonNetwork.Sphere/Migrations/20251229174336_AddPublisherKeys.Designer.cs delete mode 100644 DysonNetwork.Sphere/Migrations/20251229174336_AddPublisherKeys.cs delete mode 100644 DysonNetwork.Sphere/Migrations/20251230153545_MergeFediverseDataClass.Designer.cs delete mode 100644 DysonNetwork.Sphere/Migrations/20251231102829_RemoveFollowingBooleanInFediverse.Designer.cs delete mode 100644 DysonNetwork.Sphere/Migrations/20251231102829_RemoveFollowingBooleanInFediverse.cs delete mode 100644 DysonNetwork.Sphere/Migrations/20251231143021_RemoveSeprateLikeCountOnPost.Designer.cs delete mode 100644 DysonNetwork.Sphere/Migrations/20251231143021_RemoveSeprateLikeCountOnPost.cs delete mode 100644 DysonNetwork.Sphere/Migrations/20251231163256_AddActivityPubDelivery.cs rename DysonNetwork.Sphere/Migrations/{20251231163256_AddActivityPubDelivery.Designer.cs => 20260101135529_AddActivityPub.Designer.cs} (99%) rename DysonNetwork.Sphere/Migrations/{20251230153545_MergeFediverseDataClass.cs => 20260101135529_AddActivityPub.cs} (54%) diff --git a/DysonNetwork.Sphere/Migrations/20251228100758_AddActivityPub.Designer.cs b/DysonNetwork.Sphere/Migrations/20251228100758_AddActivityPub.Designer.cs deleted file mode 100644 index c411a12..0000000 --- a/DysonNetwork.Sphere/Migrations/20251228100758_AddActivityPub.Designer.cs +++ /dev/null @@ -1,2657 +0,0 @@ -// -using System; -using System.Collections.Generic; -using System.Text.Json; -using DysonNetwork.Shared.Models; -using DysonNetwork.Sphere; -using DysonNetwork.Sphere.WebReader; -using Microsoft.EntityFrameworkCore; -using Microsoft.EntityFrameworkCore.Infrastructure; -using Microsoft.EntityFrameworkCore.Migrations; -using Microsoft.EntityFrameworkCore.Storage.ValueConversion; -using NodaTime; -using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; - -#nullable disable - -namespace DysonNetwork.Sphere.Migrations -{ - [DbContext(typeof(AppDatabase))] - [Migration("20251228100758_AddActivityPub")] - partial class AddActivityPub - { - /// - protected override void BuildTargetModel(ModelBuilder modelBuilder) - { -#pragma warning disable 612, 618 - modelBuilder - .HasAnnotation("ProductVersion", "10.0.1") - .HasAnnotation("Relational:MaxIdentifierLength", 63); - - NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnChatMember", 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("InvitedById") - .HasColumnType("uuid") - .HasColumnName("invited_by_id"); - - 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("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.HasIndex("InvitedById") - .HasDatabaseName("ix_chat_members_invited_by_id"); - - b.ToTable("chat_members", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnChatMessage", 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.PrimitiveCollection("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.Shared.Models.SnChatMessageReaction", 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.Shared.Models.SnChatRoom", 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("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("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.ToTable("chat_rooms", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseActivity", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("ActorId") - .HasColumnType("uuid") - .HasColumnName("actor_id"); - - b.Property("ContentId") - .HasColumnType("uuid") - .HasColumnName("content_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("ErrorMessage") - .HasMaxLength(4096) - .HasColumnType("character varying(4096)") - .HasColumnName("error_message"); - - b.Property("IsLocal") - .HasColumnType("boolean") - .HasColumnName("is_local"); - - b.Property("LocalAccountId") - .HasColumnType("uuid") - .HasColumnName("local_account_id"); - - b.Property("LocalPostId") - .HasColumnType("uuid") - .HasColumnName("local_post_id"); - - b.Property("ObjectUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("object_uri"); - - b.Property("PublishedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("published_at"); - - b.Property>("RawData") - .HasColumnType("jsonb") - .HasColumnName("raw_data"); - - b.Property("Status") - .HasColumnType("integer") - .HasColumnName("status"); - - b.Property("TargetActorId") - .HasColumnType("uuid") - .HasColumnName("target_actor_id"); - - b.Property("TargetUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("target_uri"); - - b.Property("Type") - .HasColumnType("integer") - .HasColumnName("type"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.Property("Uri") - .IsRequired() - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("uri"); - - b.HasKey("Id") - .HasName("pk_fediverse_activities"); - - b.HasIndex("ActorId") - .HasDatabaseName("ix_fediverse_activities_actor_id"); - - b.HasIndex("ContentId") - .HasDatabaseName("ix_fediverse_activities_content_id"); - - b.HasIndex("TargetActorId") - .HasDatabaseName("ix_fediverse_activities_target_actor_id"); - - b.ToTable("fediverse_activities", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseActor", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("AvatarUrl") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("avatar_url"); - - 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("DisplayName") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("display_name"); - - b.Property("FeaturedUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("featured_uri"); - - b.Property("FollowersUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("followers_uri"); - - b.Property("FollowingUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("following_uri"); - - b.Property("HeaderUrl") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("header_url"); - - b.Property("InboxUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("inbox_uri"); - - b.Property("InstanceId") - .HasColumnType("uuid") - .HasColumnName("instance_id"); - - b.Property("IsBot") - .HasColumnType("boolean") - .HasColumnName("is_bot"); - - b.Property("IsDiscoverable") - .HasColumnType("boolean") - .HasColumnName("is_discoverable"); - - b.Property("IsLocked") - .HasColumnType("boolean") - .HasColumnName("is_locked"); - - b.Property("LastActivityAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("last_activity_at"); - - b.Property("LastFetchedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("last_fetched_at"); - - b.Property>("Metadata") - .HasColumnType("jsonb") - .HasColumnName("metadata"); - - b.Property("OutboxUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("outbox_uri"); - - b.Property("PublicKey") - .HasMaxLength(8192) - .HasColumnType("character varying(8192)") - .HasColumnName("public_key"); - - b.Property("PublicKeyId") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("public_key_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.Property("Uri") - .IsRequired() - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("uri"); - - b.Property("Username") - .IsRequired() - .HasMaxLength(256) - .HasColumnType("character varying(256)") - .HasColumnName("username"); - - b.HasKey("Id") - .HasName("pk_fediverse_actors"); - - b.HasIndex("InstanceId") - .HasDatabaseName("ix_fediverse_actors_instance_id"); - - b.HasIndex("Uri") - .IsUnique() - .HasDatabaseName("ix_fediverse_actors_uri"); - - b.ToTable("fediverse_actors", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseContent", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("ActorId") - .HasColumnType("uuid") - .HasColumnName("actor_id"); - - b.Property("AnnouncedContentUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("announced_content_uri"); - - // b.Property>("Attachments") - // .HasColumnType("jsonb") - // .HasColumnName("attachments"); - - b.Property("BoostCount") - .HasColumnType("integer") - .HasColumnName("boost_count"); - - b.Property("Content") - .HasColumnType("text") - .HasColumnName("content"); - - b.Property("ContentHtml") - .HasColumnType("text") - .HasColumnName("content_html"); - - 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>("Emojis") - // .HasColumnType("jsonb") - // .HasColumnName("emojis"); - - b.Property("InReplyTo") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("in_reply_to"); - - b.Property("InstanceId") - .HasColumnType("uuid") - .HasColumnName("instance_id"); - - b.Property("IsSensitive") - .HasColumnType("boolean") - .HasColumnName("is_sensitive"); - - b.Property("Language") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("language"); - - b.Property("LikeCount") - .HasColumnType("integer") - .HasColumnName("like_count"); - - b.Property("LocalPostId") - .HasColumnType("uuid") - .HasColumnName("local_post_id"); - - // b.Property>("Mentions") - // .HasColumnType("jsonb") - // .HasColumnName("mentions"); - - b.Property>("Metadata") - .HasColumnType("jsonb") - .HasColumnName("metadata"); - - b.Property("PublishedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("published_at"); - - b.Property("ReplyCount") - .HasColumnType("integer") - .HasColumnName("reply_count"); - - b.Property("Summary") - .HasMaxLength(4096) - .HasColumnType("character varying(4096)") - .HasColumnName("summary"); - - // b.Property>("Tags") - // .HasColumnType("jsonb") - // .HasColumnName("tags"); - - 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("Uri") - .IsRequired() - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("uri"); - - b.HasKey("Id") - .HasName("pk_fediverse_contents"); - - b.HasIndex("ActorId") - .HasDatabaseName("ix_fediverse_contents_actor_id"); - - b.HasIndex("InstanceId") - .HasDatabaseName("ix_fediverse_contents_instance_id"); - - b.HasIndex("Uri") - .IsUnique() - .HasDatabaseName("ix_fediverse_contents_uri"); - - b.ToTable("fediverse_contents", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseInstance", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("BlockReason") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("block_reason"); - - 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("Domain") - .IsRequired() - .HasMaxLength(256) - .HasColumnType("character varying(256)") - .HasColumnName("domain"); - - b.Property("IsBlocked") - .HasColumnType("boolean") - .HasColumnName("is_blocked"); - - b.Property("IsSilenced") - .HasColumnType("boolean") - .HasColumnName("is_silenced"); - - b.Property("LastActivityAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("last_activity_at"); - - b.Property("LastFetchedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("last_fetched_at"); - - b.Property>("Metadata") - .HasColumnType("jsonb") - .HasColumnName("metadata"); - - b.Property("Name") - .HasMaxLength(512) - .HasColumnType("character varying(512)") - .HasColumnName("name"); - - b.Property("Software") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("software"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.Property("Version") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("version"); - - b.HasKey("Id") - .HasName("pk_fediverse_instances"); - - b.HasIndex("Domain") - .IsUnique() - .HasDatabaseName("ix_fediverse_instances_domain"); - - b.ToTable("fediverse_instances", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseReaction", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("ActorId") - .HasColumnType("uuid") - .HasColumnName("actor_id"); - - b.Property("ContentId") - .HasColumnType("uuid") - .HasColumnName("content_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("Emoji") - .HasMaxLength(64) - .HasColumnType("character varying(64)") - .HasColumnName("emoji"); - - b.Property("IsLocal") - .HasColumnType("boolean") - .HasColumnName("is_local"); - - b.Property("LocalAccountId") - .HasColumnType("uuid") - .HasColumnName("local_account_id"); - - b.Property("LocalReactionId") - .HasColumnType("uuid") - .HasColumnName("local_reaction_id"); - - b.Property("Type") - .HasColumnType("integer") - .HasColumnName("type"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.Property("Uri") - .IsRequired() - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("uri"); - - b.HasKey("Id") - .HasName("pk_fediverse_reactions"); - - b.HasIndex("ActorId") - .HasDatabaseName("ix_fediverse_reactions_actor_id"); - - b.HasIndex("ContentId") - .HasDatabaseName("ix_fediverse_reactions_content_id"); - - b.ToTable("fediverse_reactions", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseRelationship", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("ActorId") - .HasColumnType("uuid") - .HasColumnName("actor_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("FollowedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("followed_at"); - - b.Property("FollowedBackAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("followed_back_at"); - - b.Property("IsBlocking") - .HasColumnType("boolean") - .HasColumnName("is_blocking"); - - b.Property("IsFollowedBy") - .HasColumnType("boolean") - .HasColumnName("is_followed_by"); - - b.Property("IsFollowing") - .HasColumnType("boolean") - .HasColumnName("is_following"); - - b.Property("IsLocalActor") - .HasColumnType("boolean") - .HasColumnName("is_local_actor"); - - b.Property("IsMuting") - .HasColumnType("boolean") - .HasColumnName("is_muting"); - - b.Property("LocalAccountId") - .HasColumnType("uuid") - .HasColumnName("local_account_id"); - - b.Property("LocalPublisherId") - .HasColumnType("uuid") - .HasColumnName("local_publisher_id"); - - b.Property("RejectReason") - .HasMaxLength(4096) - .HasColumnType("character varying(4096)") - .HasColumnName("reject_reason"); - - b.Property("State") - .HasColumnType("integer") - .HasColumnName("state"); - - b.Property("TargetActorId") - .HasColumnType("uuid") - .HasColumnName("target_actor_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_fediverse_relationships"); - - b.HasIndex("ActorId") - .HasDatabaseName("ix_fediverse_relationships_actor_id"); - - b.HasIndex("TargetActorId") - .HasDatabaseName("ix_fediverse_relationships_target_actor_id"); - - b.ToTable("fediverse_relationships", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPoll", 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("EndedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("ended_at"); - - b.Property("IsAnonymous") - .HasColumnType("boolean") - .HasColumnName("is_anonymous"); - - b.Property("PublisherId") - .HasColumnType("uuid") - .HasColumnName("publisher_id"); - - b.Property("Title") - .HasMaxLength(1024) - .HasColumnType("character varying(1024)") - .HasColumnName("title"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_polls"); - - b.HasIndex("PublisherId") - .HasDatabaseName("ix_polls_publisher_id"); - - b.ToTable("polls", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPollAnswer", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("AccountId") - .HasColumnType("uuid") - .HasColumnName("account_id"); - - b.Property>("Answer") - .IsRequired() - .HasColumnType("jsonb") - .HasColumnName("answer"); - - b.Property("CreatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("created_at"); - - b.Property("DeletedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("deleted_at"); - - b.Property("PollId") - .HasColumnType("uuid") - .HasColumnName("poll_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_poll_answers"); - - b.HasIndex("PollId") - .HasDatabaseName("ix_poll_answers_poll_id"); - - b.ToTable("poll_answers", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPollQuestion", 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("IsRequired") - .HasColumnType("boolean") - .HasColumnName("is_required"); - - b.Property>("Options") - .HasColumnType("jsonb") - .HasColumnName("options"); - - b.Property("Order") - .HasColumnType("integer") - .HasColumnName("order"); - - b.Property("PollId") - .HasColumnType("uuid") - .HasColumnName("poll_id"); - - b.Property("Title") - .IsRequired() - .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.HasKey("Id") - .HasName("pk_poll_questions"); - - b.HasIndex("PollId") - .HasDatabaseName("ix_poll_questions_poll_id"); - - b.ToTable("poll_questions", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPost", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property>("Attachments") - .IsRequired() - .HasColumnType("jsonb") - .HasColumnName("attachments"); - - b.Property("AwardedScore") - .HasColumnType("numeric") - .HasColumnName("awarded_score"); - - 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("EmbedView") - .HasColumnType("jsonb") - .HasColumnName("embed_view"); - - b.Property("ForwardedGone") - .HasColumnType("boolean") - .HasColumnName("forwarded_gone"); - - b.Property("ForwardedPostId") - .HasColumnType("uuid") - .HasColumnName("forwarded_post_id"); - - b.Property>("Meta") - .HasColumnType("jsonb") - .HasColumnName("meta"); - - b.Property("PinMode") - .HasColumnType("integer") - .HasColumnName("pin_mode"); - - b.Property("PublishedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("published_at"); - - b.Property("PublisherId") - .HasColumnType("uuid") - .HasColumnName("publisher_id"); - - b.Property("RealmId") - .HasColumnType("uuid") - .HasColumnName("realm_id"); - - b.Property("RepliedGone") - .HasColumnType("boolean") - .HasColumnName("replied_gone"); - - b.Property("RepliedPostId") - .HasColumnType("uuid") - .HasColumnName("replied_post_id"); - - b.PrimitiveCollection("SensitiveMarks") - .HasColumnType("jsonb") - .HasColumnName("sensitive_marks"); - - b.Property("Slug") - .HasMaxLength(1024) - .HasColumnType("character varying(1024)") - .HasColumnName("slug"); - - 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.ToTable("posts", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostAward", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("AccountId") - .HasColumnType("uuid") - .HasColumnName("account_id"); - - b.Property("Amount") - .HasColumnType("numeric") - .HasColumnName("amount"); - - 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("Message") - .HasMaxLength(4096) - .HasColumnType("character varying(4096)") - .HasColumnName("message"); - - b.Property("PostId") - .HasColumnType("uuid") - .HasColumnName("post_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_post_awards"); - - b.HasIndex("PostId") - .HasDatabaseName("ix_post_awards_post_id"); - - b.ToTable("post_awards", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostCategory", 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.Shared.Models.SnPostCategorySubscription", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("AccountId") - .HasColumnType("uuid") - .HasColumnName("account_id"); - - b.Property("CategoryId") - .HasColumnType("uuid") - .HasColumnName("category_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("TagId") - .HasColumnType("uuid") - .HasColumnName("tag_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_post_category_subscriptions"); - - b.HasIndex("CategoryId") - .HasDatabaseName("ix_post_category_subscriptions_category_id"); - - b.HasIndex("TagId") - .HasDatabaseName("ix_post_category_subscriptions_tag_id"); - - b.ToTable("post_category_subscriptions", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostCollection", 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.Shared.Models.SnPostFeaturedRecord", 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("FeaturedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("featured_at"); - - b.Property("PostId") - .HasColumnType("uuid") - .HasColumnName("post_id"); - - b.Property("SocialCredits") - .HasColumnType("integer") - .HasColumnName("social_credits"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_post_featured_records"); - - b.HasIndex("PostId") - .HasDatabaseName("ix_post_featured_records_post_id"); - - b.ToTable("post_featured_records", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostReaction", 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.Shared.Models.SnPostTag", 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.Shared.Models.SnPublisher", 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("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>("Meta") - .HasColumnType("jsonb") - .HasColumnName("meta"); - - 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("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.ToTable("publishers", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPublisherFeature", 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.Shared.Models.SnPublisherMember", 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.Shared.Models.SnPublisherSubscription", 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.Shared.Models.SnRealtimeCall", 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.Shared.Models.SnSticker", 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") - .IsRequired() - .HasColumnType("jsonb") - .HasColumnName("image"); - - 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.Shared.Models.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("Icon") - .HasColumnType("jsonb") - .HasColumnName("icon"); - - 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.Shared.Models.StickerPackOwnership", 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("PackId") - .HasColumnType("uuid") - .HasColumnName("pack_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_sticker_pack_ownerships"); - - b.HasIndex("PackId") - .HasDatabaseName("ix_sticker_pack_ownerships_pack_id"); - - b.ToTable("sticker_pack_ownerships", (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("DysonNetwork.Sphere.WebReader.WebFeedSubscription", 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("FeedId") - .HasColumnType("uuid") - .HasColumnName("feed_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_web_feed_subscriptions"); - - b.HasIndex("FeedId") - .HasDatabaseName("ix_web_feed_subscriptions_feed_id"); - - b.ToTable("web_feed_subscriptions", (string)null); - }); - - modelBuilder.Entity("SnPostSnPostCategory", 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("SnPostSnPostCollection", 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("SnPostSnPostTag", 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.Shared.Models.SnChatMember", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnChatRoom", "ChatRoom") - .WithMany("Members") - .HasForeignKey("ChatRoomId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_chat_members_chat_rooms_chat_room_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMember", "InvitedBy") - .WithMany() - .HasForeignKey("InvitedById") - .HasConstraintName("fk_chat_members_chat_members_invited_by_id"); - - b.Navigation("ChatRoom"); - - b.Navigation("InvitedBy"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnChatMessage", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnChatRoom", "ChatRoom") - .WithMany() - .HasForeignKey("ChatRoomId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_chat_messages_chat_rooms_chat_room_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMessage", "ForwardedMessage") - .WithMany() - .HasForeignKey("ForwardedMessageId") - .OnDelete(DeleteBehavior.Restrict) - .HasConstraintName("fk_chat_messages_chat_messages_forwarded_message_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMessage", "RepliedMessage") - .WithMany() - .HasForeignKey("RepliedMessageId") - .OnDelete(DeleteBehavior.Restrict) - .HasConstraintName("fk_chat_messages_chat_messages_replied_message_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMember", "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.Shared.Models.SnChatMessageReaction", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnChatMessage", "Message") - .WithMany("Reactions") - .HasForeignKey("MessageId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_chat_reactions_chat_messages_message_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMember", "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.Shared.Models.SnFediverseActivity", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "Actor") - .WithMany("Activities") - .HasForeignKey("ActorId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_activities_fediverse_actors_actor_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnFediverseContent", "Content") - .WithMany("Activities") - .HasForeignKey("ContentId") - .OnDelete(DeleteBehavior.Cascade) - .HasConstraintName("fk_fediverse_activities_fediverse_contents_content_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "TargetActor") - .WithMany() - .HasForeignKey("TargetActorId") - .HasConstraintName("fk_fediverse_activities_fediverse_actors_target_actor_id"); - - b.Navigation("Actor"); - - b.Navigation("Content"); - - b.Navigation("TargetActor"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseActor", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnFediverseInstance", "Instance") - .WithMany("Actors") - .HasForeignKey("InstanceId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_actors_fediverse_instances_instance_id"); - - b.Navigation("Instance"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseContent", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "Actor") - .WithMany("Contents") - .HasForeignKey("ActorId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_contents_fediverse_actors_actor_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnFediverseInstance", "Instance") - .WithMany("Contents") - .HasForeignKey("InstanceId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_contents_fediverse_instances_instance_id"); - - b.Navigation("Actor"); - - b.Navigation("Instance"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseReaction", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "Actor") - .WithMany() - .HasForeignKey("ActorId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_reactions_fediverse_actors_actor_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnFediverseContent", "Content") - .WithMany("Reactions") - .HasForeignKey("ContentId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_reactions_fediverse_contents_content_id"); - - b.Navigation("Actor"); - - b.Navigation("Content"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseRelationship", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "Actor") - .WithMany("FollowingRelationships") - .HasForeignKey("ActorId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_relationships_fediverse_actors_actor_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "TargetActor") - .WithMany("FollowerRelationships") - .HasForeignKey("TargetActorId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_relationships_fediverse_actors_target_actor_id"); - - b.Navigation("Actor"); - - b.Navigation("TargetActor"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPoll", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Polls") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_polls_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPollAnswer", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPoll", "Poll") - .WithMany() - .HasForeignKey("PollId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_poll_answers_polls_poll_id"); - - b.Navigation("Poll"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPollQuestion", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPoll", "Poll") - .WithMany("Questions") - .HasForeignKey("PollId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_poll_questions_polls_poll_id"); - - b.Navigation("Poll"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPost", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPost", "ForwardedPost") - .WithMany() - .HasForeignKey("ForwardedPostId") - .OnDelete(DeleteBehavior.Restrict) - .HasConstraintName("fk_posts_posts_forwarded_post_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Posts") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_posts_publishers_publisher_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPost", "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.Shared.Models.SnPostAward", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPost", "Post") - .WithMany("Awards") - .HasForeignKey("PostId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_awards_posts_post_id"); - - b.Navigation("Post"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostCategorySubscription", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPostCategory", "Category") - .WithMany() - .HasForeignKey("CategoryId") - .HasConstraintName("fk_post_category_subscriptions_post_categories_category_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPostTag", "Tag") - .WithMany() - .HasForeignKey("TagId") - .HasConstraintName("fk_post_category_subscriptions_post_tags_tag_id"); - - b.Navigation("Category"); - - b.Navigation("Tag"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostCollection", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Collections") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_collections_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostFeaturedRecord", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPost", "Post") - .WithMany("FeaturedRecords") - .HasForeignKey("PostId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_featured_records_posts_post_id"); - - b.Navigation("Post"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostReaction", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPost", "Post") - .WithMany("Reactions") - .HasForeignKey("PostId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_reactions_posts_post_id"); - - b.Navigation("Post"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPublisherFeature", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Features") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_publisher_features_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPublisherMember", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Members") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_publisher_members_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPublisherSubscription", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Subscriptions") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_publisher_subscriptions_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnRealtimeCall", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnChatRoom", "Room") - .WithMany() - .HasForeignKey("RoomId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_chat_realtime_call_chat_rooms_room_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMember", "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.Shared.Models.SnSticker", b => - { - b.HasOne("DysonNetwork.Shared.Models.StickerPack", "Pack") - .WithMany("Stickers") - .HasForeignKey("PackId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_stickers_sticker_packs_pack_id"); - - b.Navigation("Pack"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.StickerPack", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany() - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_sticker_packs_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.StickerPackOwnership", b => - { - b.HasOne("DysonNetwork.Shared.Models.StickerPack", "Pack") - .WithMany("Ownerships") - .HasForeignKey("PackId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_sticker_pack_ownerships_sticker_packs_pack_id"); - - b.Navigation("Pack"); - }); - - 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.Shared.Models.SnPublisher", "Publisher") - .WithMany() - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_web_feeds_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Sphere.WebReader.WebFeedSubscription", b => - { - b.HasOne("DysonNetwork.Sphere.WebReader.WebFeed", "Feed") - .WithMany() - .HasForeignKey("FeedId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_web_feed_subscriptions_web_feeds_feed_id"); - - b.Navigation("Feed"); - }); - - modelBuilder.Entity("SnPostSnPostCategory", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPostCategory", null) - .WithMany() - .HasForeignKey("CategoriesId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_category_links_post_categories_categories_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPost", null) - .WithMany() - .HasForeignKey("PostsId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_category_links_posts_posts_id"); - }); - - modelBuilder.Entity("SnPostSnPostCollection", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPostCollection", null) - .WithMany() - .HasForeignKey("CollectionsId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_collection_links_post_collections_collections_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPost", null) - .WithMany() - .HasForeignKey("PostsId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_collection_links_posts_posts_id"); - }); - - modelBuilder.Entity("SnPostSnPostTag", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPost", null) - .WithMany() - .HasForeignKey("PostsId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_tag_links_posts_posts_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPostTag", null) - .WithMany() - .HasForeignKey("TagsId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_tag_links_post_tags_tags_id"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnChatMessage", b => - { - b.Navigation("Reactions"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnChatRoom", b => - { - b.Navigation("Members"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseActor", b => - { - b.Navigation("Activities"); - - b.Navigation("Contents"); - - b.Navigation("FollowerRelationships"); - - b.Navigation("FollowingRelationships"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseContent", b => - { - b.Navigation("Activities"); - - b.Navigation("Reactions"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseInstance", b => - { - b.Navigation("Actors"); - - b.Navigation("Contents"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPoll", b => - { - b.Navigation("Questions"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPost", b => - { - b.Navigation("Awards"); - - b.Navigation("FeaturedRecords"); - - b.Navigation("Reactions"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPublisher", b => - { - b.Navigation("Collections"); - - b.Navigation("Features"); - - b.Navigation("Members"); - - b.Navigation("Polls"); - - b.Navigation("Posts"); - - b.Navigation("Subscriptions"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.StickerPack", b => - { - b.Navigation("Ownerships"); - - b.Navigation("Stickers"); - }); - - modelBuilder.Entity("DysonNetwork.Sphere.WebReader.WebFeed", b => - { - b.Navigation("Articles"); - }); -#pragma warning restore 612, 618 - } - } -} diff --git a/DysonNetwork.Sphere/Migrations/20251228100758_AddActivityPub.cs b/DysonNetwork.Sphere/Migrations/20251228100758_AddActivityPub.cs deleted file mode 100644 index aa55412..0000000 --- a/DysonNetwork.Sphere/Migrations/20251228100758_AddActivityPub.cs +++ /dev/null @@ -1,350 +0,0 @@ -using System; -using System.Collections.Generic; -using DysonNetwork.Shared.Models; -using Microsoft.EntityFrameworkCore.Migrations; -using NodaTime; - -#nullable disable - -namespace DysonNetwork.Sphere.Migrations -{ - /// - public partial class AddActivityPub : Migration - { - /// - protected override void Up(MigrationBuilder migrationBuilder) - { - migrationBuilder.AddColumn>( - name: "meta", - table: "publishers", - type: "jsonb", - nullable: true); - - migrationBuilder.CreateTable( - name: "fediverse_instances", - columns: table => new - { - id = table.Column(type: "uuid", nullable: false), - domain = table.Column(type: "character varying(256)", maxLength: 256, nullable: false), - name = table.Column(type: "character varying(512)", maxLength: 512, nullable: true), - description = table.Column(type: "character varying(4096)", maxLength: 4096, nullable: true), - software = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: true), - version = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: true), - metadata = table.Column>(type: "jsonb", nullable: true), - is_blocked = table.Column(type: "boolean", nullable: false), - is_silenced = table.Column(type: "boolean", nullable: false), - block_reason = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: true), - last_fetched_at = table.Column(type: "timestamp with time zone", nullable: true), - last_activity_at = table.Column(type: "timestamp with time zone", nullable: true), - created_at = table.Column(type: "timestamp with time zone", nullable: false), - updated_at = table.Column(type: "timestamp with time zone", nullable: false), - deleted_at = table.Column(type: "timestamp with time zone", nullable: true) - }, - constraints: table => - { - table.PrimaryKey("pk_fediverse_instances", x => x.id); - }); - - migrationBuilder.CreateTable( - name: "fediverse_actors", - columns: table => new - { - id = table.Column(type: "uuid", nullable: false), - uri = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: false), - username = table.Column(type: "character varying(256)", maxLength: 256, nullable: false), - display_name = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: true), - bio = table.Column(type: "character varying(4096)", maxLength: 4096, nullable: true), - inbox_uri = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: true), - outbox_uri = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: true), - followers_uri = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: true), - following_uri = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: true), - featured_uri = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: true), - public_key_id = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: true), - public_key = table.Column(type: "character varying(8192)", maxLength: 8192, nullable: true), - metadata = table.Column>(type: "jsonb", nullable: true), - avatar_url = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: true), - header_url = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: true), - is_bot = table.Column(type: "boolean", nullable: false), - is_locked = table.Column(type: "boolean", nullable: false), - is_discoverable = table.Column(type: "boolean", nullable: false), - instance_id = table.Column(type: "uuid", nullable: false), - last_fetched_at = table.Column(type: "timestamp with time zone", nullable: true), - last_activity_at = table.Column(type: "timestamp with time zone", nullable: true), - created_at = table.Column(type: "timestamp with time zone", nullable: false), - updated_at = table.Column(type: "timestamp with time zone", nullable: false), - deleted_at = table.Column(type: "timestamp with time zone", nullable: true) - }, - constraints: table => - { - table.PrimaryKey("pk_fediverse_actors", x => x.id); - table.ForeignKey( - name: "fk_fediverse_actors_fediverse_instances_instance_id", - column: x => x.instance_id, - principalTable: "fediverse_instances", - principalColumn: "id", - onDelete: ReferentialAction.Cascade); - }); - - migrationBuilder.CreateTable( - name: "fediverse_contents", - columns: table => new - { - id = table.Column(type: "uuid", nullable: false), - uri = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: false), - type = table.Column(type: "integer", nullable: false), - title = table.Column(type: "character varying(1024)", maxLength: 1024, nullable: true), - summary = table.Column(type: "character varying(4096)", maxLength: 4096, nullable: true), - content = table.Column(type: "text", nullable: true), - content_html = table.Column(type: "text", nullable: true), - language = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: true), - in_reply_to = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: true), - announced_content_uri = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: true), - published_at = table.Column(type: "timestamp with time zone", nullable: true), - edited_at = table.Column(type: "timestamp with time zone", nullable: true), - is_sensitive = table.Column(type: "boolean", nullable: false), - // attachments = table.Column>(type: "jsonb", nullable: true), - // mentions = table.Column>(type: "jsonb", nullable: true), - // tags = table.Column>(type: "jsonb", nullable: true), - // emojis = table.Column>(type: "jsonb", nullable: true), - metadata = table.Column>(type: "jsonb", nullable: true), - actor_id = table.Column(type: "uuid", nullable: false), - instance_id = table.Column(type: "uuid", nullable: false), - reply_count = table.Column(type: "integer", nullable: false), - boost_count = table.Column(type: "integer", nullable: false), - like_count = table.Column(type: "integer", nullable: false), - local_post_id = table.Column(type: "uuid", nullable: true), - created_at = table.Column(type: "timestamp with time zone", nullable: false), - updated_at = table.Column(type: "timestamp with time zone", nullable: false), - deleted_at = table.Column(type: "timestamp with time zone", nullable: true) - }, - constraints: table => - { - table.PrimaryKey("pk_fediverse_contents", x => x.id); - table.ForeignKey( - name: "fk_fediverse_contents_fediverse_actors_actor_id", - column: x => x.actor_id, - principalTable: "fediverse_actors", - principalColumn: "id", - onDelete: ReferentialAction.Cascade); - table.ForeignKey( - name: "fk_fediverse_contents_fediverse_instances_instance_id", - column: x => x.instance_id, - principalTable: "fediverse_instances", - principalColumn: "id", - onDelete: ReferentialAction.Cascade); - }); - - migrationBuilder.CreateTable( - name: "fediverse_relationships", - columns: table => new - { - id = table.Column(type: "uuid", nullable: false), - actor_id = table.Column(type: "uuid", nullable: false), - target_actor_id = table.Column(type: "uuid", nullable: false), - state = table.Column(type: "integer", nullable: false), - is_following = table.Column(type: "boolean", nullable: false), - is_followed_by = table.Column(type: "boolean", nullable: false), - is_muting = table.Column(type: "boolean", nullable: false), - is_blocking = table.Column(type: "boolean", nullable: false), - followed_at = table.Column(type: "timestamp with time zone", nullable: true), - followed_back_at = table.Column(type: "timestamp with time zone", nullable: true), - reject_reason = table.Column(type: "character varying(4096)", maxLength: 4096, nullable: true), - is_local_actor = table.Column(type: "boolean", nullable: false), - local_account_id = table.Column(type: "uuid", nullable: true), - local_publisher_id = table.Column(type: "uuid", nullable: true), - created_at = table.Column(type: "timestamp with time zone", nullable: false), - updated_at = table.Column(type: "timestamp with time zone", nullable: false), - deleted_at = table.Column(type: "timestamp with time zone", nullable: true) - }, - constraints: table => - { - table.PrimaryKey("pk_fediverse_relationships", x => x.id); - table.ForeignKey( - name: "fk_fediverse_relationships_fediverse_actors_actor_id", - column: x => x.actor_id, - principalTable: "fediverse_actors", - principalColumn: "id", - onDelete: ReferentialAction.Cascade); - table.ForeignKey( - name: "fk_fediverse_relationships_fediverse_actors_target_actor_id", - column: x => x.target_actor_id, - principalTable: "fediverse_actors", - principalColumn: "id", - onDelete: ReferentialAction.Cascade); - }); - - migrationBuilder.CreateTable( - name: "fediverse_activities", - columns: table => new - { - id = table.Column(type: "uuid", nullable: false), - uri = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: false), - type = table.Column(type: "integer", nullable: false), - object_uri = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: true), - target_uri = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: true), - published_at = table.Column(type: "timestamp with time zone", nullable: true), - is_local = table.Column(type: "boolean", nullable: false), - raw_data = table.Column>(type: "jsonb", nullable: true), - actor_id = table.Column(type: "uuid", nullable: false), - content_id = table.Column(type: "uuid", nullable: true), - target_actor_id = table.Column(type: "uuid", nullable: true), - local_post_id = table.Column(type: "uuid", nullable: true), - local_account_id = table.Column(type: "uuid", nullable: true), - status = table.Column(type: "integer", nullable: false), - error_message = table.Column(type: "character varying(4096)", maxLength: 4096, nullable: true), - created_at = table.Column(type: "timestamp with time zone", nullable: false), - updated_at = table.Column(type: "timestamp with time zone", nullable: false), - deleted_at = table.Column(type: "timestamp with time zone", nullable: true) - }, - constraints: table => - { - table.PrimaryKey("pk_fediverse_activities", x => x.id); - table.ForeignKey( - name: "fk_fediverse_activities_fediverse_actors_actor_id", - column: x => x.actor_id, - principalTable: "fediverse_actors", - principalColumn: "id", - onDelete: ReferentialAction.Cascade); - table.ForeignKey( - name: "fk_fediverse_activities_fediverse_actors_target_actor_id", - column: x => x.target_actor_id, - principalTable: "fediverse_actors", - principalColumn: "id"); - table.ForeignKey( - name: "fk_fediverse_activities_fediverse_contents_content_id", - column: x => x.content_id, - principalTable: "fediverse_contents", - principalColumn: "id", - onDelete: ReferentialAction.Cascade); - }); - - migrationBuilder.CreateTable( - name: "fediverse_reactions", - columns: table => new - { - id = table.Column(type: "uuid", nullable: false), - uri = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: false), - type = table.Column(type: "integer", nullable: false), - emoji = table.Column(type: "character varying(64)", maxLength: 64, nullable: true), - is_local = table.Column(type: "boolean", nullable: false), - content_id = table.Column(type: "uuid", nullable: false), - actor_id = table.Column(type: "uuid", nullable: false), - local_account_id = table.Column(type: "uuid", nullable: true), - local_reaction_id = table.Column(type: "uuid", nullable: true), - created_at = table.Column(type: "timestamp with time zone", nullable: false), - updated_at = table.Column(type: "timestamp with time zone", nullable: false), - deleted_at = table.Column(type: "timestamp with time zone", nullable: true) - }, - constraints: table => - { - table.PrimaryKey("pk_fediverse_reactions", x => x.id); - table.ForeignKey( - name: "fk_fediverse_reactions_fediverse_actors_actor_id", - column: x => x.actor_id, - principalTable: "fediverse_actors", - principalColumn: "id", - onDelete: ReferentialAction.Cascade); - table.ForeignKey( - name: "fk_fediverse_reactions_fediverse_contents_content_id", - column: x => x.content_id, - principalTable: "fediverse_contents", - principalColumn: "id", - onDelete: ReferentialAction.Cascade); - }); - - migrationBuilder.CreateIndex( - name: "ix_fediverse_activities_actor_id", - table: "fediverse_activities", - column: "actor_id"); - - migrationBuilder.CreateIndex( - name: "ix_fediverse_activities_content_id", - table: "fediverse_activities", - column: "content_id"); - - migrationBuilder.CreateIndex( - name: "ix_fediverse_activities_target_actor_id", - table: "fediverse_activities", - column: "target_actor_id"); - - migrationBuilder.CreateIndex( - name: "ix_fediverse_actors_instance_id", - table: "fediverse_actors", - column: "instance_id"); - - migrationBuilder.CreateIndex( - name: "ix_fediverse_actors_uri", - table: "fediverse_actors", - column: "uri", - unique: true); - - migrationBuilder.CreateIndex( - name: "ix_fediverse_contents_actor_id", - table: "fediverse_contents", - column: "actor_id"); - - migrationBuilder.CreateIndex( - name: "ix_fediverse_contents_instance_id", - table: "fediverse_contents", - column: "instance_id"); - - migrationBuilder.CreateIndex( - name: "ix_fediverse_contents_uri", - table: "fediverse_contents", - column: "uri", - unique: true); - - migrationBuilder.CreateIndex( - name: "ix_fediverse_instances_domain", - table: "fediverse_instances", - column: "domain", - unique: true); - - migrationBuilder.CreateIndex( - name: "ix_fediverse_reactions_actor_id", - table: "fediverse_reactions", - column: "actor_id"); - - migrationBuilder.CreateIndex( - name: "ix_fediverse_reactions_content_id", - table: "fediverse_reactions", - column: "content_id"); - - migrationBuilder.CreateIndex( - name: "ix_fediverse_relationships_actor_id", - table: "fediverse_relationships", - column: "actor_id"); - - migrationBuilder.CreateIndex( - name: "ix_fediverse_relationships_target_actor_id", - table: "fediverse_relationships", - column: "target_actor_id"); - } - - /// - protected override void Down(MigrationBuilder migrationBuilder) - { - migrationBuilder.DropTable( - name: "fediverse_activities"); - - migrationBuilder.DropTable( - name: "fediverse_reactions"); - - migrationBuilder.DropTable( - name: "fediverse_relationships"); - - migrationBuilder.DropTable( - name: "fediverse_contents"); - - migrationBuilder.DropTable( - name: "fediverse_actors"); - - migrationBuilder.DropTable( - name: "fediverse_instances"); - - migrationBuilder.DropColumn( - name: "meta", - table: "publishers"); - } - } -} diff --git a/DysonNetwork.Sphere/Migrations/20251228165042_AddSeprateActorType.Designer.cs b/DysonNetwork.Sphere/Migrations/20251228165042_AddSeprateActorType.Designer.cs deleted file mode 100644 index e73cb5c..0000000 --- a/DysonNetwork.Sphere/Migrations/20251228165042_AddSeprateActorType.Designer.cs +++ /dev/null @@ -1,2663 +0,0 @@ -// -using System; -using System.Collections.Generic; -using System.Text.Json; -using DysonNetwork.Shared.Models; -using DysonNetwork.Sphere; -using DysonNetwork.Sphere.WebReader; -using Microsoft.EntityFrameworkCore; -using Microsoft.EntityFrameworkCore.Infrastructure; -using Microsoft.EntityFrameworkCore.Migrations; -using Microsoft.EntityFrameworkCore.Storage.ValueConversion; -using NodaTime; -using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; - -#nullable disable - -namespace DysonNetwork.Sphere.Migrations -{ - [DbContext(typeof(AppDatabase))] - [Migration("20251228165042_AddSeprateActorType")] - partial class AddSeprateActorType - { - /// - protected override void BuildTargetModel(ModelBuilder modelBuilder) - { -#pragma warning disable 612, 618 - modelBuilder - .HasAnnotation("ProductVersion", "10.0.1") - .HasAnnotation("Relational:MaxIdentifierLength", 63); - - NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnChatMember", 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("InvitedById") - .HasColumnType("uuid") - .HasColumnName("invited_by_id"); - - 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("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.HasIndex("InvitedById") - .HasDatabaseName("ix_chat_members_invited_by_id"); - - b.ToTable("chat_members", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnChatMessage", 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.PrimitiveCollection("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.Shared.Models.SnChatMessageReaction", 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.Shared.Models.SnChatRoom", 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("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("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.ToTable("chat_rooms", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseActivity", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("ActorId") - .HasColumnType("uuid") - .HasColumnName("actor_id"); - - b.Property("ContentId") - .HasColumnType("uuid") - .HasColumnName("content_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("ErrorMessage") - .HasMaxLength(4096) - .HasColumnType("character varying(4096)") - .HasColumnName("error_message"); - - b.Property("IsLocal") - .HasColumnType("boolean") - .HasColumnName("is_local"); - - b.Property("LocalAccountId") - .HasColumnType("uuid") - .HasColumnName("local_account_id"); - - b.Property("LocalPostId") - .HasColumnType("uuid") - .HasColumnName("local_post_id"); - - b.Property("ObjectUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("object_uri"); - - b.Property("PublishedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("published_at"); - - b.Property>("RawData") - .HasColumnType("jsonb") - .HasColumnName("raw_data"); - - b.Property("Status") - .HasColumnType("integer") - .HasColumnName("status"); - - b.Property("TargetActorId") - .HasColumnType("uuid") - .HasColumnName("target_actor_id"); - - b.Property("TargetUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("target_uri"); - - b.Property("Type") - .HasColumnType("integer") - .HasColumnName("type"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.Property("Uri") - .IsRequired() - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("uri"); - - b.HasKey("Id") - .HasName("pk_fediverse_activities"); - - b.HasIndex("ActorId") - .HasDatabaseName("ix_fediverse_activities_actor_id"); - - b.HasIndex("ContentId") - .HasDatabaseName("ix_fediverse_activities_content_id"); - - b.HasIndex("TargetActorId") - .HasDatabaseName("ix_fediverse_activities_target_actor_id"); - - b.ToTable("fediverse_activities", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseActor", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("AvatarUrl") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("avatar_url"); - - 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("DisplayName") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("display_name"); - - b.Property("FeaturedUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("featured_uri"); - - b.Property("FollowersUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("followers_uri"); - - b.Property("FollowingUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("following_uri"); - - b.Property("HeaderUrl") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("header_url"); - - b.Property("InboxUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("inbox_uri"); - - b.Property("InstanceId") - .HasColumnType("uuid") - .HasColumnName("instance_id"); - - b.Property("IsBot") - .HasColumnType("boolean") - .HasColumnName("is_bot"); - - b.Property("IsDiscoverable") - .HasColumnType("boolean") - .HasColumnName("is_discoverable"); - - b.Property("IsLocked") - .HasColumnType("boolean") - .HasColumnName("is_locked"); - - b.Property("LastActivityAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("last_activity_at"); - - b.Property("LastFetchedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("last_fetched_at"); - - b.Property>("Metadata") - .HasColumnType("jsonb") - .HasColumnName("metadata"); - - b.Property("OutboxUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("outbox_uri"); - - b.Property("PublicKey") - .HasMaxLength(8192) - .HasColumnType("character varying(8192)") - .HasColumnName("public_key"); - - b.Property("PublicKeyId") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("public_key_id"); - - b.Property("Type") - .IsRequired() - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("type"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.Property("Uri") - .IsRequired() - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("uri"); - - b.Property("Username") - .IsRequired() - .HasMaxLength(256) - .HasColumnType("character varying(256)") - .HasColumnName("username"); - - b.HasKey("Id") - .HasName("pk_fediverse_actors"); - - b.HasIndex("InstanceId") - .HasDatabaseName("ix_fediverse_actors_instance_id"); - - b.HasIndex("Uri") - .IsUnique() - .HasDatabaseName("ix_fediverse_actors_uri"); - - b.ToTable("fediverse_actors", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseContent", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("ActorId") - .HasColumnType("uuid") - .HasColumnName("actor_id"); - - b.Property("AnnouncedContentUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("announced_content_uri"); - - // b.Property>("Attachments") - // .HasColumnType("jsonb") - // .HasColumnName("attachments"); - - b.Property("BoostCount") - .HasColumnType("integer") - .HasColumnName("boost_count"); - - b.Property("Content") - .HasColumnType("text") - .HasColumnName("content"); - - b.Property("ContentHtml") - .HasColumnType("text") - .HasColumnName("content_html"); - - 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>("Emojis") - // .HasColumnType("jsonb") - // .HasColumnName("emojis"); - - b.Property("InReplyTo") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("in_reply_to"); - - b.Property("InstanceId") - .HasColumnType("uuid") - .HasColumnName("instance_id"); - - b.Property("IsSensitive") - .HasColumnType("boolean") - .HasColumnName("is_sensitive"); - - b.Property("Language") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("language"); - - b.Property("LikeCount") - .HasColumnType("integer") - .HasColumnName("like_count"); - - b.Property("LocalPostId") - .HasColumnType("uuid") - .HasColumnName("local_post_id"); - - // b.Property>("Mentions") - // .HasColumnType("jsonb") - // .HasColumnName("mentions"); - - b.Property>("Metadata") - .HasColumnType("jsonb") - .HasColumnName("metadata"); - - b.Property("PublishedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("published_at"); - - b.Property("ReplyCount") - .HasColumnType("integer") - .HasColumnName("reply_count"); - - b.Property("Summary") - .HasMaxLength(4096) - .HasColumnType("character varying(4096)") - .HasColumnName("summary"); - - // b.Property>("Tags") - // .HasColumnType("jsonb") - // .HasColumnName("tags"); - - 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("Uri") - .IsRequired() - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("uri"); - - b.HasKey("Id") - .HasName("pk_fediverse_contents"); - - b.HasIndex("ActorId") - .HasDatabaseName("ix_fediverse_contents_actor_id"); - - b.HasIndex("InstanceId") - .HasDatabaseName("ix_fediverse_contents_instance_id"); - - b.HasIndex("Uri") - .IsUnique() - .HasDatabaseName("ix_fediverse_contents_uri"); - - b.ToTable("fediverse_contents", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseInstance", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("BlockReason") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("block_reason"); - - 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("Domain") - .IsRequired() - .HasMaxLength(256) - .HasColumnType("character varying(256)") - .HasColumnName("domain"); - - b.Property("IsBlocked") - .HasColumnType("boolean") - .HasColumnName("is_blocked"); - - b.Property("IsSilenced") - .HasColumnType("boolean") - .HasColumnName("is_silenced"); - - b.Property("LastActivityAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("last_activity_at"); - - b.Property("LastFetchedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("last_fetched_at"); - - b.Property>("Metadata") - .HasColumnType("jsonb") - .HasColumnName("metadata"); - - b.Property("Name") - .HasMaxLength(512) - .HasColumnType("character varying(512)") - .HasColumnName("name"); - - b.Property("Software") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("software"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.Property("Version") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("version"); - - b.HasKey("Id") - .HasName("pk_fediverse_instances"); - - b.HasIndex("Domain") - .IsUnique() - .HasDatabaseName("ix_fediverse_instances_domain"); - - b.ToTable("fediverse_instances", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseReaction", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("ActorId") - .HasColumnType("uuid") - .HasColumnName("actor_id"); - - b.Property("ContentId") - .HasColumnType("uuid") - .HasColumnName("content_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("Emoji") - .HasMaxLength(64) - .HasColumnType("character varying(64)") - .HasColumnName("emoji"); - - b.Property("IsLocal") - .HasColumnType("boolean") - .HasColumnName("is_local"); - - b.Property("LocalAccountId") - .HasColumnType("uuid") - .HasColumnName("local_account_id"); - - b.Property("LocalReactionId") - .HasColumnType("uuid") - .HasColumnName("local_reaction_id"); - - b.Property("Type") - .HasColumnType("integer") - .HasColumnName("type"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.Property("Uri") - .IsRequired() - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("uri"); - - b.HasKey("Id") - .HasName("pk_fediverse_reactions"); - - b.HasIndex("ActorId") - .HasDatabaseName("ix_fediverse_reactions_actor_id"); - - b.HasIndex("ContentId") - .HasDatabaseName("ix_fediverse_reactions_content_id"); - - b.ToTable("fediverse_reactions", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseRelationship", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("ActorId") - .HasColumnType("uuid") - .HasColumnName("actor_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("FollowedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("followed_at"); - - b.Property("FollowedBackAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("followed_back_at"); - - b.Property("IsBlocking") - .HasColumnType("boolean") - .HasColumnName("is_blocking"); - - b.Property("IsFollowedBy") - .HasColumnType("boolean") - .HasColumnName("is_followed_by"); - - b.Property("IsFollowing") - .HasColumnType("boolean") - .HasColumnName("is_following"); - - b.Property("IsLocalActor") - .HasColumnType("boolean") - .HasColumnName("is_local_actor"); - - b.Property("IsMuting") - .HasColumnType("boolean") - .HasColumnName("is_muting"); - - b.Property("LocalAccountId") - .HasColumnType("uuid") - .HasColumnName("local_account_id"); - - b.Property("LocalPublisherId") - .HasColumnType("uuid") - .HasColumnName("local_publisher_id"); - - b.Property("RejectReason") - .HasMaxLength(4096) - .HasColumnType("character varying(4096)") - .HasColumnName("reject_reason"); - - b.Property("State") - .HasColumnType("integer") - .HasColumnName("state"); - - b.Property("TargetActorId") - .HasColumnType("uuid") - .HasColumnName("target_actor_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_fediverse_relationships"); - - b.HasIndex("ActorId") - .HasDatabaseName("ix_fediverse_relationships_actor_id"); - - b.HasIndex("TargetActorId") - .HasDatabaseName("ix_fediverse_relationships_target_actor_id"); - - b.ToTable("fediverse_relationships", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPoll", 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("EndedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("ended_at"); - - b.Property("IsAnonymous") - .HasColumnType("boolean") - .HasColumnName("is_anonymous"); - - b.Property("PublisherId") - .HasColumnType("uuid") - .HasColumnName("publisher_id"); - - b.Property("Title") - .HasMaxLength(1024) - .HasColumnType("character varying(1024)") - .HasColumnName("title"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_polls"); - - b.HasIndex("PublisherId") - .HasDatabaseName("ix_polls_publisher_id"); - - b.ToTable("polls", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPollAnswer", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("AccountId") - .HasColumnType("uuid") - .HasColumnName("account_id"); - - b.Property>("Answer") - .IsRequired() - .HasColumnType("jsonb") - .HasColumnName("answer"); - - b.Property("CreatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("created_at"); - - b.Property("DeletedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("deleted_at"); - - b.Property("PollId") - .HasColumnType("uuid") - .HasColumnName("poll_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_poll_answers"); - - b.HasIndex("PollId") - .HasDatabaseName("ix_poll_answers_poll_id"); - - b.ToTable("poll_answers", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPollQuestion", 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("IsRequired") - .HasColumnType("boolean") - .HasColumnName("is_required"); - - b.Property>("Options") - .HasColumnType("jsonb") - .HasColumnName("options"); - - b.Property("Order") - .HasColumnType("integer") - .HasColumnName("order"); - - b.Property("PollId") - .HasColumnType("uuid") - .HasColumnName("poll_id"); - - b.Property("Title") - .IsRequired() - .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.HasKey("Id") - .HasName("pk_poll_questions"); - - b.HasIndex("PollId") - .HasDatabaseName("ix_poll_questions_poll_id"); - - b.ToTable("poll_questions", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPost", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property>("Attachments") - .IsRequired() - .HasColumnType("jsonb") - .HasColumnName("attachments"); - - b.Property("AwardedScore") - .HasColumnType("numeric") - .HasColumnName("awarded_score"); - - 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("EmbedView") - .HasColumnType("jsonb") - .HasColumnName("embed_view"); - - b.Property("ForwardedGone") - .HasColumnType("boolean") - .HasColumnName("forwarded_gone"); - - b.Property("ForwardedPostId") - .HasColumnType("uuid") - .HasColumnName("forwarded_post_id"); - - b.Property>("Meta") - .HasColumnType("jsonb") - .HasColumnName("meta"); - - b.Property("PinMode") - .HasColumnType("integer") - .HasColumnName("pin_mode"); - - b.Property("PublishedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("published_at"); - - b.Property("PublisherId") - .HasColumnType("uuid") - .HasColumnName("publisher_id"); - - b.Property("RealmId") - .HasColumnType("uuid") - .HasColumnName("realm_id"); - - b.Property("RepliedGone") - .HasColumnType("boolean") - .HasColumnName("replied_gone"); - - b.Property("RepliedPostId") - .HasColumnType("uuid") - .HasColumnName("replied_post_id"); - - b.PrimitiveCollection("SensitiveMarks") - .HasColumnType("jsonb") - .HasColumnName("sensitive_marks"); - - b.Property("Slug") - .HasMaxLength(1024) - .HasColumnType("character varying(1024)") - .HasColumnName("slug"); - - 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.ToTable("posts", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostAward", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("AccountId") - .HasColumnType("uuid") - .HasColumnName("account_id"); - - b.Property("Amount") - .HasColumnType("numeric") - .HasColumnName("amount"); - - 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("Message") - .HasMaxLength(4096) - .HasColumnType("character varying(4096)") - .HasColumnName("message"); - - b.Property("PostId") - .HasColumnType("uuid") - .HasColumnName("post_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_post_awards"); - - b.HasIndex("PostId") - .HasDatabaseName("ix_post_awards_post_id"); - - b.ToTable("post_awards", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostCategory", 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.Shared.Models.SnPostCategorySubscription", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("AccountId") - .HasColumnType("uuid") - .HasColumnName("account_id"); - - b.Property("CategoryId") - .HasColumnType("uuid") - .HasColumnName("category_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("TagId") - .HasColumnType("uuid") - .HasColumnName("tag_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_post_category_subscriptions"); - - b.HasIndex("CategoryId") - .HasDatabaseName("ix_post_category_subscriptions_category_id"); - - b.HasIndex("TagId") - .HasDatabaseName("ix_post_category_subscriptions_tag_id"); - - b.ToTable("post_category_subscriptions", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostCollection", 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.Shared.Models.SnPostFeaturedRecord", 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("FeaturedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("featured_at"); - - b.Property("PostId") - .HasColumnType("uuid") - .HasColumnName("post_id"); - - b.Property("SocialCredits") - .HasColumnType("integer") - .HasColumnName("social_credits"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_post_featured_records"); - - b.HasIndex("PostId") - .HasDatabaseName("ix_post_featured_records_post_id"); - - b.ToTable("post_featured_records", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostReaction", 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.Shared.Models.SnPostTag", 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.Shared.Models.SnPublisher", 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("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>("Meta") - .HasColumnType("jsonb") - .HasColumnName("meta"); - - 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("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.ToTable("publishers", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPublisherFeature", 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.Shared.Models.SnPublisherMember", 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.Shared.Models.SnPublisherSubscription", 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.Shared.Models.SnRealtimeCall", 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.Shared.Models.SnSticker", 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") - .IsRequired() - .HasColumnType("jsonb") - .HasColumnName("image"); - - 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.Shared.Models.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("Icon") - .HasColumnType("jsonb") - .HasColumnName("icon"); - - 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.Shared.Models.StickerPackOwnership", 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("PackId") - .HasColumnType("uuid") - .HasColumnName("pack_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_sticker_pack_ownerships"); - - b.HasIndex("PackId") - .HasDatabaseName("ix_sticker_pack_ownerships_pack_id"); - - b.ToTable("sticker_pack_ownerships", (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("DysonNetwork.Sphere.WebReader.WebFeedSubscription", 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("FeedId") - .HasColumnType("uuid") - .HasColumnName("feed_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_web_feed_subscriptions"); - - b.HasIndex("FeedId") - .HasDatabaseName("ix_web_feed_subscriptions_feed_id"); - - b.ToTable("web_feed_subscriptions", (string)null); - }); - - modelBuilder.Entity("SnPostSnPostCategory", 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("SnPostSnPostCollection", 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("SnPostSnPostTag", 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.Shared.Models.SnChatMember", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnChatRoom", "ChatRoom") - .WithMany("Members") - .HasForeignKey("ChatRoomId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_chat_members_chat_rooms_chat_room_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMember", "InvitedBy") - .WithMany() - .HasForeignKey("InvitedById") - .HasConstraintName("fk_chat_members_chat_members_invited_by_id"); - - b.Navigation("ChatRoom"); - - b.Navigation("InvitedBy"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnChatMessage", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnChatRoom", "ChatRoom") - .WithMany() - .HasForeignKey("ChatRoomId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_chat_messages_chat_rooms_chat_room_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMessage", "ForwardedMessage") - .WithMany() - .HasForeignKey("ForwardedMessageId") - .OnDelete(DeleteBehavior.Restrict) - .HasConstraintName("fk_chat_messages_chat_messages_forwarded_message_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMessage", "RepliedMessage") - .WithMany() - .HasForeignKey("RepliedMessageId") - .OnDelete(DeleteBehavior.Restrict) - .HasConstraintName("fk_chat_messages_chat_messages_replied_message_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMember", "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.Shared.Models.SnChatMessageReaction", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnChatMessage", "Message") - .WithMany("Reactions") - .HasForeignKey("MessageId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_chat_reactions_chat_messages_message_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMember", "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.Shared.Models.SnFediverseActivity", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "Actor") - .WithMany("Activities") - .HasForeignKey("ActorId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_activities_fediverse_actors_actor_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnFediverseContent", "Content") - .WithMany("Activities") - .HasForeignKey("ContentId") - .OnDelete(DeleteBehavior.Cascade) - .HasConstraintName("fk_fediverse_activities_fediverse_contents_content_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "TargetActor") - .WithMany() - .HasForeignKey("TargetActorId") - .HasConstraintName("fk_fediverse_activities_fediverse_actors_target_actor_id"); - - b.Navigation("Actor"); - - b.Navigation("Content"); - - b.Navigation("TargetActor"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseActor", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnFediverseInstance", "Instance") - .WithMany("Actors") - .HasForeignKey("InstanceId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_actors_fediverse_instances_instance_id"); - - b.Navigation("Instance"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseContent", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "Actor") - .WithMany("Contents") - .HasForeignKey("ActorId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_contents_fediverse_actors_actor_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnFediverseInstance", "Instance") - .WithMany("Contents") - .HasForeignKey("InstanceId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_contents_fediverse_instances_instance_id"); - - b.Navigation("Actor"); - - b.Navigation("Instance"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseReaction", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "Actor") - .WithMany() - .HasForeignKey("ActorId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_reactions_fediverse_actors_actor_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnFediverseContent", "Content") - .WithMany("Reactions") - .HasForeignKey("ContentId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_reactions_fediverse_contents_content_id"); - - b.Navigation("Actor"); - - b.Navigation("Content"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseRelationship", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "Actor") - .WithMany("FollowingRelationships") - .HasForeignKey("ActorId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_relationships_fediverse_actors_actor_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "TargetActor") - .WithMany("FollowerRelationships") - .HasForeignKey("TargetActorId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_relationships_fediverse_actors_target_actor_id"); - - b.Navigation("Actor"); - - b.Navigation("TargetActor"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPoll", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Polls") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_polls_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPollAnswer", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPoll", "Poll") - .WithMany() - .HasForeignKey("PollId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_poll_answers_polls_poll_id"); - - b.Navigation("Poll"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPollQuestion", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPoll", "Poll") - .WithMany("Questions") - .HasForeignKey("PollId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_poll_questions_polls_poll_id"); - - b.Navigation("Poll"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPost", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPost", "ForwardedPost") - .WithMany() - .HasForeignKey("ForwardedPostId") - .OnDelete(DeleteBehavior.Restrict) - .HasConstraintName("fk_posts_posts_forwarded_post_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Posts") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_posts_publishers_publisher_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPost", "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.Shared.Models.SnPostAward", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPost", "Post") - .WithMany("Awards") - .HasForeignKey("PostId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_awards_posts_post_id"); - - b.Navigation("Post"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostCategorySubscription", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPostCategory", "Category") - .WithMany() - .HasForeignKey("CategoryId") - .HasConstraintName("fk_post_category_subscriptions_post_categories_category_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPostTag", "Tag") - .WithMany() - .HasForeignKey("TagId") - .HasConstraintName("fk_post_category_subscriptions_post_tags_tag_id"); - - b.Navigation("Category"); - - b.Navigation("Tag"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostCollection", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Collections") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_collections_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostFeaturedRecord", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPost", "Post") - .WithMany("FeaturedRecords") - .HasForeignKey("PostId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_featured_records_posts_post_id"); - - b.Navigation("Post"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostReaction", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPost", "Post") - .WithMany("Reactions") - .HasForeignKey("PostId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_reactions_posts_post_id"); - - b.Navigation("Post"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPublisherFeature", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Features") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_publisher_features_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPublisherMember", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Members") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_publisher_members_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPublisherSubscription", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Subscriptions") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_publisher_subscriptions_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnRealtimeCall", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnChatRoom", "Room") - .WithMany() - .HasForeignKey("RoomId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_chat_realtime_call_chat_rooms_room_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMember", "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.Shared.Models.SnSticker", b => - { - b.HasOne("DysonNetwork.Shared.Models.StickerPack", "Pack") - .WithMany("Stickers") - .HasForeignKey("PackId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_stickers_sticker_packs_pack_id"); - - b.Navigation("Pack"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.StickerPack", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany() - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_sticker_packs_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.StickerPackOwnership", b => - { - b.HasOne("DysonNetwork.Shared.Models.StickerPack", "Pack") - .WithMany("Ownerships") - .HasForeignKey("PackId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_sticker_pack_ownerships_sticker_packs_pack_id"); - - b.Navigation("Pack"); - }); - - 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.Shared.Models.SnPublisher", "Publisher") - .WithMany() - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_web_feeds_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Sphere.WebReader.WebFeedSubscription", b => - { - b.HasOne("DysonNetwork.Sphere.WebReader.WebFeed", "Feed") - .WithMany() - .HasForeignKey("FeedId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_web_feed_subscriptions_web_feeds_feed_id"); - - b.Navigation("Feed"); - }); - - modelBuilder.Entity("SnPostSnPostCategory", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPostCategory", null) - .WithMany() - .HasForeignKey("CategoriesId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_category_links_post_categories_categories_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPost", null) - .WithMany() - .HasForeignKey("PostsId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_category_links_posts_posts_id"); - }); - - modelBuilder.Entity("SnPostSnPostCollection", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPostCollection", null) - .WithMany() - .HasForeignKey("CollectionsId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_collection_links_post_collections_collections_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPost", null) - .WithMany() - .HasForeignKey("PostsId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_collection_links_posts_posts_id"); - }); - - modelBuilder.Entity("SnPostSnPostTag", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPost", null) - .WithMany() - .HasForeignKey("PostsId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_tag_links_posts_posts_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPostTag", null) - .WithMany() - .HasForeignKey("TagsId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_tag_links_post_tags_tags_id"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnChatMessage", b => - { - b.Navigation("Reactions"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnChatRoom", b => - { - b.Navigation("Members"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseActor", b => - { - b.Navigation("Activities"); - - b.Navigation("Contents"); - - b.Navigation("FollowerRelationships"); - - b.Navigation("FollowingRelationships"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseContent", b => - { - b.Navigation("Activities"); - - b.Navigation("Reactions"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseInstance", b => - { - b.Navigation("Actors"); - - b.Navigation("Contents"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPoll", b => - { - b.Navigation("Questions"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPost", b => - { - b.Navigation("Awards"); - - b.Navigation("FeaturedRecords"); - - b.Navigation("Reactions"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPublisher", b => - { - b.Navigation("Collections"); - - b.Navigation("Features"); - - b.Navigation("Members"); - - b.Navigation("Polls"); - - b.Navigation("Posts"); - - b.Navigation("Subscriptions"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.StickerPack", b => - { - b.Navigation("Ownerships"); - - b.Navigation("Stickers"); - }); - - modelBuilder.Entity("DysonNetwork.Sphere.WebReader.WebFeed", b => - { - b.Navigation("Articles"); - }); -#pragma warning restore 612, 618 - } - } -} diff --git a/DysonNetwork.Sphere/Migrations/20251228165042_AddSeprateActorType.cs b/DysonNetwork.Sphere/Migrations/20251228165042_AddSeprateActorType.cs deleted file mode 100644 index 385d192..0000000 --- a/DysonNetwork.Sphere/Migrations/20251228165042_AddSeprateActorType.cs +++ /dev/null @@ -1,30 +0,0 @@ -using Microsoft.EntityFrameworkCore.Migrations; - -#nullable disable - -namespace DysonNetwork.Sphere.Migrations -{ - /// - public partial class AddSeprateActorType : Migration - { - /// - protected override void Up(MigrationBuilder migrationBuilder) - { - migrationBuilder.AddColumn( - name: "type", - table: "fediverse_actors", - type: "character varying(2048)", - maxLength: 2048, - nullable: false, - defaultValue: "Person"); - } - - /// - protected override void Down(MigrationBuilder migrationBuilder) - { - migrationBuilder.DropColumn( - name: "type", - table: "fediverse_actors"); - } - } -} diff --git a/DysonNetwork.Sphere/Migrations/20251228173217_EnrichFediverseInstance.Designer.cs b/DysonNetwork.Sphere/Migrations/20251228173217_EnrichFediverseInstance.Designer.cs deleted file mode 100644 index 42e28a5..0000000 --- a/DysonNetwork.Sphere/Migrations/20251228173217_EnrichFediverseInstance.Designer.cs +++ /dev/null @@ -1,2691 +0,0 @@ -// -using System; -using System.Collections.Generic; -using System.Text.Json; -using DysonNetwork.Shared.Models; -using DysonNetwork.Sphere; -using DysonNetwork.Sphere.WebReader; -using Microsoft.EntityFrameworkCore; -using Microsoft.EntityFrameworkCore.Infrastructure; -using Microsoft.EntityFrameworkCore.Migrations; -using Microsoft.EntityFrameworkCore.Storage.ValueConversion; -using NodaTime; -using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; - -#nullable disable - -namespace DysonNetwork.Sphere.Migrations -{ - [DbContext(typeof(AppDatabase))] - [Migration("20251228173217_EnrichFediverseInstance")] - partial class EnrichFediverseInstance - { - /// - protected override void BuildTargetModel(ModelBuilder modelBuilder) - { -#pragma warning disable 612, 618 - modelBuilder - .HasAnnotation("ProductVersion", "10.0.1") - .HasAnnotation("Relational:MaxIdentifierLength", 63); - - NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnChatMember", 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("InvitedById") - .HasColumnType("uuid") - .HasColumnName("invited_by_id"); - - 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("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.HasIndex("InvitedById") - .HasDatabaseName("ix_chat_members_invited_by_id"); - - b.ToTable("chat_members", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnChatMessage", 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.PrimitiveCollection("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.Shared.Models.SnChatMessageReaction", 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.Shared.Models.SnChatRoom", 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("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("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.ToTable("chat_rooms", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseActivity", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("ActorId") - .HasColumnType("uuid") - .HasColumnName("actor_id"); - - b.Property("ContentId") - .HasColumnType("uuid") - .HasColumnName("content_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("ErrorMessage") - .HasMaxLength(4096) - .HasColumnType("character varying(4096)") - .HasColumnName("error_message"); - - b.Property("IsLocal") - .HasColumnType("boolean") - .HasColumnName("is_local"); - - b.Property("LocalAccountId") - .HasColumnType("uuid") - .HasColumnName("local_account_id"); - - b.Property("LocalPostId") - .HasColumnType("uuid") - .HasColumnName("local_post_id"); - - b.Property("ObjectUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("object_uri"); - - b.Property("PublishedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("published_at"); - - b.Property>("RawData") - .HasColumnType("jsonb") - .HasColumnName("raw_data"); - - b.Property("Status") - .HasColumnType("integer") - .HasColumnName("status"); - - b.Property("TargetActorId") - .HasColumnType("uuid") - .HasColumnName("target_actor_id"); - - b.Property("TargetUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("target_uri"); - - b.Property("Type") - .HasColumnType("integer") - .HasColumnName("type"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.Property("Uri") - .IsRequired() - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("uri"); - - b.HasKey("Id") - .HasName("pk_fediverse_activities"); - - b.HasIndex("ActorId") - .HasDatabaseName("ix_fediverse_activities_actor_id"); - - b.HasIndex("ContentId") - .HasDatabaseName("ix_fediverse_activities_content_id"); - - b.HasIndex("TargetActorId") - .HasDatabaseName("ix_fediverse_activities_target_actor_id"); - - b.ToTable("fediverse_activities", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseActor", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("AvatarUrl") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("avatar_url"); - - 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("DisplayName") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("display_name"); - - b.Property("FeaturedUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("featured_uri"); - - b.Property("FollowersUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("followers_uri"); - - b.Property("FollowingUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("following_uri"); - - b.Property("HeaderUrl") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("header_url"); - - b.Property("InboxUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("inbox_uri"); - - b.Property("InstanceId") - .HasColumnType("uuid") - .HasColumnName("instance_id"); - - b.Property("IsBot") - .HasColumnType("boolean") - .HasColumnName("is_bot"); - - b.Property("IsDiscoverable") - .HasColumnType("boolean") - .HasColumnName("is_discoverable"); - - b.Property("IsLocked") - .HasColumnType("boolean") - .HasColumnName("is_locked"); - - b.Property("LastActivityAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("last_activity_at"); - - b.Property("LastFetchedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("last_fetched_at"); - - b.Property>("Metadata") - .HasColumnType("jsonb") - .HasColumnName("metadata"); - - b.Property("OutboxUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("outbox_uri"); - - b.Property("PublicKey") - .HasMaxLength(8192) - .HasColumnType("character varying(8192)") - .HasColumnName("public_key"); - - b.Property("PublicKeyId") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("public_key_id"); - - b.Property("Type") - .IsRequired() - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("type"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.Property("Uri") - .IsRequired() - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("uri"); - - b.Property("Username") - .IsRequired() - .HasMaxLength(256) - .HasColumnType("character varying(256)") - .HasColumnName("username"); - - b.HasKey("Id") - .HasName("pk_fediverse_actors"); - - b.HasIndex("InstanceId") - .HasDatabaseName("ix_fediverse_actors_instance_id"); - - b.HasIndex("Uri") - .IsUnique() - .HasDatabaseName("ix_fediverse_actors_uri"); - - b.ToTable("fediverse_actors", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseContent", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("ActorId") - .HasColumnType("uuid") - .HasColumnName("actor_id"); - - b.Property("AnnouncedContentUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("announced_content_uri"); - - // b.Property>("Attachments") - // .HasColumnType("jsonb") - // .HasColumnName("attachments"); - - b.Property("BoostCount") - .HasColumnType("integer") - .HasColumnName("boost_count"); - - b.Property("Content") - .HasColumnType("text") - .HasColumnName("content"); - - b.Property("ContentHtml") - .HasColumnType("text") - .HasColumnName("content_html"); - - 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>("Emojis") - // .HasColumnType("jsonb") - // .HasColumnName("emojis"); - - b.Property("InReplyTo") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("in_reply_to"); - - b.Property("InstanceId") - .HasColumnType("uuid") - .HasColumnName("instance_id"); - - b.Property("IsSensitive") - .HasColumnType("boolean") - .HasColumnName("is_sensitive"); - - b.Property("Language") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("language"); - - b.Property("LikeCount") - .HasColumnType("integer") - .HasColumnName("like_count"); - - b.Property("LocalPostId") - .HasColumnType("uuid") - .HasColumnName("local_post_id"); - - // b.Property>("Mentions") - // .HasColumnType("jsonb") - // .HasColumnName("mentions"); - - b.Property>("Metadata") - .HasColumnType("jsonb") - .HasColumnName("metadata"); - - b.Property("PublishedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("published_at"); - - b.Property("ReplyCount") - .HasColumnType("integer") - .HasColumnName("reply_count"); - - b.Property("Summary") - .HasMaxLength(4096) - .HasColumnType("character varying(4096)") - .HasColumnName("summary"); - - // b.Property>("Tags") - // .HasColumnType("jsonb") - // .HasColumnName("tags"); - - 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("Uri") - .IsRequired() - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("uri"); - - b.HasKey("Id") - .HasName("pk_fediverse_contents"); - - b.HasIndex("ActorId") - .HasDatabaseName("ix_fediverse_contents_actor_id"); - - b.HasIndex("InstanceId") - .HasDatabaseName("ix_fediverse_contents_instance_id"); - - b.HasIndex("Uri") - .IsUnique() - .HasDatabaseName("ix_fediverse_contents_uri"); - - b.ToTable("fediverse_contents", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseInstance", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("ActiveUsers") - .HasColumnType("integer") - .HasColumnName("active_users"); - - b.Property("BlockReason") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("block_reason"); - - b.Property("ContactAccountUsername") - .HasMaxLength(256) - .HasColumnType("character varying(256)") - .HasColumnName("contact_account_username"); - - b.Property("ContactEmail") - .HasMaxLength(512) - .HasColumnType("character varying(512)") - .HasColumnName("contact_email"); - - 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("Domain") - .IsRequired() - .HasMaxLength(256) - .HasColumnType("character varying(256)") - .HasColumnName("domain"); - - b.Property("IconUrl") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("icon_url"); - - b.Property("IsBlocked") - .HasColumnType("boolean") - .HasColumnName("is_blocked"); - - b.Property("IsSilenced") - .HasColumnType("boolean") - .HasColumnName("is_silenced"); - - b.Property("LastActivityAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("last_activity_at"); - - b.Property("LastFetchedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("last_fetched_at"); - - b.Property>("Metadata") - .HasColumnType("jsonb") - .HasColumnName("metadata"); - - b.Property("MetadataFetchedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("metadata_fetched_at"); - - b.Property("Name") - .HasMaxLength(512) - .HasColumnType("character varying(512)") - .HasColumnName("name"); - - b.Property("Software") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("software"); - - b.Property("ThumbnailUrl") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("thumbnail_url"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.Property("Version") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("version"); - - b.HasKey("Id") - .HasName("pk_fediverse_instances"); - - b.HasIndex("Domain") - .IsUnique() - .HasDatabaseName("ix_fediverse_instances_domain"); - - b.ToTable("fediverse_instances", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseReaction", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("ActorId") - .HasColumnType("uuid") - .HasColumnName("actor_id"); - - b.Property("ContentId") - .HasColumnType("uuid") - .HasColumnName("content_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("Emoji") - .HasMaxLength(64) - .HasColumnType("character varying(64)") - .HasColumnName("emoji"); - - b.Property("IsLocal") - .HasColumnType("boolean") - .HasColumnName("is_local"); - - b.Property("LocalAccountId") - .HasColumnType("uuid") - .HasColumnName("local_account_id"); - - b.Property("LocalReactionId") - .HasColumnType("uuid") - .HasColumnName("local_reaction_id"); - - b.Property("Type") - .HasColumnType("integer") - .HasColumnName("type"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.Property("Uri") - .IsRequired() - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("uri"); - - b.HasKey("Id") - .HasName("pk_fediverse_reactions"); - - b.HasIndex("ActorId") - .HasDatabaseName("ix_fediverse_reactions_actor_id"); - - b.HasIndex("ContentId") - .HasDatabaseName("ix_fediverse_reactions_content_id"); - - b.ToTable("fediverse_reactions", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseRelationship", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("ActorId") - .HasColumnType("uuid") - .HasColumnName("actor_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("FollowedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("followed_at"); - - b.Property("FollowedBackAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("followed_back_at"); - - b.Property("IsBlocking") - .HasColumnType("boolean") - .HasColumnName("is_blocking"); - - b.Property("IsFollowedBy") - .HasColumnType("boolean") - .HasColumnName("is_followed_by"); - - b.Property("IsFollowing") - .HasColumnType("boolean") - .HasColumnName("is_following"); - - b.Property("IsLocalActor") - .HasColumnType("boolean") - .HasColumnName("is_local_actor"); - - b.Property("IsMuting") - .HasColumnType("boolean") - .HasColumnName("is_muting"); - - b.Property("LocalAccountId") - .HasColumnType("uuid") - .HasColumnName("local_account_id"); - - b.Property("LocalPublisherId") - .HasColumnType("uuid") - .HasColumnName("local_publisher_id"); - - b.Property("RejectReason") - .HasMaxLength(4096) - .HasColumnType("character varying(4096)") - .HasColumnName("reject_reason"); - - b.Property("State") - .HasColumnType("integer") - .HasColumnName("state"); - - b.Property("TargetActorId") - .HasColumnType("uuid") - .HasColumnName("target_actor_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_fediverse_relationships"); - - b.HasIndex("ActorId") - .HasDatabaseName("ix_fediverse_relationships_actor_id"); - - b.HasIndex("TargetActorId") - .HasDatabaseName("ix_fediverse_relationships_target_actor_id"); - - b.ToTable("fediverse_relationships", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPoll", 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("EndedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("ended_at"); - - b.Property("IsAnonymous") - .HasColumnType("boolean") - .HasColumnName("is_anonymous"); - - b.Property("PublisherId") - .HasColumnType("uuid") - .HasColumnName("publisher_id"); - - b.Property("Title") - .HasMaxLength(1024) - .HasColumnType("character varying(1024)") - .HasColumnName("title"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_polls"); - - b.HasIndex("PublisherId") - .HasDatabaseName("ix_polls_publisher_id"); - - b.ToTable("polls", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPollAnswer", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("AccountId") - .HasColumnType("uuid") - .HasColumnName("account_id"); - - b.Property>("Answer") - .IsRequired() - .HasColumnType("jsonb") - .HasColumnName("answer"); - - b.Property("CreatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("created_at"); - - b.Property("DeletedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("deleted_at"); - - b.Property("PollId") - .HasColumnType("uuid") - .HasColumnName("poll_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_poll_answers"); - - b.HasIndex("PollId") - .HasDatabaseName("ix_poll_answers_poll_id"); - - b.ToTable("poll_answers", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPollQuestion", 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("IsRequired") - .HasColumnType("boolean") - .HasColumnName("is_required"); - - b.Property>("Options") - .HasColumnType("jsonb") - .HasColumnName("options"); - - b.Property("Order") - .HasColumnType("integer") - .HasColumnName("order"); - - b.Property("PollId") - .HasColumnType("uuid") - .HasColumnName("poll_id"); - - b.Property("Title") - .IsRequired() - .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.HasKey("Id") - .HasName("pk_poll_questions"); - - b.HasIndex("PollId") - .HasDatabaseName("ix_poll_questions_poll_id"); - - b.ToTable("poll_questions", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPost", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property>("Attachments") - .IsRequired() - .HasColumnType("jsonb") - .HasColumnName("attachments"); - - b.Property("AwardedScore") - .HasColumnType("numeric") - .HasColumnName("awarded_score"); - - 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("EmbedView") - .HasColumnType("jsonb") - .HasColumnName("embed_view"); - - b.Property("ForwardedGone") - .HasColumnType("boolean") - .HasColumnName("forwarded_gone"); - - b.Property("ForwardedPostId") - .HasColumnType("uuid") - .HasColumnName("forwarded_post_id"); - - b.Property>("Meta") - .HasColumnType("jsonb") - .HasColumnName("meta"); - - b.Property("PinMode") - .HasColumnType("integer") - .HasColumnName("pin_mode"); - - b.Property("PublishedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("published_at"); - - b.Property("PublisherId") - .HasColumnType("uuid") - .HasColumnName("publisher_id"); - - b.Property("RealmId") - .HasColumnType("uuid") - .HasColumnName("realm_id"); - - b.Property("RepliedGone") - .HasColumnType("boolean") - .HasColumnName("replied_gone"); - - b.Property("RepliedPostId") - .HasColumnType("uuid") - .HasColumnName("replied_post_id"); - - b.PrimitiveCollection("SensitiveMarks") - .HasColumnType("jsonb") - .HasColumnName("sensitive_marks"); - - b.Property("Slug") - .HasMaxLength(1024) - .HasColumnType("character varying(1024)") - .HasColumnName("slug"); - - 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.ToTable("posts", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostAward", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("AccountId") - .HasColumnType("uuid") - .HasColumnName("account_id"); - - b.Property("Amount") - .HasColumnType("numeric") - .HasColumnName("amount"); - - 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("Message") - .HasMaxLength(4096) - .HasColumnType("character varying(4096)") - .HasColumnName("message"); - - b.Property("PostId") - .HasColumnType("uuid") - .HasColumnName("post_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_post_awards"); - - b.HasIndex("PostId") - .HasDatabaseName("ix_post_awards_post_id"); - - b.ToTable("post_awards", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostCategory", 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.Shared.Models.SnPostCategorySubscription", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("AccountId") - .HasColumnType("uuid") - .HasColumnName("account_id"); - - b.Property("CategoryId") - .HasColumnType("uuid") - .HasColumnName("category_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("TagId") - .HasColumnType("uuid") - .HasColumnName("tag_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_post_category_subscriptions"); - - b.HasIndex("CategoryId") - .HasDatabaseName("ix_post_category_subscriptions_category_id"); - - b.HasIndex("TagId") - .HasDatabaseName("ix_post_category_subscriptions_tag_id"); - - b.ToTable("post_category_subscriptions", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostCollection", 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.Shared.Models.SnPostFeaturedRecord", 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("FeaturedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("featured_at"); - - b.Property("PostId") - .HasColumnType("uuid") - .HasColumnName("post_id"); - - b.Property("SocialCredits") - .HasColumnType("integer") - .HasColumnName("social_credits"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_post_featured_records"); - - b.HasIndex("PostId") - .HasDatabaseName("ix_post_featured_records_post_id"); - - b.ToTable("post_featured_records", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostReaction", 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.Shared.Models.SnPostTag", 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.Shared.Models.SnPublisher", 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("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>("Meta") - .HasColumnType("jsonb") - .HasColumnName("meta"); - - 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("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.ToTable("publishers", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPublisherFeature", 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.Shared.Models.SnPublisherMember", 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.Shared.Models.SnPublisherSubscription", 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.Shared.Models.SnRealtimeCall", 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.Shared.Models.SnSticker", 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") - .IsRequired() - .HasColumnType("jsonb") - .HasColumnName("image"); - - 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.Shared.Models.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("Icon") - .HasColumnType("jsonb") - .HasColumnName("icon"); - - 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.Shared.Models.StickerPackOwnership", 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("PackId") - .HasColumnType("uuid") - .HasColumnName("pack_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_sticker_pack_ownerships"); - - b.HasIndex("PackId") - .HasDatabaseName("ix_sticker_pack_ownerships_pack_id"); - - b.ToTable("sticker_pack_ownerships", (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("DysonNetwork.Sphere.WebReader.WebFeedSubscription", 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("FeedId") - .HasColumnType("uuid") - .HasColumnName("feed_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_web_feed_subscriptions"); - - b.HasIndex("FeedId") - .HasDatabaseName("ix_web_feed_subscriptions_feed_id"); - - b.ToTable("web_feed_subscriptions", (string)null); - }); - - modelBuilder.Entity("SnPostSnPostCategory", 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("SnPostSnPostCollection", 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("SnPostSnPostTag", 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.Shared.Models.SnChatMember", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnChatRoom", "ChatRoom") - .WithMany("Members") - .HasForeignKey("ChatRoomId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_chat_members_chat_rooms_chat_room_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMember", "InvitedBy") - .WithMany() - .HasForeignKey("InvitedById") - .HasConstraintName("fk_chat_members_chat_members_invited_by_id"); - - b.Navigation("ChatRoom"); - - b.Navigation("InvitedBy"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnChatMessage", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnChatRoom", "ChatRoom") - .WithMany() - .HasForeignKey("ChatRoomId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_chat_messages_chat_rooms_chat_room_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMessage", "ForwardedMessage") - .WithMany() - .HasForeignKey("ForwardedMessageId") - .OnDelete(DeleteBehavior.Restrict) - .HasConstraintName("fk_chat_messages_chat_messages_forwarded_message_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMessage", "RepliedMessage") - .WithMany() - .HasForeignKey("RepliedMessageId") - .OnDelete(DeleteBehavior.Restrict) - .HasConstraintName("fk_chat_messages_chat_messages_replied_message_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMember", "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.Shared.Models.SnChatMessageReaction", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnChatMessage", "Message") - .WithMany("Reactions") - .HasForeignKey("MessageId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_chat_reactions_chat_messages_message_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMember", "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.Shared.Models.SnFediverseActivity", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "Actor") - .WithMany("Activities") - .HasForeignKey("ActorId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_activities_fediverse_actors_actor_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnFediverseContent", "Content") - .WithMany("Activities") - .HasForeignKey("ContentId") - .OnDelete(DeleteBehavior.Cascade) - .HasConstraintName("fk_fediverse_activities_fediverse_contents_content_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "TargetActor") - .WithMany() - .HasForeignKey("TargetActorId") - .HasConstraintName("fk_fediverse_activities_fediverse_actors_target_actor_id"); - - b.Navigation("Actor"); - - b.Navigation("Content"); - - b.Navigation("TargetActor"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseActor", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnFediverseInstance", "Instance") - .WithMany("Actors") - .HasForeignKey("InstanceId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_actors_fediverse_instances_instance_id"); - - b.Navigation("Instance"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseContent", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "Actor") - .WithMany("Contents") - .HasForeignKey("ActorId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_contents_fediverse_actors_actor_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnFediverseInstance", "Instance") - .WithMany("Contents") - .HasForeignKey("InstanceId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_contents_fediverse_instances_instance_id"); - - b.Navigation("Actor"); - - b.Navigation("Instance"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseReaction", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "Actor") - .WithMany() - .HasForeignKey("ActorId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_reactions_fediverse_actors_actor_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnFediverseContent", "Content") - .WithMany("Reactions") - .HasForeignKey("ContentId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_reactions_fediverse_contents_content_id"); - - b.Navigation("Actor"); - - b.Navigation("Content"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseRelationship", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "Actor") - .WithMany("FollowingRelationships") - .HasForeignKey("ActorId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_relationships_fediverse_actors_actor_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "TargetActor") - .WithMany("FollowerRelationships") - .HasForeignKey("TargetActorId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_relationships_fediverse_actors_target_actor_id"); - - b.Navigation("Actor"); - - b.Navigation("TargetActor"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPoll", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Polls") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_polls_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPollAnswer", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPoll", "Poll") - .WithMany() - .HasForeignKey("PollId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_poll_answers_polls_poll_id"); - - b.Navigation("Poll"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPollQuestion", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPoll", "Poll") - .WithMany("Questions") - .HasForeignKey("PollId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_poll_questions_polls_poll_id"); - - b.Navigation("Poll"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPost", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPost", "ForwardedPost") - .WithMany() - .HasForeignKey("ForwardedPostId") - .OnDelete(DeleteBehavior.Restrict) - .HasConstraintName("fk_posts_posts_forwarded_post_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Posts") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_posts_publishers_publisher_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPost", "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.Shared.Models.SnPostAward", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPost", "Post") - .WithMany("Awards") - .HasForeignKey("PostId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_awards_posts_post_id"); - - b.Navigation("Post"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostCategorySubscription", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPostCategory", "Category") - .WithMany() - .HasForeignKey("CategoryId") - .HasConstraintName("fk_post_category_subscriptions_post_categories_category_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPostTag", "Tag") - .WithMany() - .HasForeignKey("TagId") - .HasConstraintName("fk_post_category_subscriptions_post_tags_tag_id"); - - b.Navigation("Category"); - - b.Navigation("Tag"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostCollection", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Collections") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_collections_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostFeaturedRecord", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPost", "Post") - .WithMany("FeaturedRecords") - .HasForeignKey("PostId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_featured_records_posts_post_id"); - - b.Navigation("Post"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostReaction", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPost", "Post") - .WithMany("Reactions") - .HasForeignKey("PostId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_reactions_posts_post_id"); - - b.Navigation("Post"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPublisherFeature", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Features") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_publisher_features_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPublisherMember", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Members") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_publisher_members_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPublisherSubscription", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Subscriptions") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_publisher_subscriptions_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnRealtimeCall", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnChatRoom", "Room") - .WithMany() - .HasForeignKey("RoomId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_chat_realtime_call_chat_rooms_room_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMember", "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.Shared.Models.SnSticker", b => - { - b.HasOne("DysonNetwork.Shared.Models.StickerPack", "Pack") - .WithMany("Stickers") - .HasForeignKey("PackId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_stickers_sticker_packs_pack_id"); - - b.Navigation("Pack"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.StickerPack", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany() - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_sticker_packs_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.StickerPackOwnership", b => - { - b.HasOne("DysonNetwork.Shared.Models.StickerPack", "Pack") - .WithMany("Ownerships") - .HasForeignKey("PackId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_sticker_pack_ownerships_sticker_packs_pack_id"); - - b.Navigation("Pack"); - }); - - 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.Shared.Models.SnPublisher", "Publisher") - .WithMany() - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_web_feeds_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Sphere.WebReader.WebFeedSubscription", b => - { - b.HasOne("DysonNetwork.Sphere.WebReader.WebFeed", "Feed") - .WithMany() - .HasForeignKey("FeedId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_web_feed_subscriptions_web_feeds_feed_id"); - - b.Navigation("Feed"); - }); - - modelBuilder.Entity("SnPostSnPostCategory", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPostCategory", null) - .WithMany() - .HasForeignKey("CategoriesId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_category_links_post_categories_categories_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPost", null) - .WithMany() - .HasForeignKey("PostsId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_category_links_posts_posts_id"); - }); - - modelBuilder.Entity("SnPostSnPostCollection", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPostCollection", null) - .WithMany() - .HasForeignKey("CollectionsId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_collection_links_post_collections_collections_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPost", null) - .WithMany() - .HasForeignKey("PostsId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_collection_links_posts_posts_id"); - }); - - modelBuilder.Entity("SnPostSnPostTag", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPost", null) - .WithMany() - .HasForeignKey("PostsId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_tag_links_posts_posts_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPostTag", null) - .WithMany() - .HasForeignKey("TagsId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_tag_links_post_tags_tags_id"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnChatMessage", b => - { - b.Navigation("Reactions"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnChatRoom", b => - { - b.Navigation("Members"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseActor", b => - { - b.Navigation("Activities"); - - b.Navigation("Contents"); - - b.Navigation("FollowerRelationships"); - - b.Navigation("FollowingRelationships"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseContent", b => - { - b.Navigation("Activities"); - - b.Navigation("Reactions"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseInstance", b => - { - b.Navigation("Actors"); - - b.Navigation("Contents"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPoll", b => - { - b.Navigation("Questions"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPost", b => - { - b.Navigation("Awards"); - - b.Navigation("FeaturedRecords"); - - b.Navigation("Reactions"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPublisher", b => - { - b.Navigation("Collections"); - - b.Navigation("Features"); - - b.Navigation("Members"); - - b.Navigation("Polls"); - - b.Navigation("Posts"); - - b.Navigation("Subscriptions"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.StickerPack", b => - { - b.Navigation("Ownerships"); - - b.Navigation("Stickers"); - }); - - modelBuilder.Entity("DysonNetwork.Sphere.WebReader.WebFeed", b => - { - b.Navigation("Articles"); - }); -#pragma warning restore 612, 618 - } - } -} diff --git a/DysonNetwork.Sphere/Migrations/20251228173217_EnrichFediverseInstance.cs b/DysonNetwork.Sphere/Migrations/20251228173217_EnrichFediverseInstance.cs deleted file mode 100644 index 27bab34..0000000 --- a/DysonNetwork.Sphere/Migrations/20251228173217_EnrichFediverseInstance.cs +++ /dev/null @@ -1,83 +0,0 @@ -using Microsoft.EntityFrameworkCore.Migrations; -using NodaTime; - -#nullable disable - -namespace DysonNetwork.Sphere.Migrations -{ - /// - public partial class EnrichFediverseInstance : Migration - { - /// - protected override void Up(MigrationBuilder migrationBuilder) - { - migrationBuilder.AddColumn( - name: "active_users", - table: "fediverse_instances", - type: "integer", - nullable: true); - - migrationBuilder.AddColumn( - name: "contact_account_username", - table: "fediverse_instances", - type: "character varying(256)", - maxLength: 256, - nullable: true); - - migrationBuilder.AddColumn( - name: "contact_email", - table: "fediverse_instances", - type: "character varying(512)", - maxLength: 512, - nullable: true); - - migrationBuilder.AddColumn( - name: "icon_url", - table: "fediverse_instances", - type: "character varying(2048)", - maxLength: 2048, - nullable: true); - - migrationBuilder.AddColumn( - name: "metadata_fetched_at", - table: "fediverse_instances", - type: "timestamp with time zone", - nullable: true); - - migrationBuilder.AddColumn( - name: "thumbnail_url", - table: "fediverse_instances", - type: "character varying(2048)", - maxLength: 2048, - nullable: true); - } - - /// - protected override void Down(MigrationBuilder migrationBuilder) - { - migrationBuilder.DropColumn( - name: "active_users", - table: "fediverse_instances"); - - migrationBuilder.DropColumn( - name: "contact_account_username", - table: "fediverse_instances"); - - migrationBuilder.DropColumn( - name: "contact_email", - table: "fediverse_instances"); - - migrationBuilder.DropColumn( - name: "icon_url", - table: "fediverse_instances"); - - migrationBuilder.DropColumn( - name: "metadata_fetched_at", - table: "fediverse_instances"); - - migrationBuilder.DropColumn( - name: "thumbnail_url", - table: "fediverse_instances"); - } - } -} diff --git a/DysonNetwork.Sphere/Migrations/20251229163103_BetterLocalActor.Designer.cs b/DysonNetwork.Sphere/Migrations/20251229163103_BetterLocalActor.Designer.cs deleted file mode 100644 index 5457962..0000000 --- a/DysonNetwork.Sphere/Migrations/20251229163103_BetterLocalActor.Designer.cs +++ /dev/null @@ -1,2683 +0,0 @@ -// -using System; -using System.Collections.Generic; -using System.Text.Json; -using DysonNetwork.Shared.Models; -using DysonNetwork.Sphere; -using DysonNetwork.Sphere.WebReader; -using Microsoft.EntityFrameworkCore; -using Microsoft.EntityFrameworkCore.Infrastructure; -using Microsoft.EntityFrameworkCore.Migrations; -using Microsoft.EntityFrameworkCore.Storage.ValueConversion; -using NodaTime; -using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; - -#nullable disable - -namespace DysonNetwork.Sphere.Migrations -{ - [DbContext(typeof(AppDatabase))] - [Migration("20251229163103_BetterLocalActor")] - partial class BetterLocalActor - { - /// - protected override void BuildTargetModel(ModelBuilder modelBuilder) - { -#pragma warning disable 612, 618 - modelBuilder - .HasAnnotation("ProductVersion", "10.0.1") - .HasAnnotation("Relational:MaxIdentifierLength", 63); - - NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnChatMember", 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("InvitedById") - .HasColumnType("uuid") - .HasColumnName("invited_by_id"); - - 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("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.HasIndex("InvitedById") - .HasDatabaseName("ix_chat_members_invited_by_id"); - - b.ToTable("chat_members", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnChatMessage", 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.PrimitiveCollection("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.Shared.Models.SnChatMessageReaction", 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.Shared.Models.SnChatRoom", 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("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("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.ToTable("chat_rooms", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseActivity", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("ActorId") - .HasColumnType("uuid") - .HasColumnName("actor_id"); - - b.Property("ContentId") - .HasColumnType("uuid") - .HasColumnName("content_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("ErrorMessage") - .HasMaxLength(4096) - .HasColumnType("character varying(4096)") - .HasColumnName("error_message"); - - b.Property("IsLocal") - .HasColumnType("boolean") - .HasColumnName("is_local"); - - b.Property("LocalAccountId") - .HasColumnType("uuid") - .HasColumnName("local_account_id"); - - b.Property("LocalPostId") - .HasColumnType("uuid") - .HasColumnName("local_post_id"); - - b.Property("ObjectUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("object_uri"); - - b.Property("PublishedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("published_at"); - - b.Property>("RawData") - .HasColumnType("jsonb") - .HasColumnName("raw_data"); - - b.Property("Status") - .HasColumnType("integer") - .HasColumnName("status"); - - b.Property("TargetActorId") - .HasColumnType("uuid") - .HasColumnName("target_actor_id"); - - b.Property("TargetUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("target_uri"); - - b.Property("Type") - .HasColumnType("integer") - .HasColumnName("type"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.Property("Uri") - .IsRequired() - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("uri"); - - b.HasKey("Id") - .HasName("pk_fediverse_activities"); - - b.HasIndex("ActorId") - .HasDatabaseName("ix_fediverse_activities_actor_id"); - - b.HasIndex("ContentId") - .HasDatabaseName("ix_fediverse_activities_content_id"); - - b.HasIndex("TargetActorId") - .HasDatabaseName("ix_fediverse_activities_target_actor_id"); - - b.ToTable("fediverse_activities", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseActor", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("AvatarUrl") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("avatar_url"); - - 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("DisplayName") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("display_name"); - - b.Property("FeaturedUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("featured_uri"); - - b.Property("FollowersUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("followers_uri"); - - b.Property("FollowingUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("following_uri"); - - b.Property("HeaderUrl") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("header_url"); - - b.Property("InboxUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("inbox_uri"); - - b.Property("InstanceId") - .HasColumnType("uuid") - .HasColumnName("instance_id"); - - b.Property("IsBot") - .HasColumnType("boolean") - .HasColumnName("is_bot"); - - b.Property("IsDiscoverable") - .HasColumnType("boolean") - .HasColumnName("is_discoverable"); - - b.Property("IsLocked") - .HasColumnType("boolean") - .HasColumnName("is_locked"); - - b.Property("LastActivityAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("last_activity_at"); - - b.Property("LastFetchedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("last_fetched_at"); - - b.Property>("Metadata") - .HasColumnType("jsonb") - .HasColumnName("metadata"); - - b.Property("OutboxUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("outbox_uri"); - - b.Property("PublicKey") - .HasMaxLength(8192) - .HasColumnType("character varying(8192)") - .HasColumnName("public_key"); - - b.Property("PublicKeyId") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("public_key_id"); - - b.Property("PublisherId") - .HasColumnType("uuid") - .HasColumnName("publisher_id"); - - b.Property("Type") - .IsRequired() - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("type"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.Property("Uri") - .IsRequired() - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("uri"); - - b.Property("Username") - .IsRequired() - .HasMaxLength(256) - .HasColumnType("character varying(256)") - .HasColumnName("username"); - - b.HasKey("Id") - .HasName("pk_fediverse_actors"); - - b.HasIndex("InstanceId") - .HasDatabaseName("ix_fediverse_actors_instance_id"); - - b.HasIndex("Uri") - .IsUnique() - .HasDatabaseName("ix_fediverse_actors_uri"); - - b.ToTable("fediverse_actors", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseContent", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("ActorId") - .HasColumnType("uuid") - .HasColumnName("actor_id"); - - b.Property("AnnouncedContentUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("announced_content_uri"); - - // b.Property>("Attachments") - // .HasColumnType("jsonb") - // .HasColumnName("attachments"); - - b.Property("BoostCount") - .HasColumnType("integer") - .HasColumnName("boost_count"); - - b.Property("Content") - .HasColumnType("text") - .HasColumnName("content"); - - b.Property("ContentHtml") - .HasColumnType("text") - .HasColumnName("content_html"); - - 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>("Emojis") - // .HasColumnType("jsonb") - // .HasColumnName("emojis"); - - b.Property("InReplyTo") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("in_reply_to"); - - b.Property("InstanceId") - .HasColumnType("uuid") - .HasColumnName("instance_id"); - - b.Property("IsSensitive") - .HasColumnType("boolean") - .HasColumnName("is_sensitive"); - - b.Property("Language") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("language"); - - b.Property("LikeCount") - .HasColumnType("integer") - .HasColumnName("like_count"); - - b.Property("LocalPostId") - .HasColumnType("uuid") - .HasColumnName("local_post_id"); - - // b.Property>("Mentions") - // .HasColumnType("jsonb") - // .HasColumnName("mentions"); - - b.Property>("Metadata") - .HasColumnType("jsonb") - .HasColumnName("metadata"); - - b.Property("PublishedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("published_at"); - - b.Property("ReplyCount") - .HasColumnType("integer") - .HasColumnName("reply_count"); - - b.Property("Summary") - .HasMaxLength(4096) - .HasColumnType("character varying(4096)") - .HasColumnName("summary"); - - // b.Property>("Tags") - // .HasColumnType("jsonb") - // .HasColumnName("tags"); - - 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("Uri") - .IsRequired() - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("uri"); - - b.HasKey("Id") - .HasName("pk_fediverse_contents"); - - b.HasIndex("ActorId") - .HasDatabaseName("ix_fediverse_contents_actor_id"); - - b.HasIndex("InstanceId") - .HasDatabaseName("ix_fediverse_contents_instance_id"); - - b.HasIndex("Uri") - .IsUnique() - .HasDatabaseName("ix_fediverse_contents_uri"); - - b.ToTable("fediverse_contents", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseInstance", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("ActiveUsers") - .HasColumnType("integer") - .HasColumnName("active_users"); - - b.Property("BlockReason") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("block_reason"); - - b.Property("ContactAccountUsername") - .HasMaxLength(256) - .HasColumnType("character varying(256)") - .HasColumnName("contact_account_username"); - - b.Property("ContactEmail") - .HasMaxLength(512) - .HasColumnType("character varying(512)") - .HasColumnName("contact_email"); - - 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("Domain") - .IsRequired() - .HasMaxLength(256) - .HasColumnType("character varying(256)") - .HasColumnName("domain"); - - b.Property("IconUrl") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("icon_url"); - - b.Property("IsBlocked") - .HasColumnType("boolean") - .HasColumnName("is_blocked"); - - b.Property("IsSilenced") - .HasColumnType("boolean") - .HasColumnName("is_silenced"); - - b.Property("LastActivityAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("last_activity_at"); - - b.Property("LastFetchedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("last_fetched_at"); - - b.Property>("Metadata") - .HasColumnType("jsonb") - .HasColumnName("metadata"); - - b.Property("MetadataFetchedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("metadata_fetched_at"); - - b.Property("Name") - .HasMaxLength(512) - .HasColumnType("character varying(512)") - .HasColumnName("name"); - - b.Property("Software") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("software"); - - b.Property("ThumbnailUrl") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("thumbnail_url"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.Property("Version") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("version"); - - b.HasKey("Id") - .HasName("pk_fediverse_instances"); - - b.HasIndex("Domain") - .IsUnique() - .HasDatabaseName("ix_fediverse_instances_domain"); - - b.ToTable("fediverse_instances", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseReaction", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("ActorId") - .HasColumnType("uuid") - .HasColumnName("actor_id"); - - b.Property("ContentId") - .HasColumnType("uuid") - .HasColumnName("content_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("Emoji") - .HasMaxLength(64) - .HasColumnType("character varying(64)") - .HasColumnName("emoji"); - - b.Property("IsLocal") - .HasColumnType("boolean") - .HasColumnName("is_local"); - - b.Property("LocalAccountId") - .HasColumnType("uuid") - .HasColumnName("local_account_id"); - - b.Property("LocalReactionId") - .HasColumnType("uuid") - .HasColumnName("local_reaction_id"); - - b.Property("Type") - .HasColumnType("integer") - .HasColumnName("type"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.Property("Uri") - .IsRequired() - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("uri"); - - b.HasKey("Id") - .HasName("pk_fediverse_reactions"); - - b.HasIndex("ActorId") - .HasDatabaseName("ix_fediverse_reactions_actor_id"); - - b.HasIndex("ContentId") - .HasDatabaseName("ix_fediverse_reactions_content_id"); - - b.ToTable("fediverse_reactions", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseRelationship", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("ActorId") - .HasColumnType("uuid") - .HasColumnName("actor_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("FollowedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("followed_at"); - - b.Property("FollowedBackAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("followed_back_at"); - - b.Property("IsBlocking") - .HasColumnType("boolean") - .HasColumnName("is_blocking"); - - b.Property("IsFollowedBy") - .HasColumnType("boolean") - .HasColumnName("is_followed_by"); - - b.Property("IsFollowing") - .HasColumnType("boolean") - .HasColumnName("is_following"); - - b.Property("IsMuting") - .HasColumnType("boolean") - .HasColumnName("is_muting"); - - b.Property("RejectReason") - .HasMaxLength(4096) - .HasColumnType("character varying(4096)") - .HasColumnName("reject_reason"); - - b.Property("State") - .HasColumnType("integer") - .HasColumnName("state"); - - b.Property("TargetActorId") - .HasColumnType("uuid") - .HasColumnName("target_actor_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_fediverse_relationships"); - - b.HasIndex("ActorId") - .HasDatabaseName("ix_fediverse_relationships_actor_id"); - - b.HasIndex("TargetActorId") - .HasDatabaseName("ix_fediverse_relationships_target_actor_id"); - - b.ToTable("fediverse_relationships", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPoll", 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("EndedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("ended_at"); - - b.Property("IsAnonymous") - .HasColumnType("boolean") - .HasColumnName("is_anonymous"); - - b.Property("PublisherId") - .HasColumnType("uuid") - .HasColumnName("publisher_id"); - - b.Property("Title") - .HasMaxLength(1024) - .HasColumnType("character varying(1024)") - .HasColumnName("title"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_polls"); - - b.HasIndex("PublisherId") - .HasDatabaseName("ix_polls_publisher_id"); - - b.ToTable("polls", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPollAnswer", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("AccountId") - .HasColumnType("uuid") - .HasColumnName("account_id"); - - b.Property>("Answer") - .IsRequired() - .HasColumnType("jsonb") - .HasColumnName("answer"); - - b.Property("CreatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("created_at"); - - b.Property("DeletedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("deleted_at"); - - b.Property("PollId") - .HasColumnType("uuid") - .HasColumnName("poll_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_poll_answers"); - - b.HasIndex("PollId") - .HasDatabaseName("ix_poll_answers_poll_id"); - - b.ToTable("poll_answers", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPollQuestion", 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("IsRequired") - .HasColumnType("boolean") - .HasColumnName("is_required"); - - b.Property>("Options") - .HasColumnType("jsonb") - .HasColumnName("options"); - - b.Property("Order") - .HasColumnType("integer") - .HasColumnName("order"); - - b.Property("PollId") - .HasColumnType("uuid") - .HasColumnName("poll_id"); - - b.Property("Title") - .IsRequired() - .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.HasKey("Id") - .HasName("pk_poll_questions"); - - b.HasIndex("PollId") - .HasDatabaseName("ix_poll_questions_poll_id"); - - b.ToTable("poll_questions", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPost", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property>("Attachments") - .IsRequired() - .HasColumnType("jsonb") - .HasColumnName("attachments"); - - b.Property("AwardedScore") - .HasColumnType("numeric") - .HasColumnName("awarded_score"); - - 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("EmbedView") - .HasColumnType("jsonb") - .HasColumnName("embed_view"); - - b.Property("ForwardedGone") - .HasColumnType("boolean") - .HasColumnName("forwarded_gone"); - - b.Property("ForwardedPostId") - .HasColumnType("uuid") - .HasColumnName("forwarded_post_id"); - - b.Property>("Meta") - .HasColumnType("jsonb") - .HasColumnName("meta"); - - b.Property("PinMode") - .HasColumnType("integer") - .HasColumnName("pin_mode"); - - b.Property("PublishedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("published_at"); - - b.Property("PublisherId") - .HasColumnType("uuid") - .HasColumnName("publisher_id"); - - b.Property("RealmId") - .HasColumnType("uuid") - .HasColumnName("realm_id"); - - b.Property("RepliedGone") - .HasColumnType("boolean") - .HasColumnName("replied_gone"); - - b.Property("RepliedPostId") - .HasColumnType("uuid") - .HasColumnName("replied_post_id"); - - b.PrimitiveCollection("SensitiveMarks") - .HasColumnType("jsonb") - .HasColumnName("sensitive_marks"); - - b.Property("Slug") - .HasMaxLength(1024) - .HasColumnType("character varying(1024)") - .HasColumnName("slug"); - - 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.ToTable("posts", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostAward", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("AccountId") - .HasColumnType("uuid") - .HasColumnName("account_id"); - - b.Property("Amount") - .HasColumnType("numeric") - .HasColumnName("amount"); - - 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("Message") - .HasMaxLength(4096) - .HasColumnType("character varying(4096)") - .HasColumnName("message"); - - b.Property("PostId") - .HasColumnType("uuid") - .HasColumnName("post_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_post_awards"); - - b.HasIndex("PostId") - .HasDatabaseName("ix_post_awards_post_id"); - - b.ToTable("post_awards", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostCategory", 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.Shared.Models.SnPostCategorySubscription", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("AccountId") - .HasColumnType("uuid") - .HasColumnName("account_id"); - - b.Property("CategoryId") - .HasColumnType("uuid") - .HasColumnName("category_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("TagId") - .HasColumnType("uuid") - .HasColumnName("tag_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_post_category_subscriptions"); - - b.HasIndex("CategoryId") - .HasDatabaseName("ix_post_category_subscriptions_category_id"); - - b.HasIndex("TagId") - .HasDatabaseName("ix_post_category_subscriptions_tag_id"); - - b.ToTable("post_category_subscriptions", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostCollection", 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.Shared.Models.SnPostFeaturedRecord", 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("FeaturedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("featured_at"); - - b.Property("PostId") - .HasColumnType("uuid") - .HasColumnName("post_id"); - - b.Property("SocialCredits") - .HasColumnType("integer") - .HasColumnName("social_credits"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_post_featured_records"); - - b.HasIndex("PostId") - .HasDatabaseName("ix_post_featured_records_post_id"); - - b.ToTable("post_featured_records", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostReaction", 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.Shared.Models.SnPostTag", 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.Shared.Models.SnPublisher", 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("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>("Meta") - .HasColumnType("jsonb") - .HasColumnName("meta"); - - 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("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.ToTable("publishers", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPublisherFeature", 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.Shared.Models.SnPublisherMember", 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.Shared.Models.SnPublisherSubscription", 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.Shared.Models.SnRealtimeCall", 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.Shared.Models.SnSticker", 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") - .IsRequired() - .HasColumnType("jsonb") - .HasColumnName("image"); - - 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.Shared.Models.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("Icon") - .HasColumnType("jsonb") - .HasColumnName("icon"); - - 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.Shared.Models.StickerPackOwnership", 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("PackId") - .HasColumnType("uuid") - .HasColumnName("pack_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_sticker_pack_ownerships"); - - b.HasIndex("PackId") - .HasDatabaseName("ix_sticker_pack_ownerships_pack_id"); - - b.ToTable("sticker_pack_ownerships", (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("DysonNetwork.Sphere.WebReader.WebFeedSubscription", 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("FeedId") - .HasColumnType("uuid") - .HasColumnName("feed_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_web_feed_subscriptions"); - - b.HasIndex("FeedId") - .HasDatabaseName("ix_web_feed_subscriptions_feed_id"); - - b.ToTable("web_feed_subscriptions", (string)null); - }); - - modelBuilder.Entity("SnPostSnPostCategory", 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("SnPostSnPostCollection", 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("SnPostSnPostTag", 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.Shared.Models.SnChatMember", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnChatRoom", "ChatRoom") - .WithMany("Members") - .HasForeignKey("ChatRoomId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_chat_members_chat_rooms_chat_room_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMember", "InvitedBy") - .WithMany() - .HasForeignKey("InvitedById") - .HasConstraintName("fk_chat_members_chat_members_invited_by_id"); - - b.Navigation("ChatRoom"); - - b.Navigation("InvitedBy"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnChatMessage", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnChatRoom", "ChatRoom") - .WithMany() - .HasForeignKey("ChatRoomId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_chat_messages_chat_rooms_chat_room_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMessage", "ForwardedMessage") - .WithMany() - .HasForeignKey("ForwardedMessageId") - .OnDelete(DeleteBehavior.Restrict) - .HasConstraintName("fk_chat_messages_chat_messages_forwarded_message_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMessage", "RepliedMessage") - .WithMany() - .HasForeignKey("RepliedMessageId") - .OnDelete(DeleteBehavior.Restrict) - .HasConstraintName("fk_chat_messages_chat_messages_replied_message_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMember", "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.Shared.Models.SnChatMessageReaction", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnChatMessage", "Message") - .WithMany("Reactions") - .HasForeignKey("MessageId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_chat_reactions_chat_messages_message_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMember", "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.Shared.Models.SnFediverseActivity", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "Actor") - .WithMany("Activities") - .HasForeignKey("ActorId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_activities_fediverse_actors_actor_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnFediverseContent", "Content") - .WithMany("Activities") - .HasForeignKey("ContentId") - .OnDelete(DeleteBehavior.Cascade) - .HasConstraintName("fk_fediverse_activities_fediverse_contents_content_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "TargetActor") - .WithMany() - .HasForeignKey("TargetActorId") - .HasConstraintName("fk_fediverse_activities_fediverse_actors_target_actor_id"); - - b.Navigation("Actor"); - - b.Navigation("Content"); - - b.Navigation("TargetActor"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseActor", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnFediverseInstance", "Instance") - .WithMany("Actors") - .HasForeignKey("InstanceId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_actors_fediverse_instances_instance_id"); - - b.Navigation("Instance"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseContent", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "Actor") - .WithMany("Contents") - .HasForeignKey("ActorId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_contents_fediverse_actors_actor_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnFediverseInstance", "Instance") - .WithMany("Contents") - .HasForeignKey("InstanceId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_contents_fediverse_instances_instance_id"); - - b.Navigation("Actor"); - - b.Navigation("Instance"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseReaction", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "Actor") - .WithMany() - .HasForeignKey("ActorId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_reactions_fediverse_actors_actor_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnFediverseContent", "Content") - .WithMany("Reactions") - .HasForeignKey("ContentId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_reactions_fediverse_contents_content_id"); - - b.Navigation("Actor"); - - b.Navigation("Content"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseRelationship", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "Actor") - .WithMany("FollowingRelationships") - .HasForeignKey("ActorId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_relationships_fediverse_actors_actor_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "TargetActor") - .WithMany("FollowerRelationships") - .HasForeignKey("TargetActorId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_relationships_fediverse_actors_target_actor_id"); - - b.Navigation("Actor"); - - b.Navigation("TargetActor"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPoll", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Polls") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_polls_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPollAnswer", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPoll", "Poll") - .WithMany() - .HasForeignKey("PollId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_poll_answers_polls_poll_id"); - - b.Navigation("Poll"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPollQuestion", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPoll", "Poll") - .WithMany("Questions") - .HasForeignKey("PollId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_poll_questions_polls_poll_id"); - - b.Navigation("Poll"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPost", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPost", "ForwardedPost") - .WithMany() - .HasForeignKey("ForwardedPostId") - .OnDelete(DeleteBehavior.Restrict) - .HasConstraintName("fk_posts_posts_forwarded_post_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Posts") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_posts_publishers_publisher_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPost", "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.Shared.Models.SnPostAward", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPost", "Post") - .WithMany("Awards") - .HasForeignKey("PostId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_awards_posts_post_id"); - - b.Navigation("Post"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostCategorySubscription", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPostCategory", "Category") - .WithMany() - .HasForeignKey("CategoryId") - .HasConstraintName("fk_post_category_subscriptions_post_categories_category_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPostTag", "Tag") - .WithMany() - .HasForeignKey("TagId") - .HasConstraintName("fk_post_category_subscriptions_post_tags_tag_id"); - - b.Navigation("Category"); - - b.Navigation("Tag"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostCollection", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Collections") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_collections_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostFeaturedRecord", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPost", "Post") - .WithMany("FeaturedRecords") - .HasForeignKey("PostId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_featured_records_posts_post_id"); - - b.Navigation("Post"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostReaction", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPost", "Post") - .WithMany("Reactions") - .HasForeignKey("PostId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_reactions_posts_post_id"); - - b.Navigation("Post"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPublisherFeature", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Features") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_publisher_features_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPublisherMember", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Members") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_publisher_members_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPublisherSubscription", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Subscriptions") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_publisher_subscriptions_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnRealtimeCall", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnChatRoom", "Room") - .WithMany() - .HasForeignKey("RoomId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_chat_realtime_call_chat_rooms_room_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMember", "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.Shared.Models.SnSticker", b => - { - b.HasOne("DysonNetwork.Shared.Models.StickerPack", "Pack") - .WithMany("Stickers") - .HasForeignKey("PackId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_stickers_sticker_packs_pack_id"); - - b.Navigation("Pack"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.StickerPack", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany() - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_sticker_packs_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.StickerPackOwnership", b => - { - b.HasOne("DysonNetwork.Shared.Models.StickerPack", "Pack") - .WithMany("Ownerships") - .HasForeignKey("PackId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_sticker_pack_ownerships_sticker_packs_pack_id"); - - b.Navigation("Pack"); - }); - - 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.Shared.Models.SnPublisher", "Publisher") - .WithMany() - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_web_feeds_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Sphere.WebReader.WebFeedSubscription", b => - { - b.HasOne("DysonNetwork.Sphere.WebReader.WebFeed", "Feed") - .WithMany() - .HasForeignKey("FeedId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_web_feed_subscriptions_web_feeds_feed_id"); - - b.Navigation("Feed"); - }); - - modelBuilder.Entity("SnPostSnPostCategory", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPostCategory", null) - .WithMany() - .HasForeignKey("CategoriesId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_category_links_post_categories_categories_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPost", null) - .WithMany() - .HasForeignKey("PostsId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_category_links_posts_posts_id"); - }); - - modelBuilder.Entity("SnPostSnPostCollection", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPostCollection", null) - .WithMany() - .HasForeignKey("CollectionsId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_collection_links_post_collections_collections_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPost", null) - .WithMany() - .HasForeignKey("PostsId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_collection_links_posts_posts_id"); - }); - - modelBuilder.Entity("SnPostSnPostTag", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPost", null) - .WithMany() - .HasForeignKey("PostsId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_tag_links_posts_posts_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPostTag", null) - .WithMany() - .HasForeignKey("TagsId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_tag_links_post_tags_tags_id"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnChatMessage", b => - { - b.Navigation("Reactions"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnChatRoom", b => - { - b.Navigation("Members"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseActor", b => - { - b.Navigation("Activities"); - - b.Navigation("Contents"); - - b.Navigation("FollowerRelationships"); - - b.Navigation("FollowingRelationships"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseContent", b => - { - b.Navigation("Activities"); - - b.Navigation("Reactions"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseInstance", b => - { - b.Navigation("Actors"); - - b.Navigation("Contents"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPoll", b => - { - b.Navigation("Questions"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPost", b => - { - b.Navigation("Awards"); - - b.Navigation("FeaturedRecords"); - - b.Navigation("Reactions"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPublisher", b => - { - b.Navigation("Collections"); - - b.Navigation("Features"); - - b.Navigation("Members"); - - b.Navigation("Polls"); - - b.Navigation("Posts"); - - b.Navigation("Subscriptions"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.StickerPack", b => - { - b.Navigation("Ownerships"); - - b.Navigation("Stickers"); - }); - - modelBuilder.Entity("DysonNetwork.Sphere.WebReader.WebFeed", b => - { - b.Navigation("Articles"); - }); -#pragma warning restore 612, 618 - } - } -} diff --git a/DysonNetwork.Sphere/Migrations/20251229163103_BetterLocalActor.cs b/DysonNetwork.Sphere/Migrations/20251229163103_BetterLocalActor.cs deleted file mode 100644 index 3bbab9c..0000000 --- a/DysonNetwork.Sphere/Migrations/20251229163103_BetterLocalActor.cs +++ /dev/null @@ -1,60 +0,0 @@ -using System; -using Microsoft.EntityFrameworkCore.Migrations; - -#nullable disable - -namespace DysonNetwork.Sphere.Migrations -{ - /// - public partial class BetterLocalActor : Migration - { - /// - protected override void Up(MigrationBuilder migrationBuilder) - { - migrationBuilder.DropColumn( - name: "is_local_actor", - table: "fediverse_relationships"); - - migrationBuilder.DropColumn( - name: "local_account_id", - table: "fediverse_relationships"); - - migrationBuilder.DropColumn( - name: "local_publisher_id", - table: "fediverse_relationships"); - - migrationBuilder.AddColumn( - name: "publisher_id", - table: "fediverse_actors", - type: "uuid", - nullable: true); - } - - /// - protected override void Down(MigrationBuilder migrationBuilder) - { - migrationBuilder.DropColumn( - name: "publisher_id", - table: "fediverse_actors"); - - migrationBuilder.AddColumn( - name: "is_local_actor", - table: "fediverse_relationships", - type: "boolean", - nullable: false, - defaultValue: false); - - migrationBuilder.AddColumn( - name: "local_account_id", - table: "fediverse_relationships", - type: "uuid", - nullable: true); - - migrationBuilder.AddColumn( - name: "local_publisher_id", - table: "fediverse_relationships", - type: "uuid", - nullable: true); - } - } -} diff --git a/DysonNetwork.Sphere/Migrations/20251229174336_AddPublisherKeys.Designer.cs b/DysonNetwork.Sphere/Migrations/20251229174336_AddPublisherKeys.Designer.cs deleted file mode 100644 index 2237ee8..0000000 --- a/DysonNetwork.Sphere/Migrations/20251229174336_AddPublisherKeys.Designer.cs +++ /dev/null @@ -1,2693 +0,0 @@ -// -using System; -using System.Collections.Generic; -using System.Text.Json; -using DysonNetwork.Shared.Models; -using DysonNetwork.Sphere; -using DysonNetwork.Sphere.WebReader; -using Microsoft.EntityFrameworkCore; -using Microsoft.EntityFrameworkCore.Infrastructure; -using Microsoft.EntityFrameworkCore.Migrations; -using Microsoft.EntityFrameworkCore.Storage.ValueConversion; -using NodaTime; -using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; - -#nullable disable - -namespace DysonNetwork.Sphere.Migrations -{ - [DbContext(typeof(AppDatabase))] - [Migration("20251229174336_AddPublisherKeys")] - partial class AddPublisherKeys - { - /// - protected override void BuildTargetModel(ModelBuilder modelBuilder) - { -#pragma warning disable 612, 618 - modelBuilder - .HasAnnotation("ProductVersion", "10.0.1") - .HasAnnotation("Relational:MaxIdentifierLength", 63); - - NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnChatMember", 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("InvitedById") - .HasColumnType("uuid") - .HasColumnName("invited_by_id"); - - 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("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.HasIndex("InvitedById") - .HasDatabaseName("ix_chat_members_invited_by_id"); - - b.ToTable("chat_members", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnChatMessage", 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.PrimitiveCollection("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.Shared.Models.SnChatMessageReaction", 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.Shared.Models.SnChatRoom", 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("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("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.ToTable("chat_rooms", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseActivity", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("ActorId") - .HasColumnType("uuid") - .HasColumnName("actor_id"); - - b.Property("ContentId") - .HasColumnType("uuid") - .HasColumnName("content_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("ErrorMessage") - .HasMaxLength(4096) - .HasColumnType("character varying(4096)") - .HasColumnName("error_message"); - - b.Property("IsLocal") - .HasColumnType("boolean") - .HasColumnName("is_local"); - - b.Property("LocalAccountId") - .HasColumnType("uuid") - .HasColumnName("local_account_id"); - - b.Property("LocalPostId") - .HasColumnType("uuid") - .HasColumnName("local_post_id"); - - b.Property("ObjectUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("object_uri"); - - b.Property("PublishedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("published_at"); - - b.Property>("RawData") - .HasColumnType("jsonb") - .HasColumnName("raw_data"); - - b.Property("Status") - .HasColumnType("integer") - .HasColumnName("status"); - - b.Property("TargetActorId") - .HasColumnType("uuid") - .HasColumnName("target_actor_id"); - - b.Property("TargetUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("target_uri"); - - b.Property("Type") - .HasColumnType("integer") - .HasColumnName("type"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.Property("Uri") - .IsRequired() - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("uri"); - - b.HasKey("Id") - .HasName("pk_fediverse_activities"); - - b.HasIndex("ActorId") - .HasDatabaseName("ix_fediverse_activities_actor_id"); - - b.HasIndex("ContentId") - .HasDatabaseName("ix_fediverse_activities_content_id"); - - b.HasIndex("TargetActorId") - .HasDatabaseName("ix_fediverse_activities_target_actor_id"); - - b.ToTable("fediverse_activities", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseActor", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("AvatarUrl") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("avatar_url"); - - 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("DisplayName") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("display_name"); - - b.Property("FeaturedUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("featured_uri"); - - b.Property("FollowersUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("followers_uri"); - - b.Property("FollowingUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("following_uri"); - - b.Property("HeaderUrl") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("header_url"); - - b.Property("InboxUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("inbox_uri"); - - b.Property("InstanceId") - .HasColumnType("uuid") - .HasColumnName("instance_id"); - - b.Property("IsBot") - .HasColumnType("boolean") - .HasColumnName("is_bot"); - - b.Property("IsDiscoverable") - .HasColumnType("boolean") - .HasColumnName("is_discoverable"); - - b.Property("IsLocked") - .HasColumnType("boolean") - .HasColumnName("is_locked"); - - b.Property("LastActivityAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("last_activity_at"); - - b.Property("LastFetchedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("last_fetched_at"); - - b.Property>("Metadata") - .HasColumnType("jsonb") - .HasColumnName("metadata"); - - b.Property("OutboxUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("outbox_uri"); - - b.Property("PublicKey") - .HasMaxLength(8192) - .HasColumnType("character varying(8192)") - .HasColumnName("public_key"); - - b.Property("PublicKeyId") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("public_key_id"); - - b.Property("PublisherId") - .HasColumnType("uuid") - .HasColumnName("publisher_id"); - - b.Property("Type") - .IsRequired() - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("type"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.Property("Uri") - .IsRequired() - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("uri"); - - b.Property("Username") - .IsRequired() - .HasMaxLength(256) - .HasColumnType("character varying(256)") - .HasColumnName("username"); - - b.HasKey("Id") - .HasName("pk_fediverse_actors"); - - b.HasIndex("InstanceId") - .HasDatabaseName("ix_fediverse_actors_instance_id"); - - b.HasIndex("Uri") - .IsUnique() - .HasDatabaseName("ix_fediverse_actors_uri"); - - b.ToTable("fediverse_actors", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseContent", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("ActorId") - .HasColumnType("uuid") - .HasColumnName("actor_id"); - - b.Property("AnnouncedContentUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("announced_content_uri"); - - // b.Property>("Attachments") - // .HasColumnType("jsonb") - // .HasColumnName("attachments"); - - b.Property("BoostCount") - .HasColumnType("integer") - .HasColumnName("boost_count"); - - b.Property("Content") - .HasColumnType("text") - .HasColumnName("content"); - - b.Property("ContentHtml") - .HasColumnType("text") - .HasColumnName("content_html"); - - 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>("Emojis") - // .HasColumnType("jsonb") - // .HasColumnName("emojis"); - - b.Property("InReplyTo") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("in_reply_to"); - - b.Property("InstanceId") - .HasColumnType("uuid") - .HasColumnName("instance_id"); - - b.Property("IsSensitive") - .HasColumnType("boolean") - .HasColumnName("is_sensitive"); - - b.Property("Language") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("language"); - - b.Property("LikeCount") - .HasColumnType("integer") - .HasColumnName("like_count"); - - b.Property("LocalPostId") - .HasColumnType("uuid") - .HasColumnName("local_post_id"); - - // b.Property>("Mentions") - // .HasColumnType("jsonb") - // .HasColumnName("mentions"); - - b.Property>("Metadata") - .HasColumnType("jsonb") - .HasColumnName("metadata"); - - b.Property("PublishedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("published_at"); - - b.Property("ReplyCount") - .HasColumnType("integer") - .HasColumnName("reply_count"); - - b.Property("Summary") - .HasMaxLength(4096) - .HasColumnType("character varying(4096)") - .HasColumnName("summary"); - - // b.Property>("Tags") - // .HasColumnType("jsonb") - // .HasColumnName("tags"); - - 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("Uri") - .IsRequired() - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("uri"); - - b.HasKey("Id") - .HasName("pk_fediverse_contents"); - - b.HasIndex("ActorId") - .HasDatabaseName("ix_fediverse_contents_actor_id"); - - b.HasIndex("InstanceId") - .HasDatabaseName("ix_fediverse_contents_instance_id"); - - b.HasIndex("Uri") - .IsUnique() - .HasDatabaseName("ix_fediverse_contents_uri"); - - b.ToTable("fediverse_contents", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseInstance", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("ActiveUsers") - .HasColumnType("integer") - .HasColumnName("active_users"); - - b.Property("BlockReason") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("block_reason"); - - b.Property("ContactAccountUsername") - .HasMaxLength(256) - .HasColumnType("character varying(256)") - .HasColumnName("contact_account_username"); - - b.Property("ContactEmail") - .HasMaxLength(512) - .HasColumnType("character varying(512)") - .HasColumnName("contact_email"); - - 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("Domain") - .IsRequired() - .HasMaxLength(256) - .HasColumnType("character varying(256)") - .HasColumnName("domain"); - - b.Property("IconUrl") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("icon_url"); - - b.Property("IsBlocked") - .HasColumnType("boolean") - .HasColumnName("is_blocked"); - - b.Property("IsSilenced") - .HasColumnType("boolean") - .HasColumnName("is_silenced"); - - b.Property("LastActivityAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("last_activity_at"); - - b.Property("LastFetchedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("last_fetched_at"); - - b.Property>("Metadata") - .HasColumnType("jsonb") - .HasColumnName("metadata"); - - b.Property("MetadataFetchedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("metadata_fetched_at"); - - b.Property("Name") - .HasMaxLength(512) - .HasColumnType("character varying(512)") - .HasColumnName("name"); - - b.Property("Software") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("software"); - - b.Property("ThumbnailUrl") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("thumbnail_url"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.Property("Version") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("version"); - - b.HasKey("Id") - .HasName("pk_fediverse_instances"); - - b.HasIndex("Domain") - .IsUnique() - .HasDatabaseName("ix_fediverse_instances_domain"); - - b.ToTable("fediverse_instances", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseReaction", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("ActorId") - .HasColumnType("uuid") - .HasColumnName("actor_id"); - - b.Property("ContentId") - .HasColumnType("uuid") - .HasColumnName("content_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("Emoji") - .HasMaxLength(64) - .HasColumnType("character varying(64)") - .HasColumnName("emoji"); - - b.Property("IsLocal") - .HasColumnType("boolean") - .HasColumnName("is_local"); - - b.Property("LocalAccountId") - .HasColumnType("uuid") - .HasColumnName("local_account_id"); - - b.Property("LocalReactionId") - .HasColumnType("uuid") - .HasColumnName("local_reaction_id"); - - b.Property("Type") - .HasColumnType("integer") - .HasColumnName("type"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.Property("Uri") - .IsRequired() - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("uri"); - - b.HasKey("Id") - .HasName("pk_fediverse_reactions"); - - b.HasIndex("ActorId") - .HasDatabaseName("ix_fediverse_reactions_actor_id"); - - b.HasIndex("ContentId") - .HasDatabaseName("ix_fediverse_reactions_content_id"); - - b.ToTable("fediverse_reactions", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseRelationship", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("ActorId") - .HasColumnType("uuid") - .HasColumnName("actor_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("FollowedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("followed_at"); - - b.Property("FollowedBackAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("followed_back_at"); - - b.Property("IsBlocking") - .HasColumnType("boolean") - .HasColumnName("is_blocking"); - - b.Property("IsFollowedBy") - .HasColumnType("boolean") - .HasColumnName("is_followed_by"); - - b.Property("IsFollowing") - .HasColumnType("boolean") - .HasColumnName("is_following"); - - b.Property("IsMuting") - .HasColumnType("boolean") - .HasColumnName("is_muting"); - - b.Property("RejectReason") - .HasMaxLength(4096) - .HasColumnType("character varying(4096)") - .HasColumnName("reject_reason"); - - b.Property("State") - .HasColumnType("integer") - .HasColumnName("state"); - - b.Property("TargetActorId") - .HasColumnType("uuid") - .HasColumnName("target_actor_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_fediverse_relationships"); - - b.HasIndex("ActorId") - .HasDatabaseName("ix_fediverse_relationships_actor_id"); - - b.HasIndex("TargetActorId") - .HasDatabaseName("ix_fediverse_relationships_target_actor_id"); - - b.ToTable("fediverse_relationships", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPoll", 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("EndedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("ended_at"); - - b.Property("IsAnonymous") - .HasColumnType("boolean") - .HasColumnName("is_anonymous"); - - b.Property("PublisherId") - .HasColumnType("uuid") - .HasColumnName("publisher_id"); - - b.Property("Title") - .HasMaxLength(1024) - .HasColumnType("character varying(1024)") - .HasColumnName("title"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_polls"); - - b.HasIndex("PublisherId") - .HasDatabaseName("ix_polls_publisher_id"); - - b.ToTable("polls", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPollAnswer", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("AccountId") - .HasColumnType("uuid") - .HasColumnName("account_id"); - - b.Property>("Answer") - .IsRequired() - .HasColumnType("jsonb") - .HasColumnName("answer"); - - b.Property("CreatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("created_at"); - - b.Property("DeletedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("deleted_at"); - - b.Property("PollId") - .HasColumnType("uuid") - .HasColumnName("poll_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_poll_answers"); - - b.HasIndex("PollId") - .HasDatabaseName("ix_poll_answers_poll_id"); - - b.ToTable("poll_answers", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPollQuestion", 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("IsRequired") - .HasColumnType("boolean") - .HasColumnName("is_required"); - - b.Property>("Options") - .HasColumnType("jsonb") - .HasColumnName("options"); - - b.Property("Order") - .HasColumnType("integer") - .HasColumnName("order"); - - b.Property("PollId") - .HasColumnType("uuid") - .HasColumnName("poll_id"); - - b.Property("Title") - .IsRequired() - .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.HasKey("Id") - .HasName("pk_poll_questions"); - - b.HasIndex("PollId") - .HasDatabaseName("ix_poll_questions_poll_id"); - - b.ToTable("poll_questions", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPost", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property>("Attachments") - .IsRequired() - .HasColumnType("jsonb") - .HasColumnName("attachments"); - - b.Property("AwardedScore") - .HasColumnType("numeric") - .HasColumnName("awarded_score"); - - 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("EmbedView") - .HasColumnType("jsonb") - .HasColumnName("embed_view"); - - b.Property("ForwardedGone") - .HasColumnType("boolean") - .HasColumnName("forwarded_gone"); - - b.Property("ForwardedPostId") - .HasColumnType("uuid") - .HasColumnName("forwarded_post_id"); - - b.Property>("Meta") - .HasColumnType("jsonb") - .HasColumnName("meta"); - - b.Property("PinMode") - .HasColumnType("integer") - .HasColumnName("pin_mode"); - - b.Property("PublishedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("published_at"); - - b.Property("PublisherId") - .HasColumnType("uuid") - .HasColumnName("publisher_id"); - - b.Property("RealmId") - .HasColumnType("uuid") - .HasColumnName("realm_id"); - - b.Property("RepliedGone") - .HasColumnType("boolean") - .HasColumnName("replied_gone"); - - b.Property("RepliedPostId") - .HasColumnType("uuid") - .HasColumnName("replied_post_id"); - - b.PrimitiveCollection("SensitiveMarks") - .HasColumnType("jsonb") - .HasColumnName("sensitive_marks"); - - b.Property("Slug") - .HasMaxLength(1024) - .HasColumnType("character varying(1024)") - .HasColumnName("slug"); - - 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.ToTable("posts", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostAward", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("AccountId") - .HasColumnType("uuid") - .HasColumnName("account_id"); - - b.Property("Amount") - .HasColumnType("numeric") - .HasColumnName("amount"); - - 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("Message") - .HasMaxLength(4096) - .HasColumnType("character varying(4096)") - .HasColumnName("message"); - - b.Property("PostId") - .HasColumnType("uuid") - .HasColumnName("post_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_post_awards"); - - b.HasIndex("PostId") - .HasDatabaseName("ix_post_awards_post_id"); - - b.ToTable("post_awards", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostCategory", 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.Shared.Models.SnPostCategorySubscription", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("AccountId") - .HasColumnType("uuid") - .HasColumnName("account_id"); - - b.Property("CategoryId") - .HasColumnType("uuid") - .HasColumnName("category_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("TagId") - .HasColumnType("uuid") - .HasColumnName("tag_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_post_category_subscriptions"); - - b.HasIndex("CategoryId") - .HasDatabaseName("ix_post_category_subscriptions_category_id"); - - b.HasIndex("TagId") - .HasDatabaseName("ix_post_category_subscriptions_tag_id"); - - b.ToTable("post_category_subscriptions", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostCollection", 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.Shared.Models.SnPostFeaturedRecord", 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("FeaturedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("featured_at"); - - b.Property("PostId") - .HasColumnType("uuid") - .HasColumnName("post_id"); - - b.Property("SocialCredits") - .HasColumnType("integer") - .HasColumnName("social_credits"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_post_featured_records"); - - b.HasIndex("PostId") - .HasDatabaseName("ix_post_featured_records_post_id"); - - b.ToTable("post_featured_records", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostReaction", 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.Shared.Models.SnPostTag", 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.Shared.Models.SnPublisher", 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("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>("Meta") - .HasColumnType("jsonb") - .HasColumnName("meta"); - - 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("PrivateKeyPem") - .HasMaxLength(8192) - .HasColumnType("character varying(8192)") - .HasColumnName("private_key_pem"); - - b.Property("PublicKeyPem") - .HasMaxLength(8192) - .HasColumnType("character varying(8192)") - .HasColumnName("public_key_pem"); - - 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.ToTable("publishers", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPublisherFeature", 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.Shared.Models.SnPublisherMember", 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.Shared.Models.SnPublisherSubscription", 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.Shared.Models.SnRealtimeCall", 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.Shared.Models.SnSticker", 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") - .IsRequired() - .HasColumnType("jsonb") - .HasColumnName("image"); - - 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.Shared.Models.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("Icon") - .HasColumnType("jsonb") - .HasColumnName("icon"); - - 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.Shared.Models.StickerPackOwnership", 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("PackId") - .HasColumnType("uuid") - .HasColumnName("pack_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_sticker_pack_ownerships"); - - b.HasIndex("PackId") - .HasDatabaseName("ix_sticker_pack_ownerships_pack_id"); - - b.ToTable("sticker_pack_ownerships", (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("DysonNetwork.Sphere.WebReader.WebFeedSubscription", 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("FeedId") - .HasColumnType("uuid") - .HasColumnName("feed_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_web_feed_subscriptions"); - - b.HasIndex("FeedId") - .HasDatabaseName("ix_web_feed_subscriptions_feed_id"); - - b.ToTable("web_feed_subscriptions", (string)null); - }); - - modelBuilder.Entity("SnPostSnPostCategory", 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("SnPostSnPostCollection", 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("SnPostSnPostTag", 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.Shared.Models.SnChatMember", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnChatRoom", "ChatRoom") - .WithMany("Members") - .HasForeignKey("ChatRoomId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_chat_members_chat_rooms_chat_room_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMember", "InvitedBy") - .WithMany() - .HasForeignKey("InvitedById") - .HasConstraintName("fk_chat_members_chat_members_invited_by_id"); - - b.Navigation("ChatRoom"); - - b.Navigation("InvitedBy"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnChatMessage", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnChatRoom", "ChatRoom") - .WithMany() - .HasForeignKey("ChatRoomId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_chat_messages_chat_rooms_chat_room_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMessage", "ForwardedMessage") - .WithMany() - .HasForeignKey("ForwardedMessageId") - .OnDelete(DeleteBehavior.Restrict) - .HasConstraintName("fk_chat_messages_chat_messages_forwarded_message_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMessage", "RepliedMessage") - .WithMany() - .HasForeignKey("RepliedMessageId") - .OnDelete(DeleteBehavior.Restrict) - .HasConstraintName("fk_chat_messages_chat_messages_replied_message_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMember", "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.Shared.Models.SnChatMessageReaction", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnChatMessage", "Message") - .WithMany("Reactions") - .HasForeignKey("MessageId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_chat_reactions_chat_messages_message_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMember", "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.Shared.Models.SnFediverseActivity", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "Actor") - .WithMany("Activities") - .HasForeignKey("ActorId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_activities_fediverse_actors_actor_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnFediverseContent", "Content") - .WithMany("Activities") - .HasForeignKey("ContentId") - .OnDelete(DeleteBehavior.Cascade) - .HasConstraintName("fk_fediverse_activities_fediverse_contents_content_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "TargetActor") - .WithMany() - .HasForeignKey("TargetActorId") - .HasConstraintName("fk_fediverse_activities_fediverse_actors_target_actor_id"); - - b.Navigation("Actor"); - - b.Navigation("Content"); - - b.Navigation("TargetActor"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseActor", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnFediverseInstance", "Instance") - .WithMany("Actors") - .HasForeignKey("InstanceId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_actors_fediverse_instances_instance_id"); - - b.Navigation("Instance"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseContent", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "Actor") - .WithMany("Contents") - .HasForeignKey("ActorId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_contents_fediverse_actors_actor_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnFediverseInstance", "Instance") - .WithMany("Contents") - .HasForeignKey("InstanceId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_contents_fediverse_instances_instance_id"); - - b.Navigation("Actor"); - - b.Navigation("Instance"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseReaction", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "Actor") - .WithMany() - .HasForeignKey("ActorId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_reactions_fediverse_actors_actor_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnFediverseContent", "Content") - .WithMany("Reactions") - .HasForeignKey("ContentId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_reactions_fediverse_contents_content_id"); - - b.Navigation("Actor"); - - b.Navigation("Content"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseRelationship", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "Actor") - .WithMany("FollowingRelationships") - .HasForeignKey("ActorId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_relationships_fediverse_actors_actor_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "TargetActor") - .WithMany("FollowerRelationships") - .HasForeignKey("TargetActorId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_relationships_fediverse_actors_target_actor_id"); - - b.Navigation("Actor"); - - b.Navigation("TargetActor"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPoll", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Polls") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_polls_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPollAnswer", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPoll", "Poll") - .WithMany() - .HasForeignKey("PollId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_poll_answers_polls_poll_id"); - - b.Navigation("Poll"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPollQuestion", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPoll", "Poll") - .WithMany("Questions") - .HasForeignKey("PollId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_poll_questions_polls_poll_id"); - - b.Navigation("Poll"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPost", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPost", "ForwardedPost") - .WithMany() - .HasForeignKey("ForwardedPostId") - .OnDelete(DeleteBehavior.Restrict) - .HasConstraintName("fk_posts_posts_forwarded_post_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Posts") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_posts_publishers_publisher_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPost", "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.Shared.Models.SnPostAward", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPost", "Post") - .WithMany("Awards") - .HasForeignKey("PostId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_awards_posts_post_id"); - - b.Navigation("Post"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostCategorySubscription", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPostCategory", "Category") - .WithMany() - .HasForeignKey("CategoryId") - .HasConstraintName("fk_post_category_subscriptions_post_categories_category_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPostTag", "Tag") - .WithMany() - .HasForeignKey("TagId") - .HasConstraintName("fk_post_category_subscriptions_post_tags_tag_id"); - - b.Navigation("Category"); - - b.Navigation("Tag"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostCollection", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Collections") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_collections_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostFeaturedRecord", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPost", "Post") - .WithMany("FeaturedRecords") - .HasForeignKey("PostId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_featured_records_posts_post_id"); - - b.Navigation("Post"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostReaction", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPost", "Post") - .WithMany("Reactions") - .HasForeignKey("PostId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_reactions_posts_post_id"); - - b.Navigation("Post"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPublisherFeature", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Features") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_publisher_features_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPublisherMember", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Members") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_publisher_members_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPublisherSubscription", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Subscriptions") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_publisher_subscriptions_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnRealtimeCall", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnChatRoom", "Room") - .WithMany() - .HasForeignKey("RoomId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_chat_realtime_call_chat_rooms_room_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMember", "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.Shared.Models.SnSticker", b => - { - b.HasOne("DysonNetwork.Shared.Models.StickerPack", "Pack") - .WithMany("Stickers") - .HasForeignKey("PackId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_stickers_sticker_packs_pack_id"); - - b.Navigation("Pack"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.StickerPack", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany() - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_sticker_packs_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.StickerPackOwnership", b => - { - b.HasOne("DysonNetwork.Shared.Models.StickerPack", "Pack") - .WithMany("Ownerships") - .HasForeignKey("PackId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_sticker_pack_ownerships_sticker_packs_pack_id"); - - b.Navigation("Pack"); - }); - - 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.Shared.Models.SnPublisher", "Publisher") - .WithMany() - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_web_feeds_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Sphere.WebReader.WebFeedSubscription", b => - { - b.HasOne("DysonNetwork.Sphere.WebReader.WebFeed", "Feed") - .WithMany() - .HasForeignKey("FeedId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_web_feed_subscriptions_web_feeds_feed_id"); - - b.Navigation("Feed"); - }); - - modelBuilder.Entity("SnPostSnPostCategory", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPostCategory", null) - .WithMany() - .HasForeignKey("CategoriesId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_category_links_post_categories_categories_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPost", null) - .WithMany() - .HasForeignKey("PostsId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_category_links_posts_posts_id"); - }); - - modelBuilder.Entity("SnPostSnPostCollection", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPostCollection", null) - .WithMany() - .HasForeignKey("CollectionsId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_collection_links_post_collections_collections_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPost", null) - .WithMany() - .HasForeignKey("PostsId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_collection_links_posts_posts_id"); - }); - - modelBuilder.Entity("SnPostSnPostTag", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPost", null) - .WithMany() - .HasForeignKey("PostsId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_tag_links_posts_posts_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPostTag", null) - .WithMany() - .HasForeignKey("TagsId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_tag_links_post_tags_tags_id"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnChatMessage", b => - { - b.Navigation("Reactions"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnChatRoom", b => - { - b.Navigation("Members"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseActor", b => - { - b.Navigation("Activities"); - - b.Navigation("Contents"); - - b.Navigation("FollowerRelationships"); - - b.Navigation("FollowingRelationships"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseContent", b => - { - b.Navigation("Activities"); - - b.Navigation("Reactions"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseInstance", b => - { - b.Navigation("Actors"); - - b.Navigation("Contents"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPoll", b => - { - b.Navigation("Questions"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPost", b => - { - b.Navigation("Awards"); - - b.Navigation("FeaturedRecords"); - - b.Navigation("Reactions"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPublisher", b => - { - b.Navigation("Collections"); - - b.Navigation("Features"); - - b.Navigation("Members"); - - b.Navigation("Polls"); - - b.Navigation("Posts"); - - b.Navigation("Subscriptions"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.StickerPack", b => - { - b.Navigation("Ownerships"); - - b.Navigation("Stickers"); - }); - - modelBuilder.Entity("DysonNetwork.Sphere.WebReader.WebFeed", b => - { - b.Navigation("Articles"); - }); -#pragma warning restore 612, 618 - } - } -} diff --git a/DysonNetwork.Sphere/Migrations/20251229174336_AddPublisherKeys.cs b/DysonNetwork.Sphere/Migrations/20251229174336_AddPublisherKeys.cs deleted file mode 100644 index 9d562f5..0000000 --- a/DysonNetwork.Sphere/Migrations/20251229174336_AddPublisherKeys.cs +++ /dev/null @@ -1,40 +0,0 @@ -using Microsoft.EntityFrameworkCore.Migrations; - -#nullable disable - -namespace DysonNetwork.Sphere.Migrations -{ - /// - public partial class AddPublisherKeys : Migration - { - /// - protected override void Up(MigrationBuilder migrationBuilder) - { - migrationBuilder.AddColumn( - name: "private_key_pem", - table: "publishers", - type: "character varying(8192)", - maxLength: 8192, - nullable: true); - - migrationBuilder.AddColumn( - name: "public_key_pem", - table: "publishers", - type: "character varying(8192)", - maxLength: 8192, - nullable: true); - } - - /// - protected override void Down(MigrationBuilder migrationBuilder) - { - migrationBuilder.DropColumn( - name: "private_key_pem", - table: "publishers"); - - migrationBuilder.DropColumn( - name: "public_key_pem", - table: "publishers"); - } - } -} diff --git a/DysonNetwork.Sphere/Migrations/20251230153545_MergeFediverseDataClass.Designer.cs b/DysonNetwork.Sphere/Migrations/20251230153545_MergeFediverseDataClass.Designer.cs deleted file mode 100644 index 60ce417..0000000 --- a/DysonNetwork.Sphere/Migrations/20251230153545_MergeFediverseDataClass.Designer.cs +++ /dev/null @@ -1,2385 +0,0 @@ -// -using System; -using System.Collections.Generic; -using System.Text.Json; -using DysonNetwork.Shared.Models; -using DysonNetwork.Sphere; -using DysonNetwork.Sphere.WebReader; -using Microsoft.EntityFrameworkCore; -using Microsoft.EntityFrameworkCore.Infrastructure; -using Microsoft.EntityFrameworkCore.Migrations; -using Microsoft.EntityFrameworkCore.Storage.ValueConversion; -using NodaTime; -using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; - -#nullable disable - -namespace DysonNetwork.Sphere.Migrations -{ - [DbContext(typeof(AppDatabase))] - [Migration("20251230153545_MergeFediverseDataClass")] - partial class MergeFediverseDataClass - { - /// - protected override void BuildTargetModel(ModelBuilder modelBuilder) - { -#pragma warning disable 612, 618 - modelBuilder - .HasAnnotation("ProductVersion", "10.0.1") - .HasAnnotation("Relational:MaxIdentifierLength", 63); - - NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnChatMember", 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("InvitedById") - .HasColumnType("uuid") - .HasColumnName("invited_by_id"); - - 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("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.HasIndex("InvitedById") - .HasDatabaseName("ix_chat_members_invited_by_id"); - - b.ToTable("chat_members", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnChatMessage", 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.PrimitiveCollection("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.Shared.Models.SnChatMessageReaction", 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.Shared.Models.SnChatRoom", 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("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("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.ToTable("chat_rooms", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseActor", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("AvatarUrl") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("avatar_url"); - - 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("DisplayName") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("display_name"); - - b.Property("FeaturedUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("featured_uri"); - - b.Property("FollowersUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("followers_uri"); - - b.Property("FollowingUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("following_uri"); - - b.Property("HeaderUrl") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("header_url"); - - b.Property("InboxUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("inbox_uri"); - - b.Property("InstanceId") - .HasColumnType("uuid") - .HasColumnName("instance_id"); - - b.Property("IsBot") - .HasColumnType("boolean") - .HasColumnName("is_bot"); - - b.Property("IsDiscoverable") - .HasColumnType("boolean") - .HasColumnName("is_discoverable"); - - b.Property("IsLocked") - .HasColumnType("boolean") - .HasColumnName("is_locked"); - - b.Property("LastActivityAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("last_activity_at"); - - b.Property("LastFetchedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("last_fetched_at"); - - b.Property>("Metadata") - .HasColumnType("jsonb") - .HasColumnName("metadata"); - - b.Property("OutboxUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("outbox_uri"); - - b.Property("PublicKey") - .HasMaxLength(8192) - .HasColumnType("character varying(8192)") - .HasColumnName("public_key"); - - b.Property("PublicKeyId") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("public_key_id"); - - b.Property("PublisherId") - .HasColumnType("uuid") - .HasColumnName("publisher_id"); - - b.Property("Type") - .IsRequired() - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("type"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.Property("Uri") - .IsRequired() - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("uri"); - - b.Property("Username") - .IsRequired() - .HasMaxLength(256) - .HasColumnType("character varying(256)") - .HasColumnName("username"); - - b.HasKey("Id") - .HasName("pk_fediverse_actors"); - - b.HasIndex("InstanceId") - .HasDatabaseName("ix_fediverse_actors_instance_id"); - - b.HasIndex("Uri") - .IsUnique() - .HasDatabaseName("ix_fediverse_actors_uri"); - - b.ToTable("fediverse_actors", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseInstance", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("ActiveUsers") - .HasColumnType("integer") - .HasColumnName("active_users"); - - b.Property("BlockReason") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("block_reason"); - - b.Property("ContactAccountUsername") - .HasMaxLength(256) - .HasColumnType("character varying(256)") - .HasColumnName("contact_account_username"); - - b.Property("ContactEmail") - .HasMaxLength(512) - .HasColumnType("character varying(512)") - .HasColumnName("contact_email"); - - 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("Domain") - .IsRequired() - .HasMaxLength(256) - .HasColumnType("character varying(256)") - .HasColumnName("domain"); - - b.Property("IconUrl") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("icon_url"); - - b.Property("IsBlocked") - .HasColumnType("boolean") - .HasColumnName("is_blocked"); - - b.Property("IsSilenced") - .HasColumnType("boolean") - .HasColumnName("is_silenced"); - - b.Property("LastActivityAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("last_activity_at"); - - b.Property("LastFetchedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("last_fetched_at"); - - b.Property>("Metadata") - .HasColumnType("jsonb") - .HasColumnName("metadata"); - - b.Property("MetadataFetchedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("metadata_fetched_at"); - - b.Property("Name") - .HasMaxLength(512) - .HasColumnType("character varying(512)") - .HasColumnName("name"); - - b.Property("Software") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("software"); - - b.Property("ThumbnailUrl") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("thumbnail_url"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.Property("Version") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("version"); - - b.HasKey("Id") - .HasName("pk_fediverse_instances"); - - b.HasIndex("Domain") - .IsUnique() - .HasDatabaseName("ix_fediverse_instances_domain"); - - b.ToTable("fediverse_instances", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseRelationship", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("ActorId") - .HasColumnType("uuid") - .HasColumnName("actor_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("FollowedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("followed_at"); - - b.Property("FollowedBackAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("followed_back_at"); - - b.Property("IsBlocking") - .HasColumnType("boolean") - .HasColumnName("is_blocking"); - - b.Property("IsFollowedBy") - .HasColumnType("boolean") - .HasColumnName("is_followed_by"); - - b.Property("IsFollowing") - .HasColumnType("boolean") - .HasColumnName("is_following"); - - b.Property("IsMuting") - .HasColumnType("boolean") - .HasColumnName("is_muting"); - - b.Property("RejectReason") - .HasMaxLength(4096) - .HasColumnType("character varying(4096)") - .HasColumnName("reject_reason"); - - b.Property("State") - .HasColumnType("integer") - .HasColumnName("state"); - - b.Property("TargetActorId") - .HasColumnType("uuid") - .HasColumnName("target_actor_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_fediverse_relationships"); - - b.HasIndex("ActorId") - .HasDatabaseName("ix_fediverse_relationships_actor_id"); - - b.HasIndex("TargetActorId") - .HasDatabaseName("ix_fediverse_relationships_target_actor_id"); - - b.ToTable("fediverse_relationships", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPoll", 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("EndedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("ended_at"); - - b.Property("IsAnonymous") - .HasColumnType("boolean") - .HasColumnName("is_anonymous"); - - b.Property("PublisherId") - .HasColumnType("uuid") - .HasColumnName("publisher_id"); - - b.Property("Title") - .HasMaxLength(1024) - .HasColumnType("character varying(1024)") - .HasColumnName("title"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_polls"); - - b.HasIndex("PublisherId") - .HasDatabaseName("ix_polls_publisher_id"); - - b.ToTable("polls", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPollAnswer", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("AccountId") - .HasColumnType("uuid") - .HasColumnName("account_id"); - - b.Property>("Answer") - .IsRequired() - .HasColumnType("jsonb") - .HasColumnName("answer"); - - b.Property("CreatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("created_at"); - - b.Property("DeletedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("deleted_at"); - - b.Property("PollId") - .HasColumnType("uuid") - .HasColumnName("poll_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_poll_answers"); - - b.HasIndex("PollId") - .HasDatabaseName("ix_poll_answers_poll_id"); - - b.ToTable("poll_answers", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPollQuestion", 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("IsRequired") - .HasColumnType("boolean") - .HasColumnName("is_required"); - - b.Property>("Options") - .HasColumnType("jsonb") - .HasColumnName("options"); - - b.Property("Order") - .HasColumnType("integer") - .HasColumnName("order"); - - b.Property("PollId") - .HasColumnType("uuid") - .HasColumnName("poll_id"); - - b.Property("Title") - .IsRequired() - .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.HasKey("Id") - .HasName("pk_poll_questions"); - - b.HasIndex("PollId") - .HasDatabaseName("ix_poll_questions_poll_id"); - - b.ToTable("poll_questions", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPost", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("ActorId") - .HasColumnType("uuid") - .HasColumnName("actor_id"); - - b.Property>("Attachments") - .IsRequired() - .HasColumnType("jsonb") - .HasColumnName("attachments"); - - b.Property("AwardedScore") - .HasColumnType("numeric") - .HasColumnName("awarded_score"); - - b.Property("BoostCount") - .HasColumnType("integer") - .HasColumnName("boost_count"); - - b.Property("Content") - .HasColumnType("text") - .HasColumnName("content"); - - b.Property("ContentType") - .HasColumnType("integer") - .HasColumnName("content_type"); - - 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("EmbedView") - .HasColumnType("jsonb") - .HasColumnName("embed_view"); - - b.Property("FediverseType") - .HasColumnType("integer") - .HasColumnName("fediverse_type"); - - b.Property("FediverseUri") - .HasMaxLength(8192) - .HasColumnType("character varying(8192)") - .HasColumnName("fediverse_uri"); - - b.Property("ForwardedGone") - .HasColumnType("boolean") - .HasColumnName("forwarded_gone"); - - b.Property("ForwardedPostId") - .HasColumnType("uuid") - .HasColumnName("forwarded_post_id"); - - b.Property("Language") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("language"); - - b.Property("LikeCount") - .HasColumnType("integer") - .HasColumnName("like_count"); - - b.Property>("Mentions") - .HasColumnType("jsonb") - .HasColumnName("mentions"); - - b.Property>("Metadata") - .HasColumnType("jsonb") - .HasColumnName("metadata"); - - b.Property("PinMode") - .HasColumnType("integer") - .HasColumnName("pin_mode"); - - b.Property("PublishedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("published_at"); - - b.Property("PublisherId") - .HasColumnType("uuid") - .HasColumnName("publisher_id"); - - b.Property("RealmId") - .HasColumnType("uuid") - .HasColumnName("realm_id"); - - b.Property("RepliedGone") - .HasColumnType("boolean") - .HasColumnName("replied_gone"); - - b.Property("RepliedPostId") - .HasColumnType("uuid") - .HasColumnName("replied_post_id"); - - b.Property("RepliesCount") - .HasColumnType("integer") - .HasColumnName("replies_count"); - - b.PrimitiveCollection("SensitiveMarks") - .HasColumnType("jsonb") - .HasColumnName("sensitive_marks"); - - b.Property("Slug") - .HasMaxLength(1024) - .HasColumnType("character varying(1024)") - .HasColumnName("slug"); - - 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("ActorId") - .HasDatabaseName("ix_posts_actor_id"); - - 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.ToTable("posts", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostAward", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("AccountId") - .HasColumnType("uuid") - .HasColumnName("account_id"); - - b.Property("Amount") - .HasColumnType("numeric") - .HasColumnName("amount"); - - 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("Message") - .HasMaxLength(4096) - .HasColumnType("character varying(4096)") - .HasColumnName("message"); - - b.Property("PostId") - .HasColumnType("uuid") - .HasColumnName("post_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_post_awards"); - - b.HasIndex("PostId") - .HasDatabaseName("ix_post_awards_post_id"); - - b.ToTable("post_awards", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostCategory", 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.Shared.Models.SnPostCategorySubscription", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("AccountId") - .HasColumnType("uuid") - .HasColumnName("account_id"); - - b.Property("CategoryId") - .HasColumnType("uuid") - .HasColumnName("category_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("TagId") - .HasColumnType("uuid") - .HasColumnName("tag_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_post_category_subscriptions"); - - b.HasIndex("CategoryId") - .HasDatabaseName("ix_post_category_subscriptions_category_id"); - - b.HasIndex("TagId") - .HasDatabaseName("ix_post_category_subscriptions_tag_id"); - - b.ToTable("post_category_subscriptions", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostCollection", 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.Shared.Models.SnPostFeaturedRecord", 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("FeaturedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("featured_at"); - - b.Property("PostId") - .HasColumnType("uuid") - .HasColumnName("post_id"); - - b.Property("SocialCredits") - .HasColumnType("integer") - .HasColumnName("social_credits"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_post_featured_records"); - - b.HasIndex("PostId") - .HasDatabaseName("ix_post_featured_records_post_id"); - - b.ToTable("post_featured_records", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostReaction", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("AccountId") - .HasColumnType("uuid") - .HasColumnName("account_id"); - - b.Property("ActorId") - .HasColumnType("uuid") - .HasColumnName("actor_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("FediverseUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("fediverse_uri"); - - b.Property("IsLocal") - .HasColumnType("boolean") - .HasColumnName("is_local"); - - 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("ActorId") - .HasDatabaseName("ix_post_reactions_actor_id"); - - b.HasIndex("PostId") - .HasDatabaseName("ix_post_reactions_post_id"); - - b.ToTable("post_reactions", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostTag", 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.Shared.Models.SnPublisher", 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("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>("Meta") - .HasColumnType("jsonb") - .HasColumnName("meta"); - - 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("PrivateKeyPem") - .HasMaxLength(8192) - .HasColumnType("character varying(8192)") - .HasColumnName("private_key_pem"); - - b.Property("PublicKeyPem") - .HasMaxLength(8192) - .HasColumnType("character varying(8192)") - .HasColumnName("public_key_pem"); - - 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.ToTable("publishers", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPublisherFeature", 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.Shared.Models.SnPublisherMember", 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.Shared.Models.SnPublisherSubscription", 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.Shared.Models.SnRealtimeCall", 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.Shared.Models.SnSticker", 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") - .IsRequired() - .HasColumnType("jsonb") - .HasColumnName("image"); - - 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.Shared.Models.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("Icon") - .HasColumnType("jsonb") - .HasColumnName("icon"); - - 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.Shared.Models.StickerPackOwnership", 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("PackId") - .HasColumnType("uuid") - .HasColumnName("pack_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_sticker_pack_ownerships"); - - b.HasIndex("PackId") - .HasDatabaseName("ix_sticker_pack_ownerships_pack_id"); - - b.ToTable("sticker_pack_ownerships", (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("DysonNetwork.Sphere.WebReader.WebFeedSubscription", 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("FeedId") - .HasColumnType("uuid") - .HasColumnName("feed_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_web_feed_subscriptions"); - - b.HasIndex("FeedId") - .HasDatabaseName("ix_web_feed_subscriptions_feed_id"); - - b.ToTable("web_feed_subscriptions", (string)null); - }); - - modelBuilder.Entity("SnPostSnPostCategory", 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("SnPostSnPostCollection", 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("SnPostSnPostTag", 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.Shared.Models.SnChatMember", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnChatRoom", "ChatRoom") - .WithMany("Members") - .HasForeignKey("ChatRoomId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_chat_members_chat_rooms_chat_room_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMember", "InvitedBy") - .WithMany() - .HasForeignKey("InvitedById") - .HasConstraintName("fk_chat_members_chat_members_invited_by_id"); - - b.Navigation("ChatRoom"); - - b.Navigation("InvitedBy"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnChatMessage", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnChatRoom", "ChatRoom") - .WithMany() - .HasForeignKey("ChatRoomId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_chat_messages_chat_rooms_chat_room_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMessage", "ForwardedMessage") - .WithMany() - .HasForeignKey("ForwardedMessageId") - .OnDelete(DeleteBehavior.Restrict) - .HasConstraintName("fk_chat_messages_chat_messages_forwarded_message_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMessage", "RepliedMessage") - .WithMany() - .HasForeignKey("RepliedMessageId") - .OnDelete(DeleteBehavior.Restrict) - .HasConstraintName("fk_chat_messages_chat_messages_replied_message_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMember", "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.Shared.Models.SnChatMessageReaction", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnChatMessage", "Message") - .WithMany("Reactions") - .HasForeignKey("MessageId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_chat_reactions_chat_messages_message_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMember", "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.Shared.Models.SnFediverseActor", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnFediverseInstance", "Instance") - .WithMany("Actors") - .HasForeignKey("InstanceId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_actors_fediverse_instances_instance_id"); - - b.Navigation("Instance"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseRelationship", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "Actor") - .WithMany("FollowingRelationships") - .HasForeignKey("ActorId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_relationships_fediverse_actors_actor_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "TargetActor") - .WithMany("FollowerRelationships") - .HasForeignKey("TargetActorId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_relationships_fediverse_actors_target_actor_id"); - - b.Navigation("Actor"); - - b.Navigation("TargetActor"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPoll", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Polls") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_polls_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPollAnswer", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPoll", "Poll") - .WithMany() - .HasForeignKey("PollId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_poll_answers_polls_poll_id"); - - b.Navigation("Poll"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPollQuestion", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPoll", "Poll") - .WithMany("Questions") - .HasForeignKey("PollId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_poll_questions_polls_poll_id"); - - b.Navigation("Poll"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPost", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "Actor") - .WithMany() - .HasForeignKey("ActorId") - .HasConstraintName("fk_posts_fediverse_actors_actor_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPost", "ForwardedPost") - .WithMany() - .HasForeignKey("ForwardedPostId") - .OnDelete(DeleteBehavior.Restrict) - .HasConstraintName("fk_posts_posts_forwarded_post_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Posts") - .HasForeignKey("PublisherId") - .HasConstraintName("fk_posts_publishers_publisher_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPost", "RepliedPost") - .WithMany() - .HasForeignKey("RepliedPostId") - .OnDelete(DeleteBehavior.Restrict) - .HasConstraintName("fk_posts_posts_replied_post_id"); - - b.Navigation("Actor"); - - b.Navigation("ForwardedPost"); - - b.Navigation("Publisher"); - - b.Navigation("RepliedPost"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostAward", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPost", "Post") - .WithMany("Awards") - .HasForeignKey("PostId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_awards_posts_post_id"); - - b.Navigation("Post"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostCategorySubscription", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPostCategory", "Category") - .WithMany() - .HasForeignKey("CategoryId") - .HasConstraintName("fk_post_category_subscriptions_post_categories_category_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPostTag", "Tag") - .WithMany() - .HasForeignKey("TagId") - .HasConstraintName("fk_post_category_subscriptions_post_tags_tag_id"); - - b.Navigation("Category"); - - b.Navigation("Tag"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostCollection", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Collections") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_collections_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostFeaturedRecord", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPost", "Post") - .WithMany("FeaturedRecords") - .HasForeignKey("PostId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_featured_records_posts_post_id"); - - b.Navigation("Post"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostReaction", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "Actor") - .WithMany() - .HasForeignKey("ActorId") - .HasConstraintName("fk_post_reactions_fediverse_actors_actor_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPost", "Post") - .WithMany("Reactions") - .HasForeignKey("PostId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_reactions_posts_post_id"); - - b.Navigation("Actor"); - - b.Navigation("Post"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPublisherFeature", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Features") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_publisher_features_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPublisherMember", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Members") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_publisher_members_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPublisherSubscription", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Subscriptions") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_publisher_subscriptions_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnRealtimeCall", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnChatRoom", "Room") - .WithMany() - .HasForeignKey("RoomId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_chat_realtime_call_chat_rooms_room_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMember", "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.Shared.Models.SnSticker", b => - { - b.HasOne("DysonNetwork.Shared.Models.StickerPack", "Pack") - .WithMany("Stickers") - .HasForeignKey("PackId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_stickers_sticker_packs_pack_id"); - - b.Navigation("Pack"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.StickerPack", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany() - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_sticker_packs_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.StickerPackOwnership", b => - { - b.HasOne("DysonNetwork.Shared.Models.StickerPack", "Pack") - .WithMany("Ownerships") - .HasForeignKey("PackId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_sticker_pack_ownerships_sticker_packs_pack_id"); - - b.Navigation("Pack"); - }); - - 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.Shared.Models.SnPublisher", "Publisher") - .WithMany() - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_web_feeds_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Sphere.WebReader.WebFeedSubscription", b => - { - b.HasOne("DysonNetwork.Sphere.WebReader.WebFeed", "Feed") - .WithMany() - .HasForeignKey("FeedId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_web_feed_subscriptions_web_feeds_feed_id"); - - b.Navigation("Feed"); - }); - - modelBuilder.Entity("SnPostSnPostCategory", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPostCategory", null) - .WithMany() - .HasForeignKey("CategoriesId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_category_links_post_categories_categories_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPost", null) - .WithMany() - .HasForeignKey("PostsId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_category_links_posts_posts_id"); - }); - - modelBuilder.Entity("SnPostSnPostCollection", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPostCollection", null) - .WithMany() - .HasForeignKey("CollectionsId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_collection_links_post_collections_collections_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPost", null) - .WithMany() - .HasForeignKey("PostsId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_collection_links_posts_posts_id"); - }); - - modelBuilder.Entity("SnPostSnPostTag", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPost", null) - .WithMany() - .HasForeignKey("PostsId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_tag_links_posts_posts_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPostTag", null) - .WithMany() - .HasForeignKey("TagsId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_tag_links_post_tags_tags_id"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnChatMessage", b => - { - b.Navigation("Reactions"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnChatRoom", b => - { - b.Navigation("Members"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseActor", b => - { - b.Navigation("FollowerRelationships"); - - b.Navigation("FollowingRelationships"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseInstance", b => - { - b.Navigation("Actors"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPoll", b => - { - b.Navigation("Questions"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPost", b => - { - b.Navigation("Awards"); - - b.Navigation("FeaturedRecords"); - - b.Navigation("Reactions"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPublisher", b => - { - b.Navigation("Collections"); - - b.Navigation("Features"); - - b.Navigation("Members"); - - b.Navigation("Polls"); - - b.Navigation("Posts"); - - b.Navigation("Subscriptions"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.StickerPack", b => - { - b.Navigation("Ownerships"); - - b.Navigation("Stickers"); - }); - - modelBuilder.Entity("DysonNetwork.Sphere.WebReader.WebFeed", b => - { - b.Navigation("Articles"); - }); -#pragma warning restore 612, 618 - } - } -} diff --git a/DysonNetwork.Sphere/Migrations/20251231102829_RemoveFollowingBooleanInFediverse.Designer.cs b/DysonNetwork.Sphere/Migrations/20251231102829_RemoveFollowingBooleanInFediverse.Designer.cs deleted file mode 100644 index 30f7655..0000000 --- a/DysonNetwork.Sphere/Migrations/20251231102829_RemoveFollowingBooleanInFediverse.Designer.cs +++ /dev/null @@ -1,2377 +0,0 @@ -// -using System; -using System.Collections.Generic; -using System.Text.Json; -using DysonNetwork.Shared.Models; -using DysonNetwork.Sphere; -using DysonNetwork.Sphere.WebReader; -using Microsoft.EntityFrameworkCore; -using Microsoft.EntityFrameworkCore.Infrastructure; -using Microsoft.EntityFrameworkCore.Migrations; -using Microsoft.EntityFrameworkCore.Storage.ValueConversion; -using NodaTime; -using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; - -#nullable disable - -namespace DysonNetwork.Sphere.Migrations -{ - [DbContext(typeof(AppDatabase))] - [Migration("20251231102829_RemoveFollowingBooleanInFediverse")] - partial class RemoveFollowingBooleanInFediverse - { - /// - protected override void BuildTargetModel(ModelBuilder modelBuilder) - { -#pragma warning disable 612, 618 - modelBuilder - .HasAnnotation("ProductVersion", "10.0.1") - .HasAnnotation("Relational:MaxIdentifierLength", 63); - - NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnChatMember", 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("InvitedById") - .HasColumnType("uuid") - .HasColumnName("invited_by_id"); - - 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("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.HasIndex("InvitedById") - .HasDatabaseName("ix_chat_members_invited_by_id"); - - b.ToTable("chat_members", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnChatMessage", 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.PrimitiveCollection("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.Shared.Models.SnChatMessageReaction", 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.Shared.Models.SnChatRoom", 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("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("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.ToTable("chat_rooms", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseActor", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("AvatarUrl") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("avatar_url"); - - 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("DisplayName") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("display_name"); - - b.Property("FeaturedUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("featured_uri"); - - b.Property("FollowersUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("followers_uri"); - - b.Property("FollowingUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("following_uri"); - - b.Property("HeaderUrl") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("header_url"); - - b.Property("InboxUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("inbox_uri"); - - b.Property("InstanceId") - .HasColumnType("uuid") - .HasColumnName("instance_id"); - - b.Property("IsBot") - .HasColumnType("boolean") - .HasColumnName("is_bot"); - - b.Property("IsDiscoverable") - .HasColumnType("boolean") - .HasColumnName("is_discoverable"); - - b.Property("IsLocked") - .HasColumnType("boolean") - .HasColumnName("is_locked"); - - b.Property("LastActivityAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("last_activity_at"); - - b.Property("LastFetchedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("last_fetched_at"); - - b.Property>("Metadata") - .HasColumnType("jsonb") - .HasColumnName("metadata"); - - b.Property("OutboxUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("outbox_uri"); - - b.Property("PublicKey") - .HasMaxLength(8192) - .HasColumnType("character varying(8192)") - .HasColumnName("public_key"); - - b.Property("PublicKeyId") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("public_key_id"); - - b.Property("PublisherId") - .HasColumnType("uuid") - .HasColumnName("publisher_id"); - - b.Property("Type") - .IsRequired() - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("type"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.Property("Uri") - .IsRequired() - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("uri"); - - b.Property("Username") - .IsRequired() - .HasMaxLength(256) - .HasColumnType("character varying(256)") - .HasColumnName("username"); - - b.HasKey("Id") - .HasName("pk_fediverse_actors"); - - b.HasIndex("InstanceId") - .HasDatabaseName("ix_fediverse_actors_instance_id"); - - b.HasIndex("Uri") - .IsUnique() - .HasDatabaseName("ix_fediverse_actors_uri"); - - b.ToTable("fediverse_actors", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseInstance", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("ActiveUsers") - .HasColumnType("integer") - .HasColumnName("active_users"); - - b.Property("BlockReason") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("block_reason"); - - b.Property("ContactAccountUsername") - .HasMaxLength(256) - .HasColumnType("character varying(256)") - .HasColumnName("contact_account_username"); - - b.Property("ContactEmail") - .HasMaxLength(512) - .HasColumnType("character varying(512)") - .HasColumnName("contact_email"); - - 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("Domain") - .IsRequired() - .HasMaxLength(256) - .HasColumnType("character varying(256)") - .HasColumnName("domain"); - - b.Property("IconUrl") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("icon_url"); - - b.Property("IsBlocked") - .HasColumnType("boolean") - .HasColumnName("is_blocked"); - - b.Property("IsSilenced") - .HasColumnType("boolean") - .HasColumnName("is_silenced"); - - b.Property("LastActivityAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("last_activity_at"); - - b.Property("LastFetchedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("last_fetched_at"); - - b.Property>("Metadata") - .HasColumnType("jsonb") - .HasColumnName("metadata"); - - b.Property("MetadataFetchedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("metadata_fetched_at"); - - b.Property("Name") - .HasMaxLength(512) - .HasColumnType("character varying(512)") - .HasColumnName("name"); - - b.Property("Software") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("software"); - - b.Property("ThumbnailUrl") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("thumbnail_url"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.Property("Version") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("version"); - - b.HasKey("Id") - .HasName("pk_fediverse_instances"); - - b.HasIndex("Domain") - .IsUnique() - .HasDatabaseName("ix_fediverse_instances_domain"); - - b.ToTable("fediverse_instances", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseRelationship", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("ActorId") - .HasColumnType("uuid") - .HasColumnName("actor_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("FollowedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("followed_at"); - - b.Property("FollowedBackAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("followed_back_at"); - - b.Property("IsBlocking") - .HasColumnType("boolean") - .HasColumnName("is_blocking"); - - b.Property("IsMuting") - .HasColumnType("boolean") - .HasColumnName("is_muting"); - - b.Property("RejectReason") - .HasMaxLength(4096) - .HasColumnType("character varying(4096)") - .HasColumnName("reject_reason"); - - b.Property("State") - .HasColumnType("integer") - .HasColumnName("state"); - - b.Property("TargetActorId") - .HasColumnType("uuid") - .HasColumnName("target_actor_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_fediverse_relationships"); - - b.HasIndex("ActorId") - .HasDatabaseName("ix_fediverse_relationships_actor_id"); - - b.HasIndex("TargetActorId") - .HasDatabaseName("ix_fediverse_relationships_target_actor_id"); - - b.ToTable("fediverse_relationships", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPoll", 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("EndedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("ended_at"); - - b.Property("IsAnonymous") - .HasColumnType("boolean") - .HasColumnName("is_anonymous"); - - b.Property("PublisherId") - .HasColumnType("uuid") - .HasColumnName("publisher_id"); - - b.Property("Title") - .HasMaxLength(1024) - .HasColumnType("character varying(1024)") - .HasColumnName("title"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_polls"); - - b.HasIndex("PublisherId") - .HasDatabaseName("ix_polls_publisher_id"); - - b.ToTable("polls", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPollAnswer", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("AccountId") - .HasColumnType("uuid") - .HasColumnName("account_id"); - - b.Property>("Answer") - .IsRequired() - .HasColumnType("jsonb") - .HasColumnName("answer"); - - b.Property("CreatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("created_at"); - - b.Property("DeletedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("deleted_at"); - - b.Property("PollId") - .HasColumnType("uuid") - .HasColumnName("poll_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_poll_answers"); - - b.HasIndex("PollId") - .HasDatabaseName("ix_poll_answers_poll_id"); - - b.ToTable("poll_answers", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPollQuestion", 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("IsRequired") - .HasColumnType("boolean") - .HasColumnName("is_required"); - - b.Property>("Options") - .HasColumnType("jsonb") - .HasColumnName("options"); - - b.Property("Order") - .HasColumnType("integer") - .HasColumnName("order"); - - b.Property("PollId") - .HasColumnType("uuid") - .HasColumnName("poll_id"); - - b.Property("Title") - .IsRequired() - .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.HasKey("Id") - .HasName("pk_poll_questions"); - - b.HasIndex("PollId") - .HasDatabaseName("ix_poll_questions_poll_id"); - - b.ToTable("poll_questions", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPost", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("ActorId") - .HasColumnType("uuid") - .HasColumnName("actor_id"); - - b.Property>("Attachments") - .IsRequired() - .HasColumnType("jsonb") - .HasColumnName("attachments"); - - b.Property("AwardedScore") - .HasColumnType("numeric") - .HasColumnName("awarded_score"); - - b.Property("BoostCount") - .HasColumnType("integer") - .HasColumnName("boost_count"); - - b.Property("Content") - .HasColumnType("text") - .HasColumnName("content"); - - b.Property("ContentType") - .HasColumnType("integer") - .HasColumnName("content_type"); - - 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("EmbedView") - .HasColumnType("jsonb") - .HasColumnName("embed_view"); - - b.Property("FediverseType") - .HasColumnType("integer") - .HasColumnName("fediverse_type"); - - b.Property("FediverseUri") - .HasMaxLength(8192) - .HasColumnType("character varying(8192)") - .HasColumnName("fediverse_uri"); - - b.Property("ForwardedGone") - .HasColumnType("boolean") - .HasColumnName("forwarded_gone"); - - b.Property("ForwardedPostId") - .HasColumnType("uuid") - .HasColumnName("forwarded_post_id"); - - b.Property("Language") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("language"); - - b.Property("LikeCount") - .HasColumnType("integer") - .HasColumnName("like_count"); - - b.Property>("Mentions") - .HasColumnType("jsonb") - .HasColumnName("mentions"); - - b.Property>("Metadata") - .HasColumnType("jsonb") - .HasColumnName("metadata"); - - b.Property("PinMode") - .HasColumnType("integer") - .HasColumnName("pin_mode"); - - b.Property("PublishedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("published_at"); - - b.Property("PublisherId") - .HasColumnType("uuid") - .HasColumnName("publisher_id"); - - b.Property("RealmId") - .HasColumnType("uuid") - .HasColumnName("realm_id"); - - b.Property("RepliedGone") - .HasColumnType("boolean") - .HasColumnName("replied_gone"); - - b.Property("RepliedPostId") - .HasColumnType("uuid") - .HasColumnName("replied_post_id"); - - b.Property("RepliesCount") - .HasColumnType("integer") - .HasColumnName("replies_count"); - - b.PrimitiveCollection("SensitiveMarks") - .HasColumnType("jsonb") - .HasColumnName("sensitive_marks"); - - b.Property("Slug") - .HasMaxLength(1024) - .HasColumnType("character varying(1024)") - .HasColumnName("slug"); - - 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("ActorId") - .HasDatabaseName("ix_posts_actor_id"); - - 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.ToTable("posts", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostAward", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("AccountId") - .HasColumnType("uuid") - .HasColumnName("account_id"); - - b.Property("Amount") - .HasColumnType("numeric") - .HasColumnName("amount"); - - 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("Message") - .HasMaxLength(4096) - .HasColumnType("character varying(4096)") - .HasColumnName("message"); - - b.Property("PostId") - .HasColumnType("uuid") - .HasColumnName("post_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_post_awards"); - - b.HasIndex("PostId") - .HasDatabaseName("ix_post_awards_post_id"); - - b.ToTable("post_awards", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostCategory", 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.Shared.Models.SnPostCategorySubscription", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("AccountId") - .HasColumnType("uuid") - .HasColumnName("account_id"); - - b.Property("CategoryId") - .HasColumnType("uuid") - .HasColumnName("category_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("TagId") - .HasColumnType("uuid") - .HasColumnName("tag_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_post_category_subscriptions"); - - b.HasIndex("CategoryId") - .HasDatabaseName("ix_post_category_subscriptions_category_id"); - - b.HasIndex("TagId") - .HasDatabaseName("ix_post_category_subscriptions_tag_id"); - - b.ToTable("post_category_subscriptions", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostCollection", 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.Shared.Models.SnPostFeaturedRecord", 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("FeaturedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("featured_at"); - - b.Property("PostId") - .HasColumnType("uuid") - .HasColumnName("post_id"); - - b.Property("SocialCredits") - .HasColumnType("integer") - .HasColumnName("social_credits"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_post_featured_records"); - - b.HasIndex("PostId") - .HasDatabaseName("ix_post_featured_records_post_id"); - - b.ToTable("post_featured_records", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostReaction", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("AccountId") - .HasColumnType("uuid") - .HasColumnName("account_id"); - - b.Property("ActorId") - .HasColumnType("uuid") - .HasColumnName("actor_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("FediverseUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("fediverse_uri"); - - b.Property("IsLocal") - .HasColumnType("boolean") - .HasColumnName("is_local"); - - 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("ActorId") - .HasDatabaseName("ix_post_reactions_actor_id"); - - b.HasIndex("PostId") - .HasDatabaseName("ix_post_reactions_post_id"); - - b.ToTable("post_reactions", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostTag", 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.Shared.Models.SnPublisher", 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("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>("Meta") - .HasColumnType("jsonb") - .HasColumnName("meta"); - - 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("PrivateKeyPem") - .HasMaxLength(8192) - .HasColumnType("character varying(8192)") - .HasColumnName("private_key_pem"); - - b.Property("PublicKeyPem") - .HasMaxLength(8192) - .HasColumnType("character varying(8192)") - .HasColumnName("public_key_pem"); - - 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.ToTable("publishers", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPublisherFeature", 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.Shared.Models.SnPublisherMember", 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.Shared.Models.SnPublisherSubscription", 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.Shared.Models.SnRealtimeCall", 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.Shared.Models.SnSticker", 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") - .IsRequired() - .HasColumnType("jsonb") - .HasColumnName("image"); - - 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.Shared.Models.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("Icon") - .HasColumnType("jsonb") - .HasColumnName("icon"); - - 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.Shared.Models.StickerPackOwnership", 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("PackId") - .HasColumnType("uuid") - .HasColumnName("pack_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_sticker_pack_ownerships"); - - b.HasIndex("PackId") - .HasDatabaseName("ix_sticker_pack_ownerships_pack_id"); - - b.ToTable("sticker_pack_ownerships", (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("DysonNetwork.Sphere.WebReader.WebFeedSubscription", 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("FeedId") - .HasColumnType("uuid") - .HasColumnName("feed_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_web_feed_subscriptions"); - - b.HasIndex("FeedId") - .HasDatabaseName("ix_web_feed_subscriptions_feed_id"); - - b.ToTable("web_feed_subscriptions", (string)null); - }); - - modelBuilder.Entity("SnPostSnPostCategory", 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("SnPostSnPostCollection", 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("SnPostSnPostTag", 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.Shared.Models.SnChatMember", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnChatRoom", "ChatRoom") - .WithMany("Members") - .HasForeignKey("ChatRoomId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_chat_members_chat_rooms_chat_room_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMember", "InvitedBy") - .WithMany() - .HasForeignKey("InvitedById") - .HasConstraintName("fk_chat_members_chat_members_invited_by_id"); - - b.Navigation("ChatRoom"); - - b.Navigation("InvitedBy"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnChatMessage", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnChatRoom", "ChatRoom") - .WithMany() - .HasForeignKey("ChatRoomId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_chat_messages_chat_rooms_chat_room_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMessage", "ForwardedMessage") - .WithMany() - .HasForeignKey("ForwardedMessageId") - .OnDelete(DeleteBehavior.Restrict) - .HasConstraintName("fk_chat_messages_chat_messages_forwarded_message_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMessage", "RepliedMessage") - .WithMany() - .HasForeignKey("RepliedMessageId") - .OnDelete(DeleteBehavior.Restrict) - .HasConstraintName("fk_chat_messages_chat_messages_replied_message_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMember", "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.Shared.Models.SnChatMessageReaction", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnChatMessage", "Message") - .WithMany("Reactions") - .HasForeignKey("MessageId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_chat_reactions_chat_messages_message_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMember", "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.Shared.Models.SnFediverseActor", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnFediverseInstance", "Instance") - .WithMany("Actors") - .HasForeignKey("InstanceId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_actors_fediverse_instances_instance_id"); - - b.Navigation("Instance"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseRelationship", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "Actor") - .WithMany("FollowingRelationships") - .HasForeignKey("ActorId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_relationships_fediverse_actors_actor_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "TargetActor") - .WithMany("FollowerRelationships") - .HasForeignKey("TargetActorId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_relationships_fediverse_actors_target_actor_id"); - - b.Navigation("Actor"); - - b.Navigation("TargetActor"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPoll", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Polls") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_polls_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPollAnswer", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPoll", "Poll") - .WithMany() - .HasForeignKey("PollId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_poll_answers_polls_poll_id"); - - b.Navigation("Poll"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPollQuestion", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPoll", "Poll") - .WithMany("Questions") - .HasForeignKey("PollId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_poll_questions_polls_poll_id"); - - b.Navigation("Poll"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPost", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "Actor") - .WithMany() - .HasForeignKey("ActorId") - .HasConstraintName("fk_posts_fediverse_actors_actor_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPost", "ForwardedPost") - .WithMany() - .HasForeignKey("ForwardedPostId") - .OnDelete(DeleteBehavior.Restrict) - .HasConstraintName("fk_posts_posts_forwarded_post_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Posts") - .HasForeignKey("PublisherId") - .HasConstraintName("fk_posts_publishers_publisher_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPost", "RepliedPost") - .WithMany() - .HasForeignKey("RepliedPostId") - .OnDelete(DeleteBehavior.Restrict) - .HasConstraintName("fk_posts_posts_replied_post_id"); - - b.Navigation("Actor"); - - b.Navigation("ForwardedPost"); - - b.Navigation("Publisher"); - - b.Navigation("RepliedPost"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostAward", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPost", "Post") - .WithMany("Awards") - .HasForeignKey("PostId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_awards_posts_post_id"); - - b.Navigation("Post"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostCategorySubscription", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPostCategory", "Category") - .WithMany() - .HasForeignKey("CategoryId") - .HasConstraintName("fk_post_category_subscriptions_post_categories_category_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPostTag", "Tag") - .WithMany() - .HasForeignKey("TagId") - .HasConstraintName("fk_post_category_subscriptions_post_tags_tag_id"); - - b.Navigation("Category"); - - b.Navigation("Tag"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostCollection", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Collections") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_collections_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostFeaturedRecord", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPost", "Post") - .WithMany("FeaturedRecords") - .HasForeignKey("PostId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_featured_records_posts_post_id"); - - b.Navigation("Post"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostReaction", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "Actor") - .WithMany() - .HasForeignKey("ActorId") - .HasConstraintName("fk_post_reactions_fediverse_actors_actor_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPost", "Post") - .WithMany("Reactions") - .HasForeignKey("PostId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_reactions_posts_post_id"); - - b.Navigation("Actor"); - - b.Navigation("Post"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPublisherFeature", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Features") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_publisher_features_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPublisherMember", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Members") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_publisher_members_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPublisherSubscription", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Subscriptions") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_publisher_subscriptions_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnRealtimeCall", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnChatRoom", "Room") - .WithMany() - .HasForeignKey("RoomId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_chat_realtime_call_chat_rooms_room_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMember", "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.Shared.Models.SnSticker", b => - { - b.HasOne("DysonNetwork.Shared.Models.StickerPack", "Pack") - .WithMany("Stickers") - .HasForeignKey("PackId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_stickers_sticker_packs_pack_id"); - - b.Navigation("Pack"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.StickerPack", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany() - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_sticker_packs_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.StickerPackOwnership", b => - { - b.HasOne("DysonNetwork.Shared.Models.StickerPack", "Pack") - .WithMany("Ownerships") - .HasForeignKey("PackId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_sticker_pack_ownerships_sticker_packs_pack_id"); - - b.Navigation("Pack"); - }); - - 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.Shared.Models.SnPublisher", "Publisher") - .WithMany() - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_web_feeds_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Sphere.WebReader.WebFeedSubscription", b => - { - b.HasOne("DysonNetwork.Sphere.WebReader.WebFeed", "Feed") - .WithMany() - .HasForeignKey("FeedId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_web_feed_subscriptions_web_feeds_feed_id"); - - b.Navigation("Feed"); - }); - - modelBuilder.Entity("SnPostSnPostCategory", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPostCategory", null) - .WithMany() - .HasForeignKey("CategoriesId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_category_links_post_categories_categories_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPost", null) - .WithMany() - .HasForeignKey("PostsId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_category_links_posts_posts_id"); - }); - - modelBuilder.Entity("SnPostSnPostCollection", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPostCollection", null) - .WithMany() - .HasForeignKey("CollectionsId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_collection_links_post_collections_collections_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPost", null) - .WithMany() - .HasForeignKey("PostsId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_collection_links_posts_posts_id"); - }); - - modelBuilder.Entity("SnPostSnPostTag", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPost", null) - .WithMany() - .HasForeignKey("PostsId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_tag_links_posts_posts_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPostTag", null) - .WithMany() - .HasForeignKey("TagsId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_tag_links_post_tags_tags_id"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnChatMessage", b => - { - b.Navigation("Reactions"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnChatRoom", b => - { - b.Navigation("Members"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseActor", b => - { - b.Navigation("FollowerRelationships"); - - b.Navigation("FollowingRelationships"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseInstance", b => - { - b.Navigation("Actors"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPoll", b => - { - b.Navigation("Questions"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPost", b => - { - b.Navigation("Awards"); - - b.Navigation("FeaturedRecords"); - - b.Navigation("Reactions"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPublisher", b => - { - b.Navigation("Collections"); - - b.Navigation("Features"); - - b.Navigation("Members"); - - b.Navigation("Polls"); - - b.Navigation("Posts"); - - b.Navigation("Subscriptions"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.StickerPack", b => - { - b.Navigation("Ownerships"); - - b.Navigation("Stickers"); - }); - - modelBuilder.Entity("DysonNetwork.Sphere.WebReader.WebFeed", b => - { - b.Navigation("Articles"); - }); -#pragma warning restore 612, 618 - } - } -} diff --git a/DysonNetwork.Sphere/Migrations/20251231102829_RemoveFollowingBooleanInFediverse.cs b/DysonNetwork.Sphere/Migrations/20251231102829_RemoveFollowingBooleanInFediverse.cs deleted file mode 100644 index 48b30af..0000000 --- a/DysonNetwork.Sphere/Migrations/20251231102829_RemoveFollowingBooleanInFediverse.cs +++ /dev/null @@ -1,40 +0,0 @@ -using Microsoft.EntityFrameworkCore.Migrations; - -#nullable disable - -namespace DysonNetwork.Sphere.Migrations -{ - /// - public partial class RemoveFollowingBooleanInFediverse : Migration - { - /// - protected override void Up(MigrationBuilder migrationBuilder) - { - migrationBuilder.DropColumn( - name: "is_followed_by", - table: "fediverse_relationships"); - - migrationBuilder.DropColumn( - name: "is_following", - table: "fediverse_relationships"); - } - - /// - protected override void Down(MigrationBuilder migrationBuilder) - { - migrationBuilder.AddColumn( - name: "is_followed_by", - table: "fediverse_relationships", - type: "boolean", - nullable: false, - defaultValue: false); - - migrationBuilder.AddColumn( - name: "is_following", - table: "fediverse_relationships", - type: "boolean", - nullable: false, - defaultValue: false); - } - } -} diff --git a/DysonNetwork.Sphere/Migrations/20251231143021_RemoveSeprateLikeCountOnPost.Designer.cs b/DysonNetwork.Sphere/Migrations/20251231143021_RemoveSeprateLikeCountOnPost.Designer.cs deleted file mode 100644 index ad23ce9..0000000 --- a/DysonNetwork.Sphere/Migrations/20251231143021_RemoveSeprateLikeCountOnPost.Designer.cs +++ /dev/null @@ -1,2373 +0,0 @@ -// -using System; -using System.Collections.Generic; -using System.Text.Json; -using DysonNetwork.Shared.Models; -using DysonNetwork.Sphere; -using DysonNetwork.Sphere.WebReader; -using Microsoft.EntityFrameworkCore; -using Microsoft.EntityFrameworkCore.Infrastructure; -using Microsoft.EntityFrameworkCore.Migrations; -using Microsoft.EntityFrameworkCore.Storage.ValueConversion; -using NodaTime; -using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; - -#nullable disable - -namespace DysonNetwork.Sphere.Migrations -{ - [DbContext(typeof(AppDatabase))] - [Migration("20251231143021_RemoveSeprateLikeCountOnPost")] - partial class RemoveSeprateLikeCountOnPost - { - /// - protected override void BuildTargetModel(ModelBuilder modelBuilder) - { -#pragma warning disable 612, 618 - modelBuilder - .HasAnnotation("ProductVersion", "10.0.1") - .HasAnnotation("Relational:MaxIdentifierLength", 63); - - NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnChatMember", 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("InvitedById") - .HasColumnType("uuid") - .HasColumnName("invited_by_id"); - - 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("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.HasIndex("InvitedById") - .HasDatabaseName("ix_chat_members_invited_by_id"); - - b.ToTable("chat_members", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnChatMessage", 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.PrimitiveCollection("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.Shared.Models.SnChatMessageReaction", 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.Shared.Models.SnChatRoom", 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("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("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.ToTable("chat_rooms", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseActor", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("AvatarUrl") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("avatar_url"); - - 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("DisplayName") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("display_name"); - - b.Property("FeaturedUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("featured_uri"); - - b.Property("FollowersUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("followers_uri"); - - b.Property("FollowingUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("following_uri"); - - b.Property("HeaderUrl") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("header_url"); - - b.Property("InboxUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("inbox_uri"); - - b.Property("InstanceId") - .HasColumnType("uuid") - .HasColumnName("instance_id"); - - b.Property("IsBot") - .HasColumnType("boolean") - .HasColumnName("is_bot"); - - b.Property("IsDiscoverable") - .HasColumnType("boolean") - .HasColumnName("is_discoverable"); - - b.Property("IsLocked") - .HasColumnType("boolean") - .HasColumnName("is_locked"); - - b.Property("LastActivityAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("last_activity_at"); - - b.Property("LastFetchedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("last_fetched_at"); - - b.Property>("Metadata") - .HasColumnType("jsonb") - .HasColumnName("metadata"); - - b.Property("OutboxUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("outbox_uri"); - - b.Property("PublicKey") - .HasMaxLength(8192) - .HasColumnType("character varying(8192)") - .HasColumnName("public_key"); - - b.Property("PublicKeyId") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("public_key_id"); - - b.Property("PublisherId") - .HasColumnType("uuid") - .HasColumnName("publisher_id"); - - b.Property("Type") - .IsRequired() - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("type"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.Property("Uri") - .IsRequired() - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("uri"); - - b.Property("Username") - .IsRequired() - .HasMaxLength(256) - .HasColumnType("character varying(256)") - .HasColumnName("username"); - - b.HasKey("Id") - .HasName("pk_fediverse_actors"); - - b.HasIndex("InstanceId") - .HasDatabaseName("ix_fediverse_actors_instance_id"); - - b.HasIndex("Uri") - .IsUnique() - .HasDatabaseName("ix_fediverse_actors_uri"); - - b.ToTable("fediverse_actors", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseInstance", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("ActiveUsers") - .HasColumnType("integer") - .HasColumnName("active_users"); - - b.Property("BlockReason") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("block_reason"); - - b.Property("ContactAccountUsername") - .HasMaxLength(256) - .HasColumnType("character varying(256)") - .HasColumnName("contact_account_username"); - - b.Property("ContactEmail") - .HasMaxLength(512) - .HasColumnType("character varying(512)") - .HasColumnName("contact_email"); - - 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("Domain") - .IsRequired() - .HasMaxLength(256) - .HasColumnType("character varying(256)") - .HasColumnName("domain"); - - b.Property("IconUrl") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("icon_url"); - - b.Property("IsBlocked") - .HasColumnType("boolean") - .HasColumnName("is_blocked"); - - b.Property("IsSilenced") - .HasColumnType("boolean") - .HasColumnName("is_silenced"); - - b.Property("LastActivityAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("last_activity_at"); - - b.Property("LastFetchedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("last_fetched_at"); - - b.Property>("Metadata") - .HasColumnType("jsonb") - .HasColumnName("metadata"); - - b.Property("MetadataFetchedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("metadata_fetched_at"); - - b.Property("Name") - .HasMaxLength(512) - .HasColumnType("character varying(512)") - .HasColumnName("name"); - - b.Property("Software") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("software"); - - b.Property("ThumbnailUrl") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("thumbnail_url"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.Property("Version") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("version"); - - b.HasKey("Id") - .HasName("pk_fediverse_instances"); - - b.HasIndex("Domain") - .IsUnique() - .HasDatabaseName("ix_fediverse_instances_domain"); - - b.ToTable("fediverse_instances", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseRelationship", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("ActorId") - .HasColumnType("uuid") - .HasColumnName("actor_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("FollowedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("followed_at"); - - b.Property("FollowedBackAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("followed_back_at"); - - b.Property("IsBlocking") - .HasColumnType("boolean") - .HasColumnName("is_blocking"); - - b.Property("IsMuting") - .HasColumnType("boolean") - .HasColumnName("is_muting"); - - b.Property("RejectReason") - .HasMaxLength(4096) - .HasColumnType("character varying(4096)") - .HasColumnName("reject_reason"); - - b.Property("State") - .HasColumnType("integer") - .HasColumnName("state"); - - b.Property("TargetActorId") - .HasColumnType("uuid") - .HasColumnName("target_actor_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_fediverse_relationships"); - - b.HasIndex("ActorId") - .HasDatabaseName("ix_fediverse_relationships_actor_id"); - - b.HasIndex("TargetActorId") - .HasDatabaseName("ix_fediverse_relationships_target_actor_id"); - - b.ToTable("fediverse_relationships", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPoll", 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("EndedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("ended_at"); - - b.Property("IsAnonymous") - .HasColumnType("boolean") - .HasColumnName("is_anonymous"); - - b.Property("PublisherId") - .HasColumnType("uuid") - .HasColumnName("publisher_id"); - - b.Property("Title") - .HasMaxLength(1024) - .HasColumnType("character varying(1024)") - .HasColumnName("title"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_polls"); - - b.HasIndex("PublisherId") - .HasDatabaseName("ix_polls_publisher_id"); - - b.ToTable("polls", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPollAnswer", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("AccountId") - .HasColumnType("uuid") - .HasColumnName("account_id"); - - b.Property>("Answer") - .IsRequired() - .HasColumnType("jsonb") - .HasColumnName("answer"); - - b.Property("CreatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("created_at"); - - b.Property("DeletedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("deleted_at"); - - b.Property("PollId") - .HasColumnType("uuid") - .HasColumnName("poll_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_poll_answers"); - - b.HasIndex("PollId") - .HasDatabaseName("ix_poll_answers_poll_id"); - - b.ToTable("poll_answers", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPollQuestion", 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("IsRequired") - .HasColumnType("boolean") - .HasColumnName("is_required"); - - b.Property>("Options") - .HasColumnType("jsonb") - .HasColumnName("options"); - - b.Property("Order") - .HasColumnType("integer") - .HasColumnName("order"); - - b.Property("PollId") - .HasColumnType("uuid") - .HasColumnName("poll_id"); - - b.Property("Title") - .IsRequired() - .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.HasKey("Id") - .HasName("pk_poll_questions"); - - b.HasIndex("PollId") - .HasDatabaseName("ix_poll_questions_poll_id"); - - b.ToTable("poll_questions", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPost", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("ActorId") - .HasColumnType("uuid") - .HasColumnName("actor_id"); - - b.Property>("Attachments") - .IsRequired() - .HasColumnType("jsonb") - .HasColumnName("attachments"); - - b.Property("AwardedScore") - .HasColumnType("numeric") - .HasColumnName("awarded_score"); - - b.Property("BoostCount") - .HasColumnType("integer") - .HasColumnName("boost_count"); - - b.Property("Content") - .HasColumnType("text") - .HasColumnName("content"); - - b.Property("ContentType") - .HasColumnType("integer") - .HasColumnName("content_type"); - - 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("EmbedView") - .HasColumnType("jsonb") - .HasColumnName("embed_view"); - - b.Property("FediverseType") - .HasColumnType("integer") - .HasColumnName("fediverse_type"); - - b.Property("FediverseUri") - .HasMaxLength(8192) - .HasColumnType("character varying(8192)") - .HasColumnName("fediverse_uri"); - - b.Property("ForwardedGone") - .HasColumnType("boolean") - .HasColumnName("forwarded_gone"); - - b.Property("ForwardedPostId") - .HasColumnType("uuid") - .HasColumnName("forwarded_post_id"); - - b.Property("Language") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("language"); - - b.Property>("Mentions") - .HasColumnType("jsonb") - .HasColumnName("mentions"); - - b.Property>("Metadata") - .HasColumnType("jsonb") - .HasColumnName("metadata"); - - b.Property("PinMode") - .HasColumnType("integer") - .HasColumnName("pin_mode"); - - b.Property("PublishedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("published_at"); - - b.Property("PublisherId") - .HasColumnType("uuid") - .HasColumnName("publisher_id"); - - b.Property("RealmId") - .HasColumnType("uuid") - .HasColumnName("realm_id"); - - b.Property("RepliedGone") - .HasColumnType("boolean") - .HasColumnName("replied_gone"); - - b.Property("RepliedPostId") - .HasColumnType("uuid") - .HasColumnName("replied_post_id"); - - b.Property("RepliesCount") - .HasColumnType("integer") - .HasColumnName("replies_count"); - - b.PrimitiveCollection("SensitiveMarks") - .HasColumnType("jsonb") - .HasColumnName("sensitive_marks"); - - b.Property("Slug") - .HasMaxLength(1024) - .HasColumnType("character varying(1024)") - .HasColumnName("slug"); - - 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("ActorId") - .HasDatabaseName("ix_posts_actor_id"); - - 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.ToTable("posts", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostAward", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("AccountId") - .HasColumnType("uuid") - .HasColumnName("account_id"); - - b.Property("Amount") - .HasColumnType("numeric") - .HasColumnName("amount"); - - 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("Message") - .HasMaxLength(4096) - .HasColumnType("character varying(4096)") - .HasColumnName("message"); - - b.Property("PostId") - .HasColumnType("uuid") - .HasColumnName("post_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_post_awards"); - - b.HasIndex("PostId") - .HasDatabaseName("ix_post_awards_post_id"); - - b.ToTable("post_awards", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostCategory", 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.Shared.Models.SnPostCategorySubscription", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("AccountId") - .HasColumnType("uuid") - .HasColumnName("account_id"); - - b.Property("CategoryId") - .HasColumnType("uuid") - .HasColumnName("category_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("TagId") - .HasColumnType("uuid") - .HasColumnName("tag_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_post_category_subscriptions"); - - b.HasIndex("CategoryId") - .HasDatabaseName("ix_post_category_subscriptions_category_id"); - - b.HasIndex("TagId") - .HasDatabaseName("ix_post_category_subscriptions_tag_id"); - - b.ToTable("post_category_subscriptions", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostCollection", 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.Shared.Models.SnPostFeaturedRecord", 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("FeaturedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("featured_at"); - - b.Property("PostId") - .HasColumnType("uuid") - .HasColumnName("post_id"); - - b.Property("SocialCredits") - .HasColumnType("integer") - .HasColumnName("social_credits"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_post_featured_records"); - - b.HasIndex("PostId") - .HasDatabaseName("ix_post_featured_records_post_id"); - - b.ToTable("post_featured_records", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostReaction", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uuid") - .HasColumnName("id"); - - b.Property("AccountId") - .HasColumnType("uuid") - .HasColumnName("account_id"); - - b.Property("ActorId") - .HasColumnType("uuid") - .HasColumnName("actor_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("FediverseUri") - .HasMaxLength(2048) - .HasColumnType("character varying(2048)") - .HasColumnName("fediverse_uri"); - - b.Property("IsLocal") - .HasColumnType("boolean") - .HasColumnName("is_local"); - - 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("ActorId") - .HasDatabaseName("ix_post_reactions_actor_id"); - - b.HasIndex("PostId") - .HasDatabaseName("ix_post_reactions_post_id"); - - b.ToTable("post_reactions", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostTag", 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.Shared.Models.SnPublisher", 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("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>("Meta") - .HasColumnType("jsonb") - .HasColumnName("meta"); - - 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("PrivateKeyPem") - .HasMaxLength(8192) - .HasColumnType("character varying(8192)") - .HasColumnName("private_key_pem"); - - b.Property("PublicKeyPem") - .HasMaxLength(8192) - .HasColumnType("character varying(8192)") - .HasColumnName("public_key_pem"); - - 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.ToTable("publishers", (string)null); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPublisherFeature", 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.Shared.Models.SnPublisherMember", 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.Shared.Models.SnPublisherSubscription", 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.Shared.Models.SnRealtimeCall", 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.Shared.Models.SnSticker", 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") - .IsRequired() - .HasColumnType("jsonb") - .HasColumnName("image"); - - 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.Shared.Models.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("Icon") - .HasColumnType("jsonb") - .HasColumnName("icon"); - - 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.Shared.Models.StickerPackOwnership", 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("PackId") - .HasColumnType("uuid") - .HasColumnName("pack_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_sticker_pack_ownerships"); - - b.HasIndex("PackId") - .HasDatabaseName("ix_sticker_pack_ownerships_pack_id"); - - b.ToTable("sticker_pack_ownerships", (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("DysonNetwork.Sphere.WebReader.WebFeedSubscription", 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("FeedId") - .HasColumnType("uuid") - .HasColumnName("feed_id"); - - b.Property("UpdatedAt") - .HasColumnType("timestamp with time zone") - .HasColumnName("updated_at"); - - b.HasKey("Id") - .HasName("pk_web_feed_subscriptions"); - - b.HasIndex("FeedId") - .HasDatabaseName("ix_web_feed_subscriptions_feed_id"); - - b.ToTable("web_feed_subscriptions", (string)null); - }); - - modelBuilder.Entity("SnPostSnPostCategory", 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("SnPostSnPostCollection", 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("SnPostSnPostTag", 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.Shared.Models.SnChatMember", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnChatRoom", "ChatRoom") - .WithMany("Members") - .HasForeignKey("ChatRoomId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_chat_members_chat_rooms_chat_room_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMember", "InvitedBy") - .WithMany() - .HasForeignKey("InvitedById") - .HasConstraintName("fk_chat_members_chat_members_invited_by_id"); - - b.Navigation("ChatRoom"); - - b.Navigation("InvitedBy"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnChatMessage", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnChatRoom", "ChatRoom") - .WithMany() - .HasForeignKey("ChatRoomId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_chat_messages_chat_rooms_chat_room_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMessage", "ForwardedMessage") - .WithMany() - .HasForeignKey("ForwardedMessageId") - .OnDelete(DeleteBehavior.Restrict) - .HasConstraintName("fk_chat_messages_chat_messages_forwarded_message_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMessage", "RepliedMessage") - .WithMany() - .HasForeignKey("RepliedMessageId") - .OnDelete(DeleteBehavior.Restrict) - .HasConstraintName("fk_chat_messages_chat_messages_replied_message_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMember", "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.Shared.Models.SnChatMessageReaction", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnChatMessage", "Message") - .WithMany("Reactions") - .HasForeignKey("MessageId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_chat_reactions_chat_messages_message_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMember", "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.Shared.Models.SnFediverseActor", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnFediverseInstance", "Instance") - .WithMany("Actors") - .HasForeignKey("InstanceId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_actors_fediverse_instances_instance_id"); - - b.Navigation("Instance"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseRelationship", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "Actor") - .WithMany("FollowingRelationships") - .HasForeignKey("ActorId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_relationships_fediverse_actors_actor_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "TargetActor") - .WithMany("FollowerRelationships") - .HasForeignKey("TargetActorId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_fediverse_relationships_fediverse_actors_target_actor_id"); - - b.Navigation("Actor"); - - b.Navigation("TargetActor"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPoll", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Polls") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_polls_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPollAnswer", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPoll", "Poll") - .WithMany() - .HasForeignKey("PollId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_poll_answers_polls_poll_id"); - - b.Navigation("Poll"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPollQuestion", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPoll", "Poll") - .WithMany("Questions") - .HasForeignKey("PollId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_poll_questions_polls_poll_id"); - - b.Navigation("Poll"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPost", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "Actor") - .WithMany() - .HasForeignKey("ActorId") - .HasConstraintName("fk_posts_fediverse_actors_actor_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPost", "ForwardedPost") - .WithMany() - .HasForeignKey("ForwardedPostId") - .OnDelete(DeleteBehavior.Restrict) - .HasConstraintName("fk_posts_posts_forwarded_post_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Posts") - .HasForeignKey("PublisherId") - .HasConstraintName("fk_posts_publishers_publisher_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPost", "RepliedPost") - .WithMany() - .HasForeignKey("RepliedPostId") - .OnDelete(DeleteBehavior.Restrict) - .HasConstraintName("fk_posts_posts_replied_post_id"); - - b.Navigation("Actor"); - - b.Navigation("ForwardedPost"); - - b.Navigation("Publisher"); - - b.Navigation("RepliedPost"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostAward", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPost", "Post") - .WithMany("Awards") - .HasForeignKey("PostId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_awards_posts_post_id"); - - b.Navigation("Post"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostCategorySubscription", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPostCategory", "Category") - .WithMany() - .HasForeignKey("CategoryId") - .HasConstraintName("fk_post_category_subscriptions_post_categories_category_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPostTag", "Tag") - .WithMany() - .HasForeignKey("TagId") - .HasConstraintName("fk_post_category_subscriptions_post_tags_tag_id"); - - b.Navigation("Category"); - - b.Navigation("Tag"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostCollection", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Collections") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_collections_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostFeaturedRecord", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPost", "Post") - .WithMany("FeaturedRecords") - .HasForeignKey("PostId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_featured_records_posts_post_id"); - - b.Navigation("Post"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPostReaction", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnFediverseActor", "Actor") - .WithMany() - .HasForeignKey("ActorId") - .HasConstraintName("fk_post_reactions_fediverse_actors_actor_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPost", "Post") - .WithMany("Reactions") - .HasForeignKey("PostId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_reactions_posts_post_id"); - - b.Navigation("Actor"); - - b.Navigation("Post"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPublisherFeature", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Features") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_publisher_features_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPublisherMember", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Members") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_publisher_members_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPublisherSubscription", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany("Subscriptions") - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_publisher_subscriptions_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnRealtimeCall", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnChatRoom", "Room") - .WithMany() - .HasForeignKey("RoomId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_chat_realtime_call_chat_rooms_room_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnChatMember", "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.Shared.Models.SnSticker", b => - { - b.HasOne("DysonNetwork.Shared.Models.StickerPack", "Pack") - .WithMany("Stickers") - .HasForeignKey("PackId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_stickers_sticker_packs_pack_id"); - - b.Navigation("Pack"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.StickerPack", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPublisher", "Publisher") - .WithMany() - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_sticker_packs_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.StickerPackOwnership", b => - { - b.HasOne("DysonNetwork.Shared.Models.StickerPack", "Pack") - .WithMany("Ownerships") - .HasForeignKey("PackId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_sticker_pack_ownerships_sticker_packs_pack_id"); - - b.Navigation("Pack"); - }); - - 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.Shared.Models.SnPublisher", "Publisher") - .WithMany() - .HasForeignKey("PublisherId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_web_feeds_publishers_publisher_id"); - - b.Navigation("Publisher"); - }); - - modelBuilder.Entity("DysonNetwork.Sphere.WebReader.WebFeedSubscription", b => - { - b.HasOne("DysonNetwork.Sphere.WebReader.WebFeed", "Feed") - .WithMany() - .HasForeignKey("FeedId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_web_feed_subscriptions_web_feeds_feed_id"); - - b.Navigation("Feed"); - }); - - modelBuilder.Entity("SnPostSnPostCategory", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPostCategory", null) - .WithMany() - .HasForeignKey("CategoriesId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_category_links_post_categories_categories_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPost", null) - .WithMany() - .HasForeignKey("PostsId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_category_links_posts_posts_id"); - }); - - modelBuilder.Entity("SnPostSnPostCollection", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPostCollection", null) - .WithMany() - .HasForeignKey("CollectionsId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_collection_links_post_collections_collections_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPost", null) - .WithMany() - .HasForeignKey("PostsId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_collection_links_posts_posts_id"); - }); - - modelBuilder.Entity("SnPostSnPostTag", b => - { - b.HasOne("DysonNetwork.Shared.Models.SnPost", null) - .WithMany() - .HasForeignKey("PostsId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_tag_links_posts_posts_id"); - - b.HasOne("DysonNetwork.Shared.Models.SnPostTag", null) - .WithMany() - .HasForeignKey("TagsId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired() - .HasConstraintName("fk_post_tag_links_post_tags_tags_id"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnChatMessage", b => - { - b.Navigation("Reactions"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnChatRoom", b => - { - b.Navigation("Members"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseActor", b => - { - b.Navigation("FollowerRelationships"); - - b.Navigation("FollowingRelationships"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnFediverseInstance", b => - { - b.Navigation("Actors"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPoll", b => - { - b.Navigation("Questions"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPost", b => - { - b.Navigation("Awards"); - - b.Navigation("FeaturedRecords"); - - b.Navigation("Reactions"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.SnPublisher", b => - { - b.Navigation("Collections"); - - b.Navigation("Features"); - - b.Navigation("Members"); - - b.Navigation("Polls"); - - b.Navigation("Posts"); - - b.Navigation("Subscriptions"); - }); - - modelBuilder.Entity("DysonNetwork.Shared.Models.StickerPack", b => - { - b.Navigation("Ownerships"); - - b.Navigation("Stickers"); - }); - - modelBuilder.Entity("DysonNetwork.Sphere.WebReader.WebFeed", b => - { - b.Navigation("Articles"); - }); -#pragma warning restore 612, 618 - } - } -} diff --git a/DysonNetwork.Sphere/Migrations/20251231143021_RemoveSeprateLikeCountOnPost.cs b/DysonNetwork.Sphere/Migrations/20251231143021_RemoveSeprateLikeCountOnPost.cs deleted file mode 100644 index 39d933e..0000000 --- a/DysonNetwork.Sphere/Migrations/20251231143021_RemoveSeprateLikeCountOnPost.cs +++ /dev/null @@ -1,29 +0,0 @@ -using Microsoft.EntityFrameworkCore.Migrations; - -#nullable disable - -namespace DysonNetwork.Sphere.Migrations -{ - /// - public partial class RemoveSeprateLikeCountOnPost : Migration - { - /// - protected override void Up(MigrationBuilder migrationBuilder) - { - migrationBuilder.DropColumn( - name: "like_count", - table: "posts"); - } - - /// - protected override void Down(MigrationBuilder migrationBuilder) - { - migrationBuilder.AddColumn( - name: "like_count", - table: "posts", - type: "integer", - nullable: false, - defaultValue: 0); - } - } -} diff --git a/DysonNetwork.Sphere/Migrations/20251231163256_AddActivityPubDelivery.cs b/DysonNetwork.Sphere/Migrations/20251231163256_AddActivityPubDelivery.cs deleted file mode 100644 index 5ae31ec..0000000 --- a/DysonNetwork.Sphere/Migrations/20251231163256_AddActivityPubDelivery.cs +++ /dev/null @@ -1,48 +0,0 @@ -using System; -using Microsoft.EntityFrameworkCore.Migrations; -using NodaTime; - -#nullable disable - -namespace DysonNetwork.Sphere.Migrations -{ - /// - public partial class AddActivityPubDelivery : Migration - { - /// - protected override void Up(MigrationBuilder migrationBuilder) - { - migrationBuilder.CreateTable( - name: "activity_pub_deliveries", - columns: table => new - { - id = table.Column(type: "uuid", nullable: false), - activity_id = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: false), - activity_type = table.Column(type: "character varying(128)", maxLength: 128, nullable: false), - inbox_uri = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: false), - actor_uri = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: false), - status = table.Column(type: "integer", nullable: false), - retry_count = table.Column(type: "integer", nullable: false), - error_message = table.Column(type: "character varying(4096)", maxLength: 4096, nullable: true), - last_attempt_at = table.Column(type: "timestamp with time zone", nullable: true), - next_retry_at = table.Column(type: "timestamp with time zone", nullable: true), - sent_at = table.Column(type: "timestamp with time zone", nullable: true), - response_status_code = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: true), - created_at = table.Column(type: "timestamp with time zone", nullable: false), - updated_at = table.Column(type: "timestamp with time zone", nullable: false), - deleted_at = table.Column(type: "timestamp with time zone", nullable: true) - }, - constraints: table => - { - table.PrimaryKey("pk_activity_pub_deliveries", x => x.id); - }); - } - - /// - protected override void Down(MigrationBuilder migrationBuilder) - { - migrationBuilder.DropTable( - name: "activity_pub_deliveries"); - } - } -} diff --git a/DysonNetwork.Sphere/Migrations/20251231163256_AddActivityPubDelivery.Designer.cs b/DysonNetwork.Sphere/Migrations/20260101135529_AddActivityPub.Designer.cs similarity index 99% rename from DysonNetwork.Sphere/Migrations/20251231163256_AddActivityPubDelivery.Designer.cs rename to DysonNetwork.Sphere/Migrations/20260101135529_AddActivityPub.Designer.cs index 8d0f7d1..3b99942 100644 --- a/DysonNetwork.Sphere/Migrations/20251231163256_AddActivityPubDelivery.Designer.cs +++ b/DysonNetwork.Sphere/Migrations/20260101135529_AddActivityPub.Designer.cs @@ -17,8 +17,8 @@ using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; namespace DysonNetwork.Sphere.Migrations { [DbContext(typeof(AppDatabase))] - [Migration("20251231163256_AddActivityPubDelivery")] - partial class AddActivityPubDelivery + [Migration("20260101135529_AddActivityPub")] + partial class AddActivityPub { /// protected override void BuildTargetModel(ModelBuilder modelBuilder) diff --git a/DysonNetwork.Sphere/Migrations/20251230153545_MergeFediverseDataClass.cs b/DysonNetwork.Sphere/Migrations/20260101135529_AddActivityPub.cs similarity index 54% rename from DysonNetwork.Sphere/Migrations/20251230153545_MergeFediverseDataClass.cs rename to DysonNetwork.Sphere/Migrations/20260101135529_AddActivityPub.cs index 44f81b8..1dabb9f 100644 --- a/DysonNetwork.Sphere/Migrations/20251230153545_MergeFediverseDataClass.cs +++ b/DysonNetwork.Sphere/Migrations/20260101135529_AddActivityPub.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using DysonNetwork.Shared.Models; using Microsoft.EntityFrameworkCore.Migrations; @@ -9,23 +9,162 @@ using NodaTime; namespace DysonNetwork.Sphere.Migrations { /// - public partial class MergeFediverseDataClass : Migration + public partial class AddActivityPub : Migration { /// protected override void Up(MigrationBuilder migrationBuilder) { - migrationBuilder.DropForeignKey( - name: "fk_posts_publishers_publisher_id", - table: "posts"); + migrationBuilder.AddColumn>( + name: "meta", + table: "publishers", + type: "jsonb", + nullable: true); - migrationBuilder.DropTable( - name: "fediverse_activities"); + migrationBuilder.AddColumn( + name: "private_key_pem", + table: "publishers", + type: "character varying(8192)", + maxLength: 8192, + nullable: true); - migrationBuilder.DropTable( - name: "fediverse_reactions"); + migrationBuilder.AddColumn( + name: "public_key_pem", + table: "publishers", + type: "character varying(8192)", + maxLength: 8192, + nullable: true); - migrationBuilder.DropTable( - name: "fediverse_contents"); + migrationBuilder.CreateTable( + name: "fediverse_instances", + columns: table => new + { + id = table.Column(type: "uuid", nullable: false), + domain = table.Column(type: "character varying(256)", maxLength: 256, nullable: false), + name = table.Column(type: "character varying(512)", maxLength: 512, nullable: true), + description = table.Column(type: "character varying(4096)", maxLength: 4096, nullable: true), + software = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: true), + version = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: true), + metadata = table.Column>(type: "jsonb", nullable: true), + is_blocked = table.Column(type: "boolean", nullable: false), + is_silenced = table.Column(type: "boolean", nullable: false), + block_reason = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: true), + last_fetched_at = table.Column(type: "timestamp with time zone", nullable: true), + last_activity_at = table.Column(type: "timestamp with time zone", nullable: true), + created_at = table.Column(type: "timestamp with time zone", nullable: false), + updated_at = table.Column(type: "timestamp with time zone", nullable: false), + deleted_at = table.Column(type: "timestamp with time zone", nullable: true), + active_users = table.Column(type: "integer", nullable: true), + contact_account_username = table.Column(type: "character varying(256)", maxLength: 256, nullable: true), + contact_email = table.Column(type: "character varying(512)", maxLength: 512, nullable: true), + icon_url = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: true), + metadata_fetched_at = table.Column(type: "timestamp with time zone", nullable: true), + thumbnail_url = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: true) + }, + constraints: table => + { + table.PrimaryKey("pk_fediverse_instances", x => x.id); + }); + + migrationBuilder.CreateTable( + name: "fediverse_actors", + columns: table => new + { + id = table.Column(type: "uuid", nullable: false), + uri = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: false), + username = table.Column(type: "character varying(256)", maxLength: 256, nullable: false), + display_name = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: true), + bio = table.Column(type: "character varying(4096)", maxLength: 4096, nullable: true), + inbox_uri = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: true), + outbox_uri = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: true), + followers_uri = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: true), + following_uri = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: true), + featured_uri = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: true), + public_key_id = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: true), + public_key = table.Column(type: "character varying(8192)", maxLength: 8192, nullable: true), + metadata = table.Column>(type: "jsonb", nullable: true), + avatar_url = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: true), + header_url = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: true), + is_bot = table.Column(type: "boolean", nullable: false), + is_locked = table.Column(type: "boolean", nullable: false), + is_discoverable = table.Column(type: "boolean", nullable: false), + instance_id = table.Column(type: "uuid", nullable: false), + last_fetched_at = table.Column(type: "timestamp with time zone", nullable: true), + last_activity_at = table.Column(type: "timestamp with time zone", nullable: true), + created_at = table.Column(type: "timestamp with time zone", nullable: false), + updated_at = table.Column(type: "timestamp with time zone", nullable: false), + deleted_at = table.Column(type: "timestamp with time zone", nullable: true), + type = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: false, defaultValue: "Person"), + publisher_id = table.Column(type: "uuid", nullable: true) + }, + constraints: table => + { + table.PrimaryKey("pk_fediverse_actors", x => x.id); + table.ForeignKey( + name: "fk_fediverse_actors_fediverse_instances_instance_id", + column: x => x.instance_id, + principalTable: "fediverse_instances", + principalColumn: "id", + onDelete: ReferentialAction.Cascade); + }); + + migrationBuilder.CreateTable( + name: "fediverse_relationships", + columns: table => new + { + id = table.Column(type: "uuid", nullable: false), + actor_id = table.Column(type: "uuid", nullable: false), + target_actor_id = table.Column(type: "uuid", nullable: false), + state = table.Column(type: "integer", nullable: false), + is_muting = table.Column(type: "boolean", nullable: false), + is_blocking = table.Column(type: "boolean", nullable: false), + followed_at = table.Column(type: "timestamp with time zone", nullable: true), + followed_back_at = table.Column(type: "timestamp with time zone", nullable: true), + reject_reason = table.Column(type: "character varying(4096)", maxLength: 4096, nullable: true), + created_at = table.Column(type: "timestamp with time zone", nullable: false), + updated_at = table.Column(type: "timestamp with time zone", nullable: false), + deleted_at = table.Column(type: "timestamp with time zone", nullable: true) + }, + constraints: table => + { + table.PrimaryKey("pk_fediverse_relationships", x => x.id); + table.ForeignKey( + name: "fk_fediverse_relationships_fediverse_actors_actor_id", + column: x => x.actor_id, + principalTable: "fediverse_actors", + principalColumn: "id", + onDelete: ReferentialAction.Cascade); + table.ForeignKey( + name: "fk_fediverse_relationships_fediverse_actors_target_actor_id", + column: x => x.target_actor_id, + principalTable: "fediverse_actors", + principalColumn: "id", + onDelete: ReferentialAction.Cascade); + }); + + migrationBuilder.CreateTable( + name: "activity_pub_deliveries", + columns: table => new + { + id = table.Column(type: "uuid", nullable: false), + activity_id = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: false), + activity_type = table.Column(type: "character varying(128)", maxLength: 128, nullable: false), + inbox_uri = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: false), + actor_uri = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: false), + status = table.Column(type: "integer", nullable: false), + retry_count = table.Column(type: "integer", nullable: false), + error_message = table.Column(type: "character varying(4096)", maxLength: 4096, nullable: true), + last_attempt_at = table.Column(type: "timestamp with time zone", nullable: true), + next_retry_at = table.Column(type: "timestamp with time zone", nullable: true), + sent_at = table.Column(type: "timestamp with time zone", nullable: true), + response_status_code = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: true), + created_at = table.Column(type: "timestamp with time zone", nullable: false), + updated_at = table.Column(type: "timestamp with time zone", nullable: false), + deleted_at = table.Column(type: "timestamp with time zone", nullable: true) + }, + constraints: table => + { + table.PrimaryKey("pk_activity_pub_deliveries", x => x.id); + }); migrationBuilder.RenameColumn( name: "meta", @@ -80,13 +219,6 @@ namespace DysonNetwork.Sphere.Migrations maxLength: 2048, nullable: true); - migrationBuilder.AddColumn( - name: "like_count", - table: "posts", - type: "integer", - nullable: false, - defaultValue: 0); - migrationBuilder.AddColumn>( name: "mentions", table: "posts", @@ -128,6 +260,33 @@ namespace DysonNetwork.Sphere.Migrations nullable: false, defaultValue: false); + migrationBuilder.CreateIndex( + name: "ix_fediverse_actors_instance_id", + table: "fediverse_actors", + column: "instance_id"); + + migrationBuilder.CreateIndex( + name: "ix_fediverse_actors_uri", + table: "fediverse_actors", + column: "uri", + unique: true); + + migrationBuilder.CreateIndex( + name: "ix_fediverse_instances_domain", + table: "fediverse_instances", + column: "domain", + unique: true); + + migrationBuilder.CreateIndex( + name: "ix_fediverse_relationships_actor_id", + table: "fediverse_relationships", + column: "actor_id"); + + migrationBuilder.CreateIndex( + name: "ix_fediverse_relationships_target_actor_id", + table: "fediverse_relationships", + column: "target_actor_id"); + migrationBuilder.CreateIndex( name: "ix_posts_actor_id", table: "posts", @@ -157,7 +316,8 @@ namespace DysonNetwork.Sphere.Migrations table: "posts", column: "publisher_id", principalTable: "publishers", - principalColumn: "id"); + principalColumn: "id", + onDelete: ReferentialAction.Cascade); } /// @@ -183,68 +343,37 @@ namespace DysonNetwork.Sphere.Migrations name: "ix_post_reactions_actor_id", table: "post_reactions"); - migrationBuilder.DropColumn( - name: "actor_id", - table: "posts"); + migrationBuilder.DropIndex( + name: "ix_fediverse_relationships_target_actor_id", + table: "fediverse_relationships"); - migrationBuilder.DropColumn( - name: "boost_count", - table: "posts"); + migrationBuilder.DropIndex( + name: "ix_fediverse_relationships_actor_id", + table: "fediverse_relationships"); - migrationBuilder.DropColumn( - name: "content_type", - table: "posts"); + migrationBuilder.DropIndex( + name: "ix_fediverse_instances_domain", + table: "fediverse_instances"); - migrationBuilder.DropColumn( - name: "fediverse_type", - table: "posts"); + migrationBuilder.DropIndex( + name: "ix_fediverse_actors_uri", + table: "fediverse_actors"); - migrationBuilder.DropColumn( - name: "fediverse_uri", - table: "posts"); - - migrationBuilder.DropColumn( - name: "language", - table: "posts"); - - migrationBuilder.DropColumn( - name: "like_count", - table: "posts"); - - migrationBuilder.DropColumn( - name: "mentions", - table: "posts"); - - migrationBuilder.DropColumn( - name: "replies_count", - table: "posts"); - - migrationBuilder.DropColumn( - name: "actor_id", - table: "post_reactions"); - - migrationBuilder.DropColumn( - name: "fediverse_uri", - table: "post_reactions"); + migrationBuilder.DropIndex( + name: "ix_fediverse_actors_instance_id", + table: "fediverse_actors"); migrationBuilder.DropColumn( name: "is_local", table: "post_reactions"); - migrationBuilder.RenameColumn( - name: "metadata", - table: "posts", - newName: "meta"); + migrationBuilder.DropColumn( + name: "fediverse_uri", + table: "post_reactions"); - migrationBuilder.AlterColumn( - name: "publisher_id", - table: "posts", - type: "uuid", - nullable: false, - defaultValue: new Guid("00000000-0000-0000-0000-000000000000"), - oldClrType: typeof(Guid), - oldType: "uuid", - oldNullable: true); + migrationBuilder.DropColumn( + name: "actor_id", + table: "post_reactions"); migrationBuilder.AlterColumn( name: "account_id", @@ -256,178 +385,76 @@ namespace DysonNetwork.Sphere.Migrations oldType: "uuid", oldNullable: true); - migrationBuilder.CreateTable( - name: "fediverse_contents", - columns: table => new - { - id = table.Column(type: "uuid", nullable: false), - actor_id = table.Column(type: "uuid", nullable: false), - instance_id = table.Column(type: "uuid", nullable: false), - announced_content_uri = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: true), - boost_count = table.Column(type: "integer", nullable: false), - content = table.Column(type: "text", nullable: true), - content_html = table.Column(type: "text", nullable: true), - created_at = table.Column(type: "timestamp with time zone", nullable: false), - deleted_at = table.Column(type: "timestamp with time zone", nullable: true), - edited_at = table.Column(type: "timestamp with time zone", nullable: true), - in_reply_to = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: true), - is_sensitive = table.Column(type: "boolean", nullable: false), - language = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: true), - like_count = table.Column(type: "integer", nullable: false), - local_post_id = table.Column(type: "uuid", nullable: true), - metadata = table.Column>(type: "jsonb", nullable: true), - published_at = table.Column(type: "timestamp with time zone", nullable: true), - reply_count = table.Column(type: "integer", nullable: false), - summary = table.Column(type: "character varying(4096)", maxLength: 4096, nullable: true), - title = table.Column(type: "character varying(1024)", maxLength: 1024, nullable: true), - type = table.Column(type: "integer", nullable: false), - updated_at = table.Column(type: "timestamp with time zone", nullable: false), - uri = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: false) - }, - constraints: table => - { - table.PrimaryKey("pk_fediverse_contents", x => x.id); - table.ForeignKey( - name: "fk_fediverse_contents_fediverse_actors_actor_id", - column: x => x.actor_id, - principalTable: "fediverse_actors", - principalColumn: "id", - onDelete: ReferentialAction.Cascade); - table.ForeignKey( - name: "fk_fediverse_contents_fediverse_instances_instance_id", - column: x => x.instance_id, - principalTable: "fediverse_instances", - principalColumn: "id", - onDelete: ReferentialAction.Cascade); - }); + migrationBuilder.DropColumn( + name: "replies_count", + table: "posts"); - migrationBuilder.CreateTable( - name: "fediverse_activities", - columns: table => new - { - id = table.Column(type: "uuid", nullable: false), - actor_id = table.Column(type: "uuid", nullable: false), - content_id = table.Column(type: "uuid", nullable: true), - target_actor_id = table.Column(type: "uuid", nullable: true), - created_at = table.Column(type: "timestamp with time zone", nullable: false), - deleted_at = table.Column(type: "timestamp with time zone", nullable: true), - error_message = table.Column(type: "character varying(4096)", maxLength: 4096, nullable: true), - is_local = table.Column(type: "boolean", nullable: false), - local_account_id = table.Column(type: "uuid", nullable: true), - local_post_id = table.Column(type: "uuid", nullable: true), - object_uri = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: true), - published_at = table.Column(type: "timestamp with time zone", nullable: true), - raw_data = table.Column>(type: "jsonb", nullable: true), - status = table.Column(type: "integer", nullable: false), - target_uri = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: true), - type = table.Column(type: "integer", nullable: false), - updated_at = table.Column(type: "timestamp with time zone", nullable: false), - uri = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: false) - }, - constraints: table => - { - table.PrimaryKey("pk_fediverse_activities", x => x.id); - table.ForeignKey( - name: "fk_fediverse_activities_fediverse_actors_actor_id", - column: x => x.actor_id, - principalTable: "fediverse_actors", - principalColumn: "id", - onDelete: ReferentialAction.Cascade); - table.ForeignKey( - name: "fk_fediverse_activities_fediverse_actors_target_actor_id", - column: x => x.target_actor_id, - principalTable: "fediverse_actors", - principalColumn: "id"); - table.ForeignKey( - name: "fk_fediverse_activities_fediverse_contents_content_id", - column: x => x.content_id, - principalTable: "fediverse_contents", - principalColumn: "id", - onDelete: ReferentialAction.Cascade); - }); + migrationBuilder.DropColumn( + name: "mentions", + table: "posts"); - migrationBuilder.CreateTable( - name: "fediverse_reactions", - columns: table => new - { - id = table.Column(type: "uuid", nullable: false), - actor_id = table.Column(type: "uuid", nullable: false), - content_id = table.Column(type: "uuid", nullable: false), - created_at = table.Column(type: "timestamp with time zone", nullable: false), - deleted_at = table.Column(type: "timestamp with time zone", nullable: true), - emoji = table.Column(type: "character varying(64)", maxLength: 64, nullable: true), - is_local = table.Column(type: "boolean", nullable: false), - local_account_id = table.Column(type: "uuid", nullable: true), - local_reaction_id = table.Column(type: "uuid", nullable: true), - type = table.Column(type: "integer", nullable: false), - updated_at = table.Column(type: "timestamp with time zone", nullable: false), - uri = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: false) - }, - constraints: table => - { - table.PrimaryKey("pk_fediverse_reactions", x => x.id); - table.ForeignKey( - name: "fk_fediverse_reactions_fediverse_actors_actor_id", - column: x => x.actor_id, - principalTable: "fediverse_actors", - principalColumn: "id", - onDelete: ReferentialAction.Cascade); - table.ForeignKey( - name: "fk_fediverse_reactions_fediverse_contents_content_id", - column: x => x.content_id, - principalTable: "fediverse_contents", - principalColumn: "id", - onDelete: ReferentialAction.Cascade); - }); + migrationBuilder.DropColumn( + name: "language", + table: "posts"); - migrationBuilder.CreateIndex( - name: "ix_fediverse_activities_actor_id", - table: "fediverse_activities", - column: "actor_id"); + migrationBuilder.DropColumn( + name: "fediverse_uri", + table: "posts"); - migrationBuilder.CreateIndex( - name: "ix_fediverse_activities_content_id", - table: "fediverse_activities", - column: "content_id"); + migrationBuilder.DropColumn( + name: "fediverse_type", + table: "posts"); - migrationBuilder.CreateIndex( - name: "ix_fediverse_activities_target_actor_id", - table: "fediverse_activities", - column: "target_actor_id"); + migrationBuilder.DropColumn( + name: "content_type", + table: "posts"); - migrationBuilder.CreateIndex( - name: "ix_fediverse_contents_actor_id", - table: "fediverse_contents", - column: "actor_id"); + migrationBuilder.DropColumn( + name: "boost_count", + table: "posts"); - migrationBuilder.CreateIndex( - name: "ix_fediverse_contents_instance_id", - table: "fediverse_contents", - column: "instance_id"); + migrationBuilder.DropColumn( + name: "actor_id", + table: "posts"); - migrationBuilder.CreateIndex( - name: "ix_fediverse_contents_uri", - table: "fediverse_contents", - column: "uri", - unique: true); - - migrationBuilder.CreateIndex( - name: "ix_fediverse_reactions_actor_id", - table: "fediverse_reactions", - column: "actor_id"); - - migrationBuilder.CreateIndex( - name: "ix_fediverse_reactions_content_id", - table: "fediverse_reactions", - column: "content_id"); - - migrationBuilder.AddForeignKey( - name: "fk_posts_publishers_publisher_id", + migrationBuilder.AlterColumn( + name: "publisher_id", table: "posts", - column: "publisher_id", - principalTable: "publishers", - principalColumn: "id", - onDelete: ReferentialAction.Cascade); + type: "uuid", + nullable: false, + defaultValue: new Guid("00000000-0000-0000-0000-000000000000"), + oldClrType: typeof(Guid), + oldType: "uuid", + oldNullable: true); + + migrationBuilder.RenameColumn( + name: "metadata", + table: "posts", + newName: "meta"); + + migrationBuilder.DropTable( + name: "activity_pub_deliveries"); + + migrationBuilder.DropTable( + name: "fediverse_relationships"); + + migrationBuilder.DropTable( + name: "fediverse_actors"); + + migrationBuilder.DropTable( + name: "fediverse_instances"); + + migrationBuilder.DropColumn( + name: "public_key_pem", + table: "publishers"); + + migrationBuilder.DropColumn( + name: "private_key_pem", + table: "publishers"); + + migrationBuilder.DropColumn( + name: "meta", + table: "publishers"); } } }