Notify level API on chat

🗃️ Enrich the settings of chat members
🐛 Fix role settings on both chat & realm
This commit is contained in:
2025-06-09 23:32:37 +08:00
parent 0c48694493
commit 9e17be38d8
9 changed files with 3540 additions and 46 deletions

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,50 @@
using DysonNetwork.Sphere.Chat;
using Microsoft.EntityFrameworkCore.Migrations;
using NodaTime;
#nullable disable
namespace DysonNetwork.Sphere.Migrations
{
/// <inheritdoc />
public partial class EnrichChatMembers : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.AddColumn<Instant>(
name: "break_until",
table: "chat_members",
type: "timestamp with time zone",
nullable: true);
migrationBuilder.AddColumn<ChatTimeoutCause>(
name: "timeout_cause",
table: "chat_members",
type: "jsonb",
nullable: true);
migrationBuilder.AddColumn<Instant>(
name: "timeout_until",
table: "chat_members",
type: "timestamp with time zone",
nullable: true);
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropColumn(
name: "break_until",
table: "chat_members");
migrationBuilder.DropColumn(
name: "timeout_cause",
table: "chat_members");
migrationBuilder.DropColumn(
name: "timeout_until",
table: "chat_members");
}
}
}

View File

@ -4,6 +4,7 @@ using System.Collections.Generic;
using System.Text.Json;
using DysonNetwork.Sphere;
using DysonNetwork.Sphere.Account;
using DysonNetwork.Sphere.Chat;
using DysonNetwork.Sphere.Storage;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Infrastructure;
@ -885,6 +886,10 @@ namespace DysonNetwork.Sphere.Migrations
.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");
@ -926,6 +931,14 @@ namespace DysonNetwork.Sphere.Migrations
.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");