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