diff --git a/DysonNetwork.Pass/DysonNetwork.Pass.csproj b/DysonNetwork.Pass/DysonNetwork.Pass.csproj
index 57114d3..ae96bba 100644
--- a/DysonNetwork.Pass/DysonNetwork.Pass.csproj
+++ b/DysonNetwork.Pass/DysonNetwork.Pass.csproj
@@ -132,4 +132,8 @@
+
+
+
+
diff --git a/DysonNetwork.Pass/Migrations/20250715075623_ReinitalMigration.cs b/DysonNetwork.Pass/Migrations/20250715075623_ReinitalMigration.cs
deleted file mode 100644
index b649b94..0000000
--- a/DysonNetwork.Pass/Migrations/20250715075623_ReinitalMigration.cs
+++ /dev/null
@@ -1,40 +0,0 @@
-using Microsoft.EntityFrameworkCore.Migrations;
-
-#nullable disable
-
-namespace DysonNetwork.Pass.Migrations
-{
- ///
- public partial class ReinitalMigration : Migration
- {
- ///
- protected override void Up(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.DropColumn(
- name: "background_id",
- table: "account_profiles");
-
- migrationBuilder.DropColumn(
- name: "picture_id",
- table: "account_profiles");
- }
-
- ///
- protected override void Down(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.AddColumn(
- name: "background_id",
- table: "account_profiles",
- type: "character varying(32)",
- maxLength: 32,
- nullable: true);
-
- migrationBuilder.AddColumn(
- name: "picture_id",
- table: "account_profiles",
- type: "character varying(32)",
- maxLength: 32,
- nullable: true);
- }
- }
-}
diff --git a/DysonNetwork.Pass/Migrations/20250720193202_RemoveNotification.cs b/DysonNetwork.Pass/Migrations/20250720193202_RemoveNotification.cs
deleted file mode 100644
index d31cdb8..0000000
--- a/DysonNetwork.Pass/Migrations/20250720193202_RemoveNotification.cs
+++ /dev/null
@@ -1,94 +0,0 @@
-using Microsoft.EntityFrameworkCore.Migrations;
-using NodaTime;
-
-#nullable disable
-
-namespace DysonNetwork.Pass.Migrations
-{
- ///
- public partial class RemoveNotification : Migration
- {
- ///
- protected override void Up(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.DropTable(
- name: "notification_push_subscriptions");
-
- migrationBuilder.DropTable(
- name: "notifications");
- }
-
- ///
- protected override void Down(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.CreateTable(
- name: "notification_push_subscriptions",
- columns: table => new
- {
- id = table.Column(type: "uuid", nullable: false),
- account_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),
- device_id = table.Column(type: "character varying(4096)", maxLength: 4096, nullable: false),
- device_token = table.Column(type: "character varying(4096)", maxLength: 4096, nullable: false),
- last_used_at = table.Column(type: "timestamp with time zone", nullable: true),
- provider = table.Column(type: "integer", nullable: false),
- updated_at = table.Column(type: "timestamp with time zone", nullable: false)
- },
- constraints: table =>
- {
- table.PrimaryKey("pk_notification_push_subscriptions", x => x.id);
- table.ForeignKey(
- name: "fk_notification_push_subscriptions_accounts_account_id",
- column: x => x.account_id,
- principalTable: "accounts",
- principalColumn: "id",
- onDelete: ReferentialAction.Cascade);
- });
-
- migrationBuilder.CreateTable(
- name: "notifications",
- columns: table => new
- {
- id = table.Column(type: "uuid", nullable: false),
- account_id = table.Column(type: "uuid", nullable: false),
- content = table.Column(type: "character varying(4096)", maxLength: 4096, nullable: true),
- created_at = table.Column(type: "timestamp with time zone", nullable: false),
- deleted_at = table.Column(type: "timestamp with time zone", nullable: true),
- meta = table.Column>(type: "jsonb", nullable: true),
- priority = table.Column(type: "integer", nullable: false),
- subtitle = table.Column(type: "character varying(2048)", maxLength: 2048, nullable: true),
- title = table.Column(type: "character varying(1024)", maxLength: 1024, nullable: true),
- topic = table.Column(type: "character varying(1024)", maxLength: 1024, nullable: false),
- updated_at = table.Column(type: "timestamp with time zone", nullable: false),
- viewed_at = table.Column(type: "timestamp with time zone", nullable: true)
- },
- constraints: table =>
- {
- table.PrimaryKey("pk_notifications", x => x.id);
- table.ForeignKey(
- name: "fk_notifications_accounts_account_id",
- column: x => x.account_id,
- principalTable: "accounts",
- principalColumn: "id",
- onDelete: ReferentialAction.Cascade);
- });
-
- migrationBuilder.CreateIndex(
- name: "ix_notification_push_subscriptions_account_id",
- table: "notification_push_subscriptions",
- column: "account_id");
-
- migrationBuilder.CreateIndex(
- name: "ix_notification_push_subscriptions_device_token_device_id_acco",
- table: "notification_push_subscriptions",
- columns: new[] { "device_token", "device_id", "account_id" },
- unique: true);
-
- migrationBuilder.CreateIndex(
- name: "ix_notifications_account_id",
- table: "notifications",
- column: "account_id");
- }
- }
-}
diff --git a/DysonNetwork.Pass/Migrations/20250731071524_AddCheckInBackdated.cs b/DysonNetwork.Pass/Migrations/20250731071524_AddCheckInBackdated.cs
deleted file mode 100644
index ab4e3a2..0000000
--- a/DysonNetwork.Pass/Migrations/20250731071524_AddCheckInBackdated.cs
+++ /dev/null
@@ -1,29 +0,0 @@
-using Microsoft.EntityFrameworkCore.Migrations;
-using NodaTime;
-
-#nullable disable
-
-namespace DysonNetwork.Pass.Migrations
-{
- ///
- public partial class AddCheckInBackdated : Migration
- {
- ///
- protected override void Up(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.AddColumn(
- name: "backdated_from",
- table: "account_check_in_results",
- type: "timestamp with time zone",
- nullable: true);
- }
-
- ///
- protected override void Down(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.DropColumn(
- name: "backdated_from",
- table: "account_check_in_results");
- }
- }
-}
diff --git a/DysonNetwork.Pass/Migrations/20250807162919_RemoveDevelopers.cs b/DysonNetwork.Pass/Migrations/20250807162919_RemoveDevelopers.cs
deleted file mode 100644
index 62cb7e2..0000000
--- a/DysonNetwork.Pass/Migrations/20250807162919_RemoveDevelopers.cs
+++ /dev/null
@@ -1,130 +0,0 @@
-using DysonNetwork.Shared.Models;
-using Microsoft.EntityFrameworkCore.Migrations;
-using NodaTime;
-
-#nullable disable
-
-namespace DysonNetwork.Pass.Migrations
-{
- ///
- public partial class RemoveDevelopers : Migration
- {
- ///
- protected override void Up(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.DropForeignKey(
- name: "fk_auth_sessions_custom_apps_app_id",
- table: "auth_sessions");
-
- migrationBuilder.DropTable(
- name: "custom_app_secrets");
-
- migrationBuilder.DropTable(
- name: "custom_apps");
-
- migrationBuilder.DropIndex(
- name: "ix_auth_sessions_app_id",
- table: "auth_sessions");
-
- migrationBuilder.CreateTable(
- name: "punishments",
- columns: table => new
- {
- id = table.Column(type: "uuid", nullable: false),
- reason = table.Column(type: "character varying(8192)", maxLength: 8192, nullable: false),
- expired_at = table.Column(type: "timestamp with time zone", nullable: true),
- type = table.Column(type: "integer", nullable: false),
- blocked_permissions = table.Column>(type: "jsonb", nullable: true),
- account_id = table.Column(type: "uuid", nullable: false),
- 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_punishments", x => x.id);
- table.ForeignKey(
- name: "fk_punishments_accounts_account_id",
- column: x => x.account_id,
- principalTable: "accounts",
- principalColumn: "id",
- onDelete: ReferentialAction.Cascade);
- });
-
- migrationBuilder.CreateIndex(
- name: "ix_punishments_account_id",
- table: "punishments",
- column: "account_id");
- }
-
- ///
- protected override void Down(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.DropTable(
- name: "punishments");
-
- migrationBuilder.CreateTable(
- name: "custom_apps",
- columns: table => new
- {
- id = table.Column(type: "uuid", nullable: false),
- background = table.Column(type: "jsonb", nullable: true),
- created_at = table.Column(type: "timestamp with time zone", nullable: false),
- deleted_at = table.Column(type: "timestamp with time zone", nullable: true),
- description = table.Column(type: "character varying(4096)", maxLength: 4096, nullable: true),
- name = table.Column(type: "character varying(1024)", maxLength: 1024, nullable: false),
- picture = table.Column(type: "jsonb", nullable: true),
- slug = table.Column(type: "character varying(1024)", maxLength: 1024, nullable: false),
- status = table.Column(type: "integer", nullable: false),
- updated_at = table.Column(type: "timestamp with time zone", nullable: false),
- verification = table.Column(type: "jsonb", nullable: true)
- },
- constraints: table =>
- {
- table.PrimaryKey("pk_custom_apps", x => x.id);
- });
-
- migrationBuilder.CreateTable(
- name: "custom_app_secrets",
- columns: table => new
- {
- id = table.Column(type: "uuid", nullable: false),
- app_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),
- description = table.Column(type: "character varying(4096)", maxLength: 4096, nullable: true),
- expired_at = table.Column(type: "timestamp with time zone", nullable: true),
- is_oidc = table.Column(type: "boolean", nullable: false),
- secret = table.Column(type: "character varying(1024)", maxLength: 1024, nullable: false),
- updated_at = table.Column(type: "timestamp with time zone", nullable: false)
- },
- constraints: table =>
- {
- table.PrimaryKey("pk_custom_app_secrets", x => x.id);
- table.ForeignKey(
- name: "fk_custom_app_secrets_custom_apps_app_id",
- column: x => x.app_id,
- principalTable: "custom_apps",
- principalColumn: "id",
- onDelete: ReferentialAction.Cascade);
- });
-
- migrationBuilder.CreateIndex(
- name: "ix_auth_sessions_app_id",
- table: "auth_sessions",
- column: "app_id");
-
- migrationBuilder.CreateIndex(
- name: "ix_custom_app_secrets_app_id",
- table: "custom_app_secrets",
- column: "app_id");
-
- migrationBuilder.AddForeignKey(
- name: "fk_auth_sessions_custom_apps_app_id",
- table: "auth_sessions",
- column: "app_id",
- principalTable: "custom_apps",
- principalColumn: "id");
- }
- }
-}
diff --git a/DysonNetwork.Pass/Migrations/20250808152643_AddProfileLinks.cs b/DysonNetwork.Pass/Migrations/20250808152643_AddProfileLinks.cs
deleted file mode 100644
index e3aeea7..0000000
--- a/DysonNetwork.Pass/Migrations/20250808152643_AddProfileLinks.cs
+++ /dev/null
@@ -1,28 +0,0 @@
-using Microsoft.EntityFrameworkCore.Migrations;
-
-#nullable disable
-
-namespace DysonNetwork.Pass.Migrations
-{
- ///
- public partial class AddProfileLinks : Migration
- {
- ///
- protected override void Up(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.AddColumn>(
- name: "links",
- table: "account_profiles",
- type: "jsonb",
- nullable: true);
- }
-
- ///
- protected override void Down(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.DropColumn(
- name: "links",
- table: "account_profiles");
- }
- }
-}
diff --git a/DysonNetwork.Pass/Migrations/20250808152851_AddPublicContact.cs b/DysonNetwork.Pass/Migrations/20250808152851_AddPublicContact.cs
deleted file mode 100644
index 17e3d5a..0000000
--- a/DysonNetwork.Pass/Migrations/20250808152851_AddPublicContact.cs
+++ /dev/null
@@ -1,29 +0,0 @@
-using Microsoft.EntityFrameworkCore.Migrations;
-
-#nullable disable
-
-namespace DysonNetwork.Pass.Migrations
-{
- ///
- public partial class AddPublicContact : Migration
- {
- ///
- protected override void Up(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.AddColumn(
- name: "is_public",
- table: "account_contacts",
- type: "boolean",
- nullable: false,
- defaultValue: false);
- }
-
- ///
- protected override void Down(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.DropColumn(
- name: "is_public",
- table: "account_contacts");
- }
- }
-}
diff --git a/DysonNetwork.Pass/Migrations/20250813072436_AddAuthorizeDevice.cs b/DysonNetwork.Pass/Migrations/20250813072436_AddAuthorizeDevice.cs
deleted file mode 100644
index 7809741..0000000
--- a/DysonNetwork.Pass/Migrations/20250813072436_AddAuthorizeDevice.cs
+++ /dev/null
@@ -1,109 +0,0 @@
-using Microsoft.EntityFrameworkCore.Migrations;
-using NodaTime;
-
-#nullable disable
-
-namespace DysonNetwork.Pass.Migrations
-{
- ///
- public partial class AddAuthorizeDevice : Migration
- {
- ///
- protected override void Up(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.AlterColumn(
- name: "device_id",
- table: "auth_challenges",
- type: "character varying(1024)",
- maxLength: 1024,
- nullable: true,
- oldClrType: typeof(string),
- oldType: "character varying(256)",
- oldMaxLength: 256,
- oldNullable: true);
-
- migrationBuilder.AddColumn(
- name: "client_id",
- table: "auth_challenges",
- type: "uuid",
- nullable: true);
-
- migrationBuilder.CreateTable(
- name: "auth_clients",
- columns: table => new
- {
- id = table.Column(type: "uuid", nullable: false),
- device_name = table.Column(type: "character varying(1024)", maxLength: 1024, nullable: false),
- device_label = table.Column(type: "character varying(1024)", maxLength: 1024, nullable: true),
- device_id = table.Column(type: "character varying(1024)", maxLength: 1024, nullable: false),
- account_id = table.Column(type: "uuid", nullable: false),
- 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_auth_clients", x => x.id);
- table.ForeignKey(
- name: "fk_auth_clients_accounts_account_id",
- column: x => x.account_id,
- principalTable: "accounts",
- principalColumn: "id",
- onDelete: ReferentialAction.Cascade);
- });
-
- migrationBuilder.CreateIndex(
- name: "ix_auth_challenges_client_id",
- table: "auth_challenges",
- column: "client_id");
-
- migrationBuilder.CreateIndex(
- name: "ix_auth_clients_account_id",
- table: "auth_clients",
- column: "account_id");
-
- migrationBuilder.CreateIndex(
- name: "ix_auth_clients_device_id",
- table: "auth_clients",
- column: "device_id",
- unique: true);
-
- migrationBuilder.AddForeignKey(
- name: "fk_auth_challenges_auth_clients_client_id",
- table: "auth_challenges",
- column: "client_id",
- principalTable: "auth_clients",
- principalColumn: "id");
- }
-
- ///
- protected override void Down(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.DropForeignKey(
- name: "fk_auth_challenges_auth_clients_client_id",
- table: "auth_challenges");
-
- migrationBuilder.DropTable(
- name: "auth_clients");
-
- migrationBuilder.DropIndex(
- name: "ix_auth_challenges_client_id",
- table: "auth_challenges");
-
- migrationBuilder.DropColumn(
- name: "client_id",
- table: "auth_challenges");
-
- migrationBuilder.AlterColumn(
- name: "device_id",
- table: "auth_challenges",
- type: "character varying(256)",
- maxLength: 256,
- nullable: true,
- oldClrType: typeof(string),
- oldType: "character varying(1024)",
- oldMaxLength: 1024,
- oldNullable: true);
- }
- }
-}
diff --git a/DysonNetwork.Pass/Migrations/20250813121421_AddAuthDevicePlatform.cs b/DysonNetwork.Pass/Migrations/20250813121421_AddAuthDevicePlatform.cs
deleted file mode 100644
index 143b720..0000000
--- a/DysonNetwork.Pass/Migrations/20250813121421_AddAuthDevicePlatform.cs
+++ /dev/null
@@ -1,40 +0,0 @@
-using Microsoft.EntityFrameworkCore.Migrations;
-
-#nullable disable
-
-namespace DysonNetwork.Pass.Migrations
-{
- ///
- public partial class AddAuthDevicePlatform : Migration
- {
- ///
- protected override void Up(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.DropColumn(
- name: "platform",
- table: "auth_challenges");
-
- migrationBuilder.AddColumn(
- name: "platform",
- table: "auth_clients",
- type: "integer",
- nullable: false,
- defaultValue: 0);
- }
-
- ///
- protected override void Down(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.DropColumn(
- name: "platform",
- table: "auth_clients");
-
- migrationBuilder.AddColumn(
- name: "platform",
- table: "auth_challenges",
- type: "integer",
- nullable: false,
- defaultValue: 0);
- }
- }
-}
diff --git a/DysonNetwork.Pass/Migrations/20250815041723_RemoveAuthClientIndex.cs b/DysonNetwork.Pass/Migrations/20250815041723_RemoveAuthClientIndex.cs
deleted file mode 100644
index dc9f089..0000000
--- a/DysonNetwork.Pass/Migrations/20250815041723_RemoveAuthClientIndex.cs
+++ /dev/null
@@ -1,28 +0,0 @@
-using Microsoft.EntityFrameworkCore.Migrations;
-
-#nullable disable
-
-namespace DysonNetwork.Pass.Migrations
-{
- ///
- public partial class RemoveAuthClientIndex : Migration
- {
- ///
- protected override void Up(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.DropIndex(
- name: "ix_auth_clients_device_id",
- table: "auth_clients");
- }
-
- ///
- protected override void Down(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.CreateIndex(
- name: "ix_auth_clients_device_id",
- table: "auth_clients",
- column: "device_id",
- unique: true);
- }
- }
-}
diff --git a/DysonNetwork.Pass/Migrations/20250818125540_RemoveChallengeOldDeviceId.cs b/DysonNetwork.Pass/Migrations/20250818125540_RemoveChallengeOldDeviceId.cs
deleted file mode 100644
index 7efa0bf..0000000
--- a/DysonNetwork.Pass/Migrations/20250818125540_RemoveChallengeOldDeviceId.cs
+++ /dev/null
@@ -1,29 +0,0 @@
-using Microsoft.EntityFrameworkCore.Migrations;
-
-#nullable disable
-
-namespace DysonNetwork.Pass.Migrations
-{
- ///
- public partial class RemoveChallengeOldDeviceId : Migration
- {
- ///
- protected override void Up(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.DropColumn(
- name: "device_id",
- table: "auth_challenges");
- }
-
- ///
- protected override void Down(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.AddColumn(
- name: "device_id",
- table: "auth_challenges",
- type: "character varying(1024)",
- maxLength: 1024,
- nullable: true);
- }
- }
-}
diff --git a/DysonNetwork.Pass/Migrations/20250819162856_AddBotAccount.cs b/DysonNetwork.Pass/Migrations/20250819162856_AddBotAccount.cs
deleted file mode 100644
index 4bafc44..0000000
--- a/DysonNetwork.Pass/Migrations/20250819162856_AddBotAccount.cs
+++ /dev/null
@@ -1,28 +0,0 @@
-using Microsoft.EntityFrameworkCore.Migrations;
-
-#nullable disable
-
-namespace DysonNetwork.Pass.Migrations
-{
- ///
- public partial class AddBotAccount : Migration
- {
- ///
- protected override void Up(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.AddColumn(
- name: "automated_id",
- table: "accounts",
- type: "uuid",
- nullable: true);
- }
-
- ///
- protected override void Down(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.DropColumn(
- name: "automated_id",
- table: "accounts");
- }
- }
-}
diff --git a/DysonNetwork.Pass/Migrations/20250820104425_AddApiKeys.cs b/DysonNetwork.Pass/Migrations/20250820104425_AddApiKeys.cs
deleted file mode 100644
index 3728292..0000000
--- a/DysonNetwork.Pass/Migrations/20250820104425_AddApiKeys.cs
+++ /dev/null
@@ -1,113 +0,0 @@
-using Microsoft.EntityFrameworkCore.Migrations;
-using NodaTime;
-
-#nullable disable
-
-namespace DysonNetwork.Pass.Migrations
-{
- ///
- public partial class AddApiKeys : Migration
- {
- ///
- protected override void Up(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.DropForeignKey(
- name: "fk_auth_sessions_auth_challenges_challenge_id",
- table: "auth_sessions");
-
- migrationBuilder.DropColumn(
- name: "label",
- table: "auth_sessions");
-
- migrationBuilder.AlterColumn(
- name: "challenge_id",
- table: "auth_sessions",
- type: "uuid",
- nullable: true,
- oldClrType: typeof(Guid),
- oldType: "uuid");
-
- migrationBuilder.CreateTable(
- name: "api_keys",
- columns: table => new
- {
- id = table.Column(type: "uuid", nullable: false),
- label = table.Column(type: "character varying(1024)", maxLength: 1024, nullable: false),
- account_id = table.Column(type: "uuid", nullable: false),
- session_id = table.Column(type: "uuid", nullable: false),
- 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_api_keys", x => x.id);
- table.ForeignKey(
- name: "fk_api_keys_accounts_account_id",
- column: x => x.account_id,
- principalTable: "accounts",
- principalColumn: "id",
- onDelete: ReferentialAction.Cascade);
- table.ForeignKey(
- name: "fk_api_keys_auth_sessions_session_id",
- column: x => x.session_id,
- principalTable: "auth_sessions",
- principalColumn: "id",
- onDelete: ReferentialAction.Cascade);
- });
-
- migrationBuilder.CreateIndex(
- name: "ix_api_keys_account_id",
- table: "api_keys",
- column: "account_id");
-
- migrationBuilder.CreateIndex(
- name: "ix_api_keys_session_id",
- table: "api_keys",
- column: "session_id");
-
- migrationBuilder.AddForeignKey(
- name: "fk_auth_sessions_auth_challenges_challenge_id",
- table: "auth_sessions",
- column: "challenge_id",
- principalTable: "auth_challenges",
- principalColumn: "id");
- }
-
- ///
- protected override void Down(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.DropForeignKey(
- name: "fk_auth_sessions_auth_challenges_challenge_id",
- table: "auth_sessions");
-
- migrationBuilder.DropTable(
- name: "api_keys");
-
- migrationBuilder.AlterColumn(
- name: "challenge_id",
- table: "auth_sessions",
- type: "uuid",
- nullable: false,
- defaultValue: new Guid("00000000-0000-0000-0000-000000000000"),
- oldClrType: typeof(Guid),
- oldType: "uuid",
- oldNullable: true);
-
- migrationBuilder.AddColumn(
- name: "label",
- table: "auth_sessions",
- type: "character varying(1024)",
- maxLength: 1024,
- nullable: true);
-
- migrationBuilder.AddForeignKey(
- name: "fk_auth_sessions_auth_challenges_challenge_id",
- table: "auth_sessions",
- column: "challenge_id",
- principalTable: "auth_challenges",
- principalColumn: "id",
- onDelete: ReferentialAction.Cascade);
- }
- }
-}
diff --git a/DysonNetwork.Pass/Migrations/20250820120632_AddCreditAndLevelingRecords.cs b/DysonNetwork.Pass/Migrations/20250820120632_AddCreditAndLevelingRecords.cs
deleted file mode 100644
index 9f7da01..0000000
--- a/DysonNetwork.Pass/Migrations/20250820120632_AddCreditAndLevelingRecords.cs
+++ /dev/null
@@ -1,84 +0,0 @@
-using Microsoft.EntityFrameworkCore.Migrations;
-using NodaTime;
-
-#nullable disable
-
-namespace DysonNetwork.Pass.Migrations
-{
- ///
- public partial class AddCreditAndLevelingRecords : Migration
- {
- ///
- protected override void Up(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.CreateTable(
- name: "experience_records",
- columns: table => new
- {
- id = table.Column(type: "uuid", nullable: false),
- reason_type = table.Column(type: "character varying(1024)", maxLength: 1024, nullable: false),
- reason = table.Column(type: "character varying(1024)", maxLength: 1024, nullable: false),
- delta = table.Column(type: "bigint", nullable: false),
- account_id = table.Column(type: "uuid", nullable: false),
- 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_experience_records", x => x.id);
- table.ForeignKey(
- name: "fk_experience_records_accounts_account_id",
- column: x => x.account_id,
- principalTable: "accounts",
- principalColumn: "id",
- onDelete: ReferentialAction.Cascade);
- });
-
- migrationBuilder.CreateTable(
- name: "social_credit_records",
- columns: table => new
- {
- id = table.Column(type: "uuid", nullable: false),
- reason_type = table.Column(type: "character varying(1024)", maxLength: 1024, nullable: false),
- reason = table.Column(type: "character varying(1024)", maxLength: 1024, nullable: false),
- delta = table.Column(type: "double precision", nullable: false),
- expired_at = table.Column(type: "timestamp with time zone", nullable: true),
- account_id = table.Column(type: "uuid", nullable: false),
- 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_social_credit_records", x => x.id);
- table.ForeignKey(
- name: "fk_social_credit_records_accounts_account_id",
- column: x => x.account_id,
- principalTable: "accounts",
- principalColumn: "id",
- onDelete: ReferentialAction.Cascade);
- });
-
- migrationBuilder.CreateIndex(
- name: "ix_experience_records_account_id",
- table: "experience_records",
- column: "account_id");
-
- migrationBuilder.CreateIndex(
- name: "ix_social_credit_records_account_id",
- table: "social_credit_records",
- column: "account_id");
- }
-
- ///
- protected override void Down(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.DropTable(
- name: "experience_records");
-
- migrationBuilder.DropTable(
- name: "social_credit_records");
- }
- }
-}
diff --git a/DysonNetwork.Pass/Migrations/20250821093930_AddLevelingBonusMultiplier.cs b/DysonNetwork.Pass/Migrations/20250821093930_AddLevelingBonusMultiplier.cs
deleted file mode 100644
index 487dff6..0000000
--- a/DysonNetwork.Pass/Migrations/20250821093930_AddLevelingBonusMultiplier.cs
+++ /dev/null
@@ -1,29 +0,0 @@
-using Microsoft.EntityFrameworkCore.Migrations;
-
-#nullable disable
-
-namespace DysonNetwork.Pass.Migrations
-{
- ///
- public partial class AddLevelingBonusMultiplier : Migration
- {
- ///
- protected override void Up(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.AddColumn(
- name: "bonus_multiplier",
- table: "experience_records",
- type: "double precision",
- nullable: false,
- defaultValue: 0.0);
- }
-
- ///
- protected override void Down(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.DropColumn(
- name: "bonus_multiplier",
- table: "experience_records");
- }
- }
-}
diff --git a/DysonNetwork.Pass/Migrations/20250822142926_CacheSocialCreditsInProfile.cs b/DysonNetwork.Pass/Migrations/20250822142926_CacheSocialCreditsInProfile.cs
deleted file mode 100644
index 3753fe9..0000000
--- a/DysonNetwork.Pass/Migrations/20250822142926_CacheSocialCreditsInProfile.cs
+++ /dev/null
@@ -1,29 +0,0 @@
-using Microsoft.EntityFrameworkCore.Migrations;
-
-#nullable disable
-
-namespace DysonNetwork.Pass.Migrations
-{
- ///
- public partial class CacheSocialCreditsInProfile : Migration
- {
- ///
- protected override void Up(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.AddColumn(
- name: "social_credits",
- table: "account_profiles",
- type: "double precision",
- nullable: false,
- defaultValue: 0.0);
- }
-
- ///
- protected override void Down(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.DropColumn(
- name: "social_credits",
- table: "account_profiles");
- }
- }
-}
diff --git a/DysonNetwork.Pass/Migrations/20250904144723_AddOrderProductIdentifier.cs b/DysonNetwork.Pass/Migrations/20250904144723_AddOrderProductIdentifier.cs
deleted file mode 100644
index ba30744..0000000
--- a/DysonNetwork.Pass/Migrations/20250904144723_AddOrderProductIdentifier.cs
+++ /dev/null
@@ -1,29 +0,0 @@
-using Microsoft.EntityFrameworkCore.Migrations;
-
-#nullable disable
-
-namespace DysonNetwork.Pass.Migrations
-{
- ///
- public partial class AddOrderProductIdentifier : Migration
- {
- ///
- protected override void Up(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.AddColumn(
- name: "product_identifier",
- table: "payment_orders",
- type: "character varying(4096)",
- maxLength: 4096,
- nullable: true);
- }
-
- ///
- protected override void Down(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.DropColumn(
- name: "product_identifier",
- table: "payment_orders");
- }
- }
-}
diff --git a/DysonNetwork.Pass/Migrations/20250906174610_AddAccountRegion.cs b/DysonNetwork.Pass/Migrations/20250906174610_AddAccountRegion.cs
deleted file mode 100644
index d489ebe..0000000
--- a/DysonNetwork.Pass/Migrations/20250906174610_AddAccountRegion.cs
+++ /dev/null
@@ -1,30 +0,0 @@
-using Microsoft.EntityFrameworkCore.Migrations;
-
-#nullable disable
-
-namespace DysonNetwork.Pass.Migrations
-{
- ///
- public partial class AddAccountRegion : Migration
- {
- ///
- protected override void Up(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.AddColumn(
- name: "region",
- table: "accounts",
- type: "character varying(32)",
- maxLength: 32,
- nullable: false,
- defaultValue: "");
- }
-
- ///
- protected override void Down(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.DropColumn(
- name: "region",
- table: "accounts");
- }
- }
-}
diff --git a/DysonNetwork.Pass/Migrations/20250907065433_RefactorGeoIpPoint.cs b/DysonNetwork.Pass/Migrations/20250907065433_RefactorGeoIpPoint.cs
deleted file mode 100644
index 894f089..0000000
--- a/DysonNetwork.Pass/Migrations/20250907065433_RefactorGeoIpPoint.cs
+++ /dev/null
@@ -1,63 +0,0 @@
-using DysonNetwork.Shared.Geometry;
-using Microsoft.EntityFrameworkCore.Migrations;
-using NetTopologySuite.Geometries;
-
-#nullable disable
-
-namespace DysonNetwork.Pass.Migrations
-{
- ///
- public partial class RefactorGeoIpPoint : Migration
- {
- ///
- protected override void Up(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.Sql("UPDATE auth_challenges SET location = NULL;");
- migrationBuilder.Sql("UPDATE action_logs SET location = NULL;");
-
- migrationBuilder.DropColumn(
- name: "location",
- table: "auth_challenges");
-
- migrationBuilder.AddColumn(
- name: "location",
- table: "auth_challenges",
- type: "jsonb",
- nullable: true);
-
- migrationBuilder.DropColumn(
- name: "location",
- table: "action_logs");
-
- migrationBuilder.AddColumn(
- name: "location",
- table: "action_logs",
- type: "jsonb",
- nullable: true);
- }
-
- ///
- protected override void Down(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.DropColumn(
- name: "location",
- table: "auth_challenges");
-
- migrationBuilder.AddColumn(
- name: "location",
- table: "auth_challenges",
- type: "geometry",
- nullable: true);
-
- migrationBuilder.DropColumn(
- name: "location",
- table: "action_logs");
-
- migrationBuilder.AddColumn(
- name: "location",
- table: "action_logs",
- type: "geometry",
- nullable: true);
- }
- }
-}
diff --git a/DysonNetwork.Pass/Migrations/20250907065933_RemoveNetTopo.cs b/DysonNetwork.Pass/Migrations/20250907065933_RemoveNetTopo.cs
deleted file mode 100644
index 44abcf2..0000000
--- a/DysonNetwork.Pass/Migrations/20250907065933_RemoveNetTopo.cs
+++ /dev/null
@@ -1,24 +0,0 @@
-using Microsoft.EntityFrameworkCore.Migrations;
-
-#nullable disable
-
-namespace DysonNetwork.Pass.Migrations
-{
- ///
- public partial class RemoveNetTopo : Migration
- {
- ///
- protected override void Up(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.AlterDatabase()
- .OldAnnotation("Npgsql:PostgresExtension:postgis", ",,");
- }
-
- ///
- protected override void Down(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.AlterDatabase()
- .Annotation("Npgsql:PostgresExtension:postgis", ",,");
- }
- }
-}
diff --git a/DysonNetwork.Pass/Migrations/20250908151924_AddAutomatedStatus.cs b/DysonNetwork.Pass/Migrations/20250908151924_AddAutomatedStatus.cs
deleted file mode 100644
index 80ff578..0000000
--- a/DysonNetwork.Pass/Migrations/20250908151924_AddAutomatedStatus.cs
+++ /dev/null
@@ -1,40 +0,0 @@
-using Microsoft.EntityFrameworkCore.Migrations;
-
-#nullable disable
-
-namespace DysonNetwork.Pass.Migrations
-{
- ///
- public partial class AddAutomatedStatus : Migration
- {
- ///
- protected override void Up(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.AddColumn(
- name: "app_identifier",
- table: "account_statuses",
- type: "character varying(4096)",
- maxLength: 4096,
- nullable: true);
-
- migrationBuilder.AddColumn(
- name: "is_automated",
- table: "account_statuses",
- type: "boolean",
- nullable: false,
- defaultValue: false);
- }
-
- ///
- protected override void Down(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.DropColumn(
- name: "app_identifier",
- table: "account_statuses");
-
- migrationBuilder.DropColumn(
- name: "is_automated",
- table: "account_statuses");
- }
- }
-}
diff --git a/DysonNetwork.Pass/Migrations/20250924054811_AddStatusMeta.cs b/DysonNetwork.Pass/Migrations/20250924054811_AddStatusMeta.cs
deleted file mode 100644
index c1b526e..0000000
--- a/DysonNetwork.Pass/Migrations/20250924054811_AddStatusMeta.cs
+++ /dev/null
@@ -1,28 +0,0 @@
-using Microsoft.EntityFrameworkCore.Migrations;
-
-#nullable disable
-
-namespace DysonNetwork.Pass.Migrations
-{
- ///
- public partial class AddStatusMeta : Migration
- {
- ///
- protected override void Up(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.AddColumn>(
- name: "meta",
- table: "account_statuses",
- type: "jsonb",
- nullable: true);
- }
-
- ///
- protected override void Down(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.DropColumn(
- name: "meta",
- table: "account_statuses");
- }
- }
-}
diff --git a/DysonNetwork.Pass/Migrations/20251003061315_AddSubscriptionGift.Designer.cs b/DysonNetwork.Pass/Migrations/20251003061315_AddSubscriptionGift.Designer.cs
deleted file mode 100644
index d3afdd9..0000000
--- a/DysonNetwork.Pass/Migrations/20251003061315_AddSubscriptionGift.Designer.cs
+++ /dev/null
@@ -1,2207 +0,0 @@
-//
-using System;
-using System.Collections.Generic;
-using System.Text.Json;
-using DysonNetwork.Pass;
-using DysonNetwork.Shared.Geometry;
-using DysonNetwork.Shared.Models;
-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.Pass.Migrations
-{
- [DbContext(typeof(AppDatabase))]
- [Migration("20251003061315_AddSubscriptionGift")]
- partial class AddSubscriptionGift
- {
- ///
- protected override void BuildTargetModel(ModelBuilder modelBuilder)
- {
-#pragma warning disable 612, 618
- modelBuilder
- .HasAnnotation("ProductVersion", "9.0.7")
- .HasAnnotation("Relational:MaxIdentifierLength", 63);
-
- NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder);
-
- modelBuilder.Entity("DysonNetwork.Shared.Models.SnAbuseReport", 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("Reason")
- .IsRequired()
- .HasMaxLength(8192)
- .HasColumnType("character varying(8192)")
- .HasColumnName("reason");
-
- b.Property("Resolution")
- .HasMaxLength(8192)
- .HasColumnType("character varying(8192)")
- .HasColumnName("resolution");
-
- b.Property("ResolvedAt")
- .HasColumnType("timestamp with time zone")
- .HasColumnName("resolved_at");
-
- b.Property("ResourceIdentifier")
- .IsRequired()
- .HasMaxLength(4096)
- .HasColumnType("character varying(4096)")
- .HasColumnName("resource_identifier");
-
- b.Property("Type")
- .HasColumnType("integer")
- .HasColumnName("type");
-
- b.Property("UpdatedAt")
- .HasColumnType("timestamp with time zone")
- .HasColumnName("updated_at");
-
- b.HasKey("Id")
- .HasName("pk_abuse_reports");
-
- b.HasIndex("AccountId")
- .HasDatabaseName("ix_abuse_reports_account_id");
-
- b.ToTable("abuse_reports", (string)null);
- });
-
- modelBuilder.Entity("DysonNetwork.Shared.Models.SnAccount", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("uuid")
- .HasColumnName("id");
-
- b.Property("ActivatedAt")
- .HasColumnType("timestamp with time zone")
- .HasColumnName("activated_at");
-
- b.Property("AutomatedId")
- .HasColumnType("uuid")
- .HasColumnName("automated_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("IsSuperuser")
- .HasColumnType("boolean")
- .HasColumnName("is_superuser");
-
- b.Property("Language")
- .IsRequired()
- .HasMaxLength(32)
- .HasColumnType("character varying(32)")
- .HasColumnName("language");
-
- 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("Region")
- .IsRequired()
- .HasMaxLength(32)
- .HasColumnType("character varying(32)")
- .HasColumnName("region");
-
- b.Property("UpdatedAt")
- .HasColumnType("timestamp with time zone")
- .HasColumnName("updated_at");
-
- b.HasKey("Id")
- .HasName("pk_accounts");
-
- b.HasIndex("Name")
- .IsUnique()
- .HasDatabaseName("ix_accounts_name");
-
- b.ToTable("accounts", (string)null);
- });
-
- modelBuilder.Entity("DysonNetwork.Shared.Models.SnAccountAuthFactor", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("uuid")
- .HasColumnName("id");
-
- b.Property("AccountId")
- .HasColumnType("uuid")
- .HasColumnName("account_id");
-
- b.Property>("Config")
- .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("EnabledAt")
- .HasColumnType("timestamp with time zone")
- .HasColumnName("enabled_at");
-
- b.Property("ExpiredAt")
- .HasColumnType("timestamp with time zone")
- .HasColumnName("expired_at");
-
- b.Property("Secret")
- .HasMaxLength(8196)
- .HasColumnType("character varying(8196)")
- .HasColumnName("secret");
-
- b.Property("Trustworthy")
- .HasColumnType("integer")
- .HasColumnName("trustworthy");
-
- b.Property("Type")
- .HasColumnType("integer")
- .HasColumnName("type");
-
- b.Property("UpdatedAt")
- .HasColumnType("timestamp with time zone")
- .HasColumnName("updated_at");
-
- b.HasKey("Id")
- .HasName("pk_account_auth_factors");
-
- b.HasIndex("AccountId")
- .HasDatabaseName("ix_account_auth_factors_account_id");
-
- b.ToTable("account_auth_factors", (string)null);
- });
-
- modelBuilder.Entity("DysonNetwork.Shared.Models.SnAccountBadge", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("uuid")
- .HasColumnName("id");
-
- b.Property("AccountId")
- .HasColumnType("uuid")
- .HasColumnName("account_id");
-
- b.Property("ActivatedAt")
- .HasColumnType("timestamp with time zone")
- .HasColumnName("activated_at");
-
- b.Property("Caption")
- .HasMaxLength(4096)
- .HasColumnType("character varying(4096)")
- .HasColumnName("caption");
-
- 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("Label")
- .HasMaxLength(1024)
- .HasColumnType("character varying(1024)")
- .HasColumnName("label");
-
- b.Property>("Meta")
- .IsRequired()
- .HasColumnType("jsonb")
- .HasColumnName("meta");
-
- 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_badges");
-
- b.HasIndex("AccountId")
- .HasDatabaseName("ix_badges_account_id");
-
- b.ToTable("badges", (string)null);
- });
-
- modelBuilder.Entity("DysonNetwork.Shared.Models.SnAccountConnection", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("uuid")
- .HasColumnName("id");
-
- b.Property("AccessToken")
- .HasMaxLength(4096)
- .HasColumnType("character varying(4096)")
- .HasColumnName("access_token");
-
- 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("LastUsedAt")
- .HasColumnType("timestamp with time zone")
- .HasColumnName("last_used_at");
-
- b.Property>("Meta")
- .HasColumnType("jsonb")
- .HasColumnName("meta");
-
- b.Property("ProvidedIdentifier")
- .IsRequired()
- .HasMaxLength(8192)
- .HasColumnType("character varying(8192)")
- .HasColumnName("provided_identifier");
-
- b.Property("Provider")
- .IsRequired()
- .HasMaxLength(4096)
- .HasColumnType("character varying(4096)")
- .HasColumnName("provider");
-
- b.Property("RefreshToken")
- .HasMaxLength(4096)
- .HasColumnType("character varying(4096)")
- .HasColumnName("refresh_token");
-
- b.Property("UpdatedAt")
- .HasColumnType("timestamp with time zone")
- .HasColumnName("updated_at");
-
- b.HasKey("Id")
- .HasName("pk_account_connections");
-
- b.HasIndex("AccountId")
- .HasDatabaseName("ix_account_connections_account_id");
-
- b.ToTable("account_connections", (string)null);
- });
-
- modelBuilder.Entity("DysonNetwork.Shared.Models.SnAccountContact", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("uuid")
- .HasColumnName("id");
-
- b.Property("AccountId")
- .HasColumnType("uuid")
- .HasColumnName("account_id");
-
- b.Property("Content")
- .IsRequired()
- .HasMaxLength(1024)
- .HasColumnType("character varying(1024)")
- .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("IsPrimary")
- .HasColumnType("boolean")
- .HasColumnName("is_primary");
-
- b.Property("IsPublic")
- .HasColumnType("boolean")
- .HasColumnName("is_public");
-
- b.Property("Type")
- .HasColumnType("integer")
- .HasColumnName("type");
-
- b.Property("UpdatedAt")
- .HasColumnType("timestamp with time zone")
- .HasColumnName("updated_at");
-
- b.Property("VerifiedAt")
- .HasColumnType("timestamp with time zone")
- .HasColumnName("verified_at");
-
- b.HasKey("Id")
- .HasName("pk_account_contacts");
-
- b.HasIndex("AccountId")
- .HasDatabaseName("ix_account_contacts_account_id");
-
- b.ToTable("account_contacts", (string)null);
- });
-
- modelBuilder.Entity("DysonNetwork.Shared.Models.SnAccountProfile", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("uuid")
- .HasColumnName("id");
-
- b.Property("AccountId")
- .HasColumnType("uuid")
- .HasColumnName("account_id");
-
- b.Property("ActiveBadge")
- .HasColumnType("jsonb")
- .HasColumnName("active_badge");
-
- b.Property("Background")
- .HasColumnType("jsonb")
- .HasColumnName("background");
-
- b.Property("Bio")
- .HasMaxLength(4096)
- .HasColumnType("character varying(4096)")
- .HasColumnName("bio");
-
- b.Property("Birthday")
- .HasColumnType("timestamp with time zone")
- .HasColumnName("birthday");
-
- b.Property("CreatedAt")
- .HasColumnType("timestamp with time zone")
- .HasColumnName("created_at");
-
- b.Property("DeletedAt")
- .HasColumnType("timestamp with time zone")
- .HasColumnName("deleted_at");
-
- b.Property("Experience")
- .HasColumnType("integer")
- .HasColumnName("experience");
-
- b.Property("FirstName")
- .HasMaxLength(256)
- .HasColumnType("character varying(256)")
- .HasColumnName("first_name");
-
- b.Property("Gender")
- .HasMaxLength(1024)
- .HasColumnType("character varying(1024)")
- .HasColumnName("gender");
-
- b.Property("LastName")
- .HasMaxLength(256)
- .HasColumnType("character varying(256)")
- .HasColumnName("last_name");
-
- b.Property("LastSeenAt")
- .HasColumnType("timestamp with time zone")
- .HasColumnName("last_seen_at");
-
- b.Property>("Links")
- .HasColumnType("jsonb")
- .HasColumnName("links");
-
- b.Property("Location")
- .HasMaxLength(1024)
- .HasColumnType("character varying(1024)")
- .HasColumnName("location");
-
- b.Property("MiddleName")
- .HasMaxLength(256)
- .HasColumnType("character varying(256)")
- .HasColumnName("middle_name");
-
- b.Property("Picture")
- .HasColumnType("jsonb")
- .HasColumnName("picture");
-
- b.Property("Pronouns")
- .HasMaxLength(1024)
- .HasColumnType("character varying(1024)")
- .HasColumnName("pronouns");
-
- b.Property("SocialCredits")
- .HasColumnType("double precision")
- .HasColumnName("social_credits");
-
- b.Property("TimeZone")
- .HasMaxLength(1024)
- .HasColumnType("character varying(1024)")
- .HasColumnName("time_zone");
-
- b.Property("UpdatedAt")
- .HasColumnType("timestamp with time zone")
- .HasColumnName("updated_at");
-
- b.Property("Verification")
- .HasColumnType("jsonb")
- .HasColumnName("verification");
-
- b.HasKey("Id")
- .HasName("pk_account_profiles");
-
- b.HasIndex("AccountId")
- .IsUnique()
- .HasDatabaseName("ix_account_profiles_account_id");
-
- b.ToTable("account_profiles", (string)null);
- });
-
- modelBuilder.Entity("DysonNetwork.Shared.Models.SnAccountPunishment", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("uuid")
- .HasColumnName("id");
-
- b.Property("AccountId")
- .HasColumnType("uuid")
- .HasColumnName("account_id");
-
- b.Property>("BlockedPermissions")
- .HasColumnType("jsonb")
- .HasColumnName("blocked_permissions");
-
- 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("Reason")
- .IsRequired()
- .HasMaxLength(8192)
- .HasColumnType("character varying(8192)")
- .HasColumnName("reason");
-
- b.Property("Type")
- .HasColumnType("integer")
- .HasColumnName("type");
-
- b.Property("UpdatedAt")
- .HasColumnType("timestamp with time zone")
- .HasColumnName("updated_at");
-
- b.HasKey("Id")
- .HasName("pk_punishments");
-
- b.HasIndex("AccountId")
- .HasDatabaseName("ix_punishments_account_id");
-
- b.ToTable("punishments", (string)null);
- });
-
- modelBuilder.Entity("DysonNetwork.Shared.Models.SnAccountRelationship", b =>
- {
- b.Property("AccountId")
- .HasColumnType("uuid")
- .HasColumnName("account_id");
-
- b.Property("RelatedId")
- .HasColumnType("uuid")
- .HasColumnName("related_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("Status")
- .HasColumnType("smallint")
- .HasColumnName("status");
-
- b.Property("UpdatedAt")
- .HasColumnType("timestamp with time zone")
- .HasColumnName("updated_at");
-
- b.HasKey("AccountId", "RelatedId")
- .HasName("pk_account_relationships");
-
- b.HasIndex("RelatedId")
- .HasDatabaseName("ix_account_relationships_related_id");
-
- b.ToTable("account_relationships", (string)null);
- });
-
- modelBuilder.Entity("DysonNetwork.Shared.Models.SnAccountStatus", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("uuid")
- .HasColumnName("id");
-
- b.Property("AccountId")
- .HasColumnType("uuid")
- .HasColumnName("account_id");
-
- b.Property("AppIdentifier")
- .HasMaxLength(4096)
- .HasColumnType("character varying(4096)")
- .HasColumnName("app_identifier");
-
- b.Property("Attitude")
- .HasColumnType("integer")
- .HasColumnName("attitude");
-
- b.Property("ClearedAt")
- .HasColumnType("timestamp with time zone")
- .HasColumnName("cleared_at");
-
- b.Property("CreatedAt")
- .HasColumnType("timestamp with time zone")
- .HasColumnName("created_at");
-
- b.Property("DeletedAt")
- .HasColumnType("timestamp with time zone")
- .HasColumnName("deleted_at");
-
- b.Property("IsAutomated")
- .HasColumnType("boolean")
- .HasColumnName("is_automated");
-
- b.Property("IsInvisible")
- .HasColumnType("boolean")
- .HasColumnName("is_invisible");
-
- b.Property("IsNotDisturb")
- .HasColumnType("boolean")
- .HasColumnName("is_not_disturb");
-
- b.Property("Label")
- .HasMaxLength(1024)
- .HasColumnType("character varying(1024)")
- .HasColumnName("label");
-
- b.Property>("Meta")
- .HasColumnType("jsonb")
- .HasColumnName("meta");
-
- b.Property("UpdatedAt")
- .HasColumnType("timestamp with time zone")
- .HasColumnName("updated_at");
-
- b.HasKey("Id")
- .HasName("pk_account_statuses");
-
- b.HasIndex("AccountId")
- .HasDatabaseName("ix_account_statuses_account_id");
-
- b.ToTable("account_statuses", (string)null);
- });
-
- modelBuilder.Entity("DysonNetwork.Shared.Models.SnActionLog", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("uuid")
- .HasColumnName("id");
-
- b.Property("AccountId")
- .HasColumnType("uuid")
- .HasColumnName("account_id");
-
- b.Property("Action")
- .IsRequired()
- .HasMaxLength(4096)
- .HasColumnType("character varying(4096)")
- .HasColumnName("action");
-
- b.Property("CreatedAt")
- .HasColumnType("timestamp with time zone")
- .HasColumnName("created_at");
-
- b.Property("DeletedAt")
- .HasColumnType("timestamp with time zone")
- .HasColumnName("deleted_at");
-
- b.Property("IpAddress")
- .HasMaxLength(128)
- .HasColumnType("character varying(128)")
- .HasColumnName("ip_address");
-
- b.Property("Location")
- .HasColumnType("jsonb")
- .HasColumnName("location");
-
- b.Property>("Meta")
- .IsRequired()
- .HasColumnType("jsonb")
- .HasColumnName("meta");
-
- b.Property("SessionId")
- .HasColumnType("uuid")
- .HasColumnName("session_id");
-
- b.Property("UpdatedAt")
- .HasColumnType("timestamp with time zone")
- .HasColumnName("updated_at");
-
- b.Property("UserAgent")
- .HasMaxLength(512)
- .HasColumnType("character varying(512)")
- .HasColumnName("user_agent");
-
- b.HasKey("Id")
- .HasName("pk_action_logs");
-
- b.HasIndex("AccountId")
- .HasDatabaseName("ix_action_logs_account_id");
-
- b.ToTable("action_logs", (string)null);
- });
-
- modelBuilder.Entity("DysonNetwork.Shared.Models.SnApiKey", 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("Label")
- .IsRequired()
- .HasMaxLength(1024)
- .HasColumnType("character varying(1024)")
- .HasColumnName("label");
-
- b.Property("SessionId")
- .HasColumnType("uuid")
- .HasColumnName("session_id");
-
- b.Property("UpdatedAt")
- .HasColumnType("timestamp with time zone")
- .HasColumnName("updated_at");
-
- b.HasKey("Id")
- .HasName("pk_api_keys");
-
- b.HasIndex("AccountId")
- .HasDatabaseName("ix_api_keys_account_id");
-
- b.HasIndex("SessionId")
- .HasDatabaseName("ix_api_keys_session_id");
-
- b.ToTable("api_keys", (string)null);
- });
-
- modelBuilder.Entity("DysonNetwork.Shared.Models.SnAuthChallenge", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("uuid")
- .HasColumnName("id");
-
- b.Property("AccountId")
- .HasColumnType("uuid")
- .HasColumnName("account_id");
-
- b.Property>("Audiences")
- .IsRequired()
- .HasColumnType("jsonb")
- .HasColumnName("audiences");
-
- b.Property>("BlacklistFactors")
- .IsRequired()
- .HasColumnType("jsonb")
- .HasColumnName("blacklist_factors");
-
- b.Property("ClientId")
- .HasColumnType("uuid")
- .HasColumnName("client_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("FailedAttempts")
- .HasColumnType("integer")
- .HasColumnName("failed_attempts");
-
- b.Property("IpAddress")
- .HasMaxLength(128)
- .HasColumnType("character varying(128)")
- .HasColumnName("ip_address");
-
- b.Property("Location")
- .HasColumnType("jsonb")
- .HasColumnName("location");
-
- b.Property("Nonce")
- .HasMaxLength(1024)
- .HasColumnType("character varying(1024)")
- .HasColumnName("nonce");
-
- b.Property>("Scopes")
- .IsRequired()
- .HasColumnType("jsonb")
- .HasColumnName("scopes");
-
- b.Property