using Microsoft.EntityFrameworkCore; using Microsoft.AspNetCore.Identity.EntityFrameworkCore; using Socialize.Api.Modules.Approvals.Data; using Socialize.Api.Modules.Assets.Data; using Socialize.Api.Modules.Clients.Data; using Socialize.Api.Modules.Comments.Data; using Socialize.Api.Modules.ContentItems.Data; using Socialize.Api.Modules.Feedback.Data; using Socialize.Api.Modules.Identity.Data; using Socialize.Api.Modules.Notifications.Data; using Socialize.Api.Modules.Campaigns.Data; using Socialize.Api.Modules.Workspaces.Data; namespace Socialize.Api.Data; public class AppDbContext( DbContextOptions options) : IdentityDbContext(options) { public DbSet Workspaces => Set(); public DbSet WorkspaceInvites => Set(); public DbSet Clients => Set(); public DbSet Campaigns => Set(); public DbSet ContentItems => Set(); public DbSet ContentItemRevisions => Set(); public DbSet Assets => Set(); public DbSet AssetRevisions => Set(); public DbSet Comments => Set(); public DbSet ApprovalWorkflowInstances => Set(); public DbSet ApprovalRequests => Set(); public DbSet ApprovalDecisions => Set(); public DbSet WorkspaceApprovalStepConfigurations => Set(); public DbSet NotificationEvents => Set(); public DbSet FeedbackReports => Set(); public DbSet FeedbackTags => Set(); public DbSet FeedbackScreenshots => Set(); public DbSet FeedbackComments => Set(); public DbSet FeedbackActivityEntries => Set(); protected override void OnModelCreating(ModelBuilder builder) { base.OnModelCreating(builder); builder.ConfigureWorkspacesModule(); builder.ConfigureClientsModule(); builder.ConfigureCampaignsModule(); builder.ConfigureContentItemsModule(); builder.ConfigureAssetsModule(); builder.ConfigureCommentsModule(); builder.ConfigureApprovalsModule(); builder.ConfigureNotificationsModule(); builder.ConfigureFeedbackModule(); } }