< Summary

Line coverage
0%
Covered lines: 0
Uncovered lines: 693
Coverable lines: 693
Total lines: 760
Line coverage: 0%
Branch coverage
N/A
Covered branches: 0
Total branches: 0
Branch coverage: N/A
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
File 1: Up(...)100%210%
File 1: Down(...)100%210%
File 2: BuildTargetModel(...)100%210%

File(s)

/home/runner/work/chronicis/chronicis/src/Chronicis.Api/Migrations/20251230055747_AddIsActiveToCampaignAndArc.cs

#LineLine coverage
 1using Microsoft.EntityFrameworkCore.Migrations;
 2
 3#nullable disable
 4
 5namespace Chronicis.Api.Migrations
 6{
 7    /// <inheritdoc />
 8    public partial class AddIsActiveToCampaignAndArc : Migration
 9    {
 10        /// <inheritdoc />
 11        protected override void Up(MigrationBuilder migrationBuilder)
 12        {
 013            migrationBuilder.AddColumn<bool>(
 014                name: "IsActive",
 015                table: "Campaigns",
 016                type: "bit",
 017                nullable: false,
 018                defaultValue: false);
 19
 020            migrationBuilder.AddColumn<bool>(
 021                name: "IsActive",
 022                table: "Arcs",
 023                type: "bit",
 024                nullable: false,
 025                defaultValue: false);
 026        }
 27
 28        /// <inheritdoc />
 29        protected override void Down(MigrationBuilder migrationBuilder)
 30        {
 031            migrationBuilder.DropColumn(
 032                name: "IsActive",
 033                table: "Campaigns");
 34
 035            migrationBuilder.DropColumn(
 036                name: "IsActive",
 037                table: "Arcs");
 038        }
 39    }
 40}

/home/runner/work/chronicis/chronicis/src/Chronicis.Api/Migrations/20251230055747_AddIsActiveToCampaignAndArc.Designer.cs

#LineLine coverage
 1// <auto-generated />
 2using System;
 3using Chronicis.Api.Data;
 4using Microsoft.EntityFrameworkCore;
 5using Microsoft.EntityFrameworkCore.Infrastructure;
 6using Microsoft.EntityFrameworkCore.Metadata;
 7using Microsoft.EntityFrameworkCore.Migrations;
 8using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
 9
 10#nullable disable
 11
 12namespace Chronicis.Api.Migrations
 13{
 14    [DbContext(typeof(ChronicisDbContext))]
 15    [Migration("20251230055747_AddIsActiveToCampaignAndArc")]
 16    partial class AddIsActiveToCampaignAndArc
 17    {
 18        /// <inheritdoc />
 19        protected override void BuildTargetModel(ModelBuilder modelBuilder)
 20        {
 21#pragma warning disable 612, 618
 022            modelBuilder
 023                .HasAnnotation("ProductVersion", "9.0.0")
 024                .HasAnnotation("Relational:MaxIdentifierLength", 128);
 25
 026            SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder);
 27
 028            modelBuilder.Entity("Chronicis.Shared.Models.Arc", b =>
 029                {
 030                    b.Property<Guid>("Id")
 031                        .ValueGeneratedOnAdd()
 032                        .HasColumnType("uniqueidentifier");
 033
 034                    b.Property<string>("AISummary")
 035                        .HasColumnType("nvarchar(max)");
 036
 037                    b.Property<DateTime?>("AISummaryGeneratedAt")
 038                        .HasColumnType("datetime2");
 039
 040                    b.Property<Guid>("CampaignId")
 041                        .HasColumnType("uniqueidentifier");
 042
 043                    b.Property<DateTime>("CreatedAt")
 044                        .HasColumnType("datetime2");
 045
 046                    b.Property<Guid>("CreatedBy")
 047                        .HasColumnType("uniqueidentifier");
 048
 049                    b.Property<string>("Description")
 050                        .HasMaxLength(1000)
 051                        .HasColumnType("nvarchar(1000)");
 052
 053                    b.Property<bool>("IsActive")
 054                        .HasColumnType("bit");
 055
 056                    b.Property<string>("Name")
 057                        .IsRequired()
 058                        .HasMaxLength(200)
 059                        .HasColumnType("nvarchar(200)");
 060
 061                    b.Property<int>("SortOrder")
 062                        .HasColumnType("int");
 063
 064                    b.Property<string>("SummaryCustomPrompt")
 065                        .HasColumnType("nvarchar(max)");
 066
 067                    b.Property<bool>("SummaryIncludeWebSources")
 068                        .HasColumnType("bit");
 069
 070                    b.Property<Guid?>("SummaryTemplateId")
 071                        .HasColumnType("uniqueidentifier");
 072
 073                    b.HasKey("Id");
 074
 075                    b.HasIndex("CampaignId");
 076
 077                    b.HasIndex("CreatedBy");
 078
 079                    b.HasIndex("SummaryTemplateId");
 080
 081                    b.HasIndex("CampaignId", "SortOrder");
 082
 083                    b.ToTable("Arcs");
 084                });
 85
 086            modelBuilder.Entity("Chronicis.Shared.Models.Article", b =>
 087                {
 088                    b.Property<Guid>("Id")
 089                        .ValueGeneratedOnAdd()
 090                        .HasColumnType("uniqueidentifier");
 091
 092                    b.Property<string>("AISummary")
 093                        .HasColumnType("nvarchar(max)");
 094
 095                    b.Property<DateTime?>("AISummaryGeneratedAt")
 096                        .HasColumnType("datetime2");
 097
 098                    b.Property<Guid?>("ArcId")
 099                        .HasColumnType("uniqueidentifier");
 0100
 0101                    b.Property<string>("Body")
 0102                        .HasColumnType("nvarchar(max)");
 0103
 0104                    b.Property<Guid?>("CampaignId")
 0105                        .HasColumnType("uniqueidentifier");
 0106
 0107                    b.Property<DateTime>("CreatedAt")
 0108                        .HasColumnType("datetime2");
 0109
 0110                    b.Property<Guid>("CreatedBy")
 0111                        .HasColumnType("uniqueidentifier");
 0112
 0113                    b.Property<DateTime>("EffectiveDate")
 0114                        .HasColumnType("datetime2");
 0115
 0116                    b.Property<string>("IconEmoji")
 0117                        .HasMaxLength(50)
 0118                        .HasColumnType("nvarchar(50)");
 0119
 0120                    b.Property<string>("InGameDate")
 0121                        .HasMaxLength(100)
 0122                        .HasColumnType("nvarchar(100)");
 0123
 0124                    b.Property<Guid?>("LastModifiedBy")
 0125                        .HasColumnType("uniqueidentifier");
 0126
 0127                    b.Property<DateTime?>("ModifiedAt")
 0128                        .HasColumnType("datetime2");
 0129
 0130                    b.Property<Guid?>("ParentId")
 0131                        .HasColumnType("uniqueidentifier");
 0132
 0133                    b.Property<Guid?>("PlayerId")
 0134                        .HasColumnType("uniqueidentifier");
 0135
 0136                    b.Property<DateTime?>("SessionDate")
 0137                        .HasColumnType("datetime2");
 0138
 0139                    b.Property<string>("Slug")
 0140                        .IsRequired()
 0141                        .HasMaxLength(200)
 0142                        .HasColumnType("nvarchar(200)");
 0143
 0144                    b.Property<string>("SummaryCustomPrompt")
 0145                        .HasColumnType("nvarchar(max)");
 0146
 0147                    b.Property<bool>("SummaryIncludeWebSources")
 0148                        .HasColumnType("bit");
 0149
 0150                    b.Property<Guid?>("SummaryTemplateId")
 0151                        .HasColumnType("uniqueidentifier");
 0152
 0153                    b.Property<string>("Title")
 0154                        .IsRequired()
 0155                        .HasMaxLength(500)
 0156                        .HasColumnType("nvarchar(500)");
 0157
 0158                    b.Property<int>("Type")
 0159                        .HasColumnType("int");
 0160
 0161                    b.Property<int>("Visibility")
 0162                        .HasColumnType("int");
 0163
 0164                    b.Property<Guid?>("WorldId")
 0165                        .HasColumnType("uniqueidentifier");
 0166
 0167                    b.HasKey("Id");
 0168
 0169                    b.HasIndex("ArcId");
 0170
 0171                    b.HasIndex("CampaignId");
 0172
 0173                    b.HasIndex("CreatedBy");
 0174
 0175                    b.HasIndex("LastModifiedBy");
 0176
 0177                    b.HasIndex("ParentId");
 0178
 0179                    b.HasIndex("PlayerId");
 0180
 0181                    b.HasIndex("SummaryTemplateId");
 0182
 0183                    b.HasIndex("Title");
 0184
 0185                    b.HasIndex("Type");
 0186
 0187                    b.HasIndex("WorldId");
 0188
 0189                    b.HasIndex("ParentId", "Slug")
 0190                        .IsUnique()
 0191                        .HasDatabaseName("IX_Articles_ParentId_Slug")
 0192                        .HasFilter("[ParentId] IS NOT NULL");
 0193
 0194                    b.HasIndex("WorldId", "Slug")
 0195                        .IsUnique()
 0196                        .HasDatabaseName("IX_Articles_WorldId_Slug_Root")
 0197                        .HasFilter("[ParentId] IS NULL");
 0198
 0199                    b.ToTable("Articles");
 0200                });
 201
 0202            modelBuilder.Entity("Chronicis.Shared.Models.ArticleLink", b =>
 0203                {
 0204                    b.Property<Guid>("Id")
 0205                        .ValueGeneratedOnAdd()
 0206                        .HasColumnType("uniqueidentifier");
 0207
 0208                    b.Property<DateTime>("CreatedAt")
 0209                        .HasColumnType("datetime2");
 0210
 0211                    b.Property<string>("DisplayText")
 0212                        .HasMaxLength(500)
 0213                        .HasColumnType("nvarchar(500)");
 0214
 0215                    b.Property<int>("Position")
 0216                        .HasColumnType("int");
 0217
 0218                    b.Property<Guid>("SourceArticleId")
 0219                        .HasColumnType("uniqueidentifier");
 0220
 0221                    b.Property<Guid>("TargetArticleId")
 0222                        .HasColumnType("uniqueidentifier");
 0223
 0224                    b.HasKey("Id");
 0225
 0226                    b.HasIndex("SourceArticleId");
 0227
 0228                    b.HasIndex("TargetArticleId");
 0229
 0230                    b.HasIndex("SourceArticleId", "TargetArticleId", "Position")
 0231                        .IsUnique();
 0232
 0233                    b.ToTable("ArticleLinks");
 0234                });
 235
 0236            modelBuilder.Entity("Chronicis.Shared.Models.Campaign", b =>
 0237                {
 0238                    b.Property<Guid>("Id")
 0239                        .ValueGeneratedOnAdd()
 0240                        .HasColumnType("uniqueidentifier");
 0241
 0242                    b.Property<string>("AISummary")
 0243                        .HasColumnType("nvarchar(max)");
 0244
 0245                    b.Property<DateTime?>("AISummaryGeneratedAt")
 0246                        .HasColumnType("datetime2");
 0247
 0248                    b.Property<DateTime>("CreatedAt")
 0249                        .HasColumnType("datetime2");
 0250
 0251                    b.Property<string>("Description")
 0252                        .HasMaxLength(1000)
 0253                        .HasColumnType("nvarchar(1000)");
 0254
 0255                    b.Property<DateTime?>("EndedAt")
 0256                        .HasColumnType("datetime2");
 0257
 0258                    b.Property<bool>("IsActive")
 0259                        .HasColumnType("bit");
 0260
 0261                    b.Property<string>("Name")
 0262                        .IsRequired()
 0263                        .HasMaxLength(200)
 0264                        .HasColumnType("nvarchar(200)");
 0265
 0266                    b.Property<Guid>("OwnerId")
 0267                        .HasColumnType("uniqueidentifier");
 0268
 0269                    b.Property<DateTime?>("StartedAt")
 0270                        .HasColumnType("datetime2");
 0271
 0272                    b.Property<string>("SummaryCustomPrompt")
 0273                        .HasColumnType("nvarchar(max)");
 0274
 0275                    b.Property<bool>("SummaryIncludeWebSources")
 0276                        .HasColumnType("bit");
 0277
 0278                    b.Property<Guid?>("SummaryTemplateId")
 0279                        .HasColumnType("uniqueidentifier");
 0280
 0281                    b.Property<Guid>("WorldId")
 0282                        .HasColumnType("uniqueidentifier");
 0283
 0284                    b.HasKey("Id");
 0285
 0286                    b.HasIndex("OwnerId");
 0287
 0288                    b.HasIndex("SummaryTemplateId");
 0289
 0290                    b.HasIndex("WorldId");
 0291
 0292                    b.ToTable("Campaigns");
 0293                });
 294
 0295            modelBuilder.Entity("Chronicis.Shared.Models.CampaignMember", b =>
 0296                {
 0297                    b.Property<Guid>("Id")
 0298                        .ValueGeneratedOnAdd()
 0299                        .HasColumnType("uniqueidentifier");
 0300
 0301                    b.Property<Guid>("CampaignId")
 0302                        .HasColumnType("uniqueidentifier");
 0303
 0304                    b.Property<string>("CharacterName")
 0305                        .HasMaxLength(100)
 0306                        .HasColumnType("nvarchar(100)");
 0307
 0308                    b.Property<DateTime>("JoinedAt")
 0309                        .HasColumnType("datetime2");
 0310
 0311                    b.Property<int>("Role")
 0312                        .HasColumnType("int");
 0313
 0314                    b.Property<Guid>("UserId")
 0315                        .HasColumnType("uniqueidentifier");
 0316
 0317                    b.HasKey("Id");
 0318
 0319                    b.HasIndex("UserId");
 0320
 0321                    b.HasIndex("CampaignId", "UserId")
 0322                        .IsUnique();
 0323
 0324                    b.ToTable("CampaignMembers");
 0325                });
 326
 0327            modelBuilder.Entity("Chronicis.Shared.Models.SummaryTemplate", b =>
 0328                {
 0329                    b.Property<Guid>("Id")
 0330                        .ValueGeneratedOnAdd()
 0331                        .HasColumnType("uniqueidentifier");
 0332
 0333                    b.Property<DateTime>("CreatedAt")
 0334                        .HasColumnType("datetime2");
 0335
 0336                    b.Property<Guid?>("CreatedBy")
 0337                        .HasColumnType("uniqueidentifier");
 0338
 0339                    b.Property<string>("Description")
 0340                        .HasMaxLength(500)
 0341                        .HasColumnType("nvarchar(500)");
 0342
 0343                    b.Property<bool>("IsSystem")
 0344                        .HasColumnType("bit");
 0345
 0346                    b.Property<string>("Name")
 0347                        .IsRequired()
 0348                        .HasMaxLength(200)
 0349                        .HasColumnType("nvarchar(200)");
 0350
 0351                    b.Property<string>("PromptTemplate")
 0352                        .IsRequired()
 0353                        .HasColumnType("nvarchar(max)");
 0354
 0355                    b.Property<Guid?>("WorldId")
 0356                        .HasColumnType("uniqueidentifier");
 0357
 0358                    b.HasKey("Id");
 0359
 0360                    b.HasIndex("CreatedBy");
 0361
 0362                    b.HasIndex("IsSystem");
 0363
 0364                    b.HasIndex("WorldId");
 0365
 0366                    b.ToTable("SummaryTemplates");
 0367                });
 368
 0369            modelBuilder.Entity("Chronicis.Shared.Models.User", b =>
 0370                {
 0371                    b.Property<Guid>("Id")
 0372                        .ValueGeneratedOnAdd()
 0373                        .HasColumnType("uniqueidentifier");
 0374
 0375                    b.Property<string>("Auth0UserId")
 0376                        .IsRequired()
 0377                        .HasMaxLength(256)
 0378                        .HasColumnType("nvarchar(256)");
 0379
 0380                    b.Property<string>("AvatarUrl")
 0381                        .HasMaxLength(500)
 0382                        .HasColumnType("nvarchar(500)");
 0383
 0384                    b.Property<DateTime>("CreatedAt")
 0385                        .HasColumnType("datetime2");
 0386
 0387                    b.Property<string>("DisplayName")
 0388                        .IsRequired()
 0389                        .HasMaxLength(100)
 0390                        .HasColumnType("nvarchar(100)");
 0391
 0392                    b.Property<string>("Email")
 0393                        .IsRequired()
 0394                        .HasMaxLength(256)
 0395                        .HasColumnType("nvarchar(256)");
 0396
 0397                    b.Property<DateTime>("LastLoginAt")
 0398                        .HasColumnType("datetime2");
 0399
 0400                    b.HasKey("Id");
 0401
 0402                    b.HasIndex("Auth0UserId")
 0403                        .IsUnique();
 0404
 0405                    b.HasIndex("Email");
 0406
 0407                    b.ToTable("Users");
 0408                });
 409
 0410            modelBuilder.Entity("Chronicis.Shared.Models.World", b =>
 0411                {
 0412                    b.Property<Guid>("Id")
 0413                        .ValueGeneratedOnAdd()
 0414                        .HasColumnType("uniqueidentifier");
 0415
 0416                    b.Property<DateTime>("CreatedAt")
 0417                        .HasColumnType("datetime2");
 0418
 0419                    b.Property<string>("Description")
 0420                        .HasMaxLength(1000)
 0421                        .HasColumnType("nvarchar(1000)");
 0422
 0423                    b.Property<string>("Name")
 0424                        .IsRequired()
 0425                        .HasMaxLength(200)
 0426                        .HasColumnType("nvarchar(200)");
 0427
 0428                    b.Property<Guid>("OwnerId")
 0429                        .HasColumnType("uniqueidentifier");
 0430
 0431                    b.Property<string>("Slug")
 0432                        .IsRequired()
 0433                        .HasMaxLength(200)
 0434                        .HasColumnType("nvarchar(200)");
 0435
 0436                    b.HasKey("Id");
 0437
 0438                    b.HasIndex("OwnerId");
 0439
 0440                    b.HasIndex("OwnerId", "Slug")
 0441                        .IsUnique()
 0442                        .HasDatabaseName("IX_Worlds_OwnerId_Slug");
 0443
 0444                    b.ToTable("Worlds");
 0445                });
 446
 0447            modelBuilder.Entity("Chronicis.Shared.Models.WorldLink", b =>
 0448                {
 0449                    b.Property<Guid>("Id")
 0450                        .ValueGeneratedOnAdd()
 0451                        .HasColumnType("uniqueidentifier");
 0452
 0453                    b.Property<DateTime>("CreatedAt")
 0454                        .HasColumnType("datetime2");
 0455
 0456                    b.Property<string>("Description")
 0457                        .HasMaxLength(500)
 0458                        .HasColumnType("nvarchar(500)");
 0459
 0460                    b.Property<string>("Title")
 0461                        .IsRequired()
 0462                        .HasMaxLength(200)
 0463                        .HasColumnType("nvarchar(200)");
 0464
 0465                    b.Property<string>("Url")
 0466                        .IsRequired()
 0467                        .HasMaxLength(2048)
 0468                        .HasColumnType("nvarchar(2048)");
 0469
 0470                    b.Property<Guid>("WorldId")
 0471                        .HasColumnType("uniqueidentifier");
 0472
 0473                    b.HasKey("Id");
 0474
 0475                    b.HasIndex("WorldId");
 0476
 0477                    b.ToTable("WorldLinks");
 0478                });
 479
 0480            modelBuilder.Entity("Chronicis.Shared.Models.Arc", b =>
 0481                {
 0482                    b.HasOne("Chronicis.Shared.Models.Campaign", "Campaign")
 0483                        .WithMany("Arcs")
 0484                        .HasForeignKey("CampaignId")
 0485                        .OnDelete(DeleteBehavior.Cascade)
 0486                        .IsRequired();
 0487
 0488                    b.HasOne("Chronicis.Shared.Models.User", "Creator")
 0489                        .WithMany("CreatedArcs")
 0490                        .HasForeignKey("CreatedBy")
 0491                        .OnDelete(DeleteBehavior.Restrict)
 0492                        .IsRequired();
 0493
 0494                    b.HasOne("Chronicis.Shared.Models.SummaryTemplate", "SummaryTemplate")
 0495                        .WithMany()
 0496                        .HasForeignKey("SummaryTemplateId")
 0497                        .OnDelete(DeleteBehavior.SetNull);
 0498
 0499                    b.Navigation("Campaign");
 0500
 0501                    b.Navigation("Creator");
 0502
 0503                    b.Navigation("SummaryTemplate");
 0504                });
 505
 0506            modelBuilder.Entity("Chronicis.Shared.Models.Article", b =>
 0507                {
 0508                    b.HasOne("Chronicis.Shared.Models.Arc", "Arc")
 0509                        .WithMany("Sessions")
 0510                        .HasForeignKey("ArcId")
 0511                        .OnDelete(DeleteBehavior.Restrict);
 0512
 0513                    b.HasOne("Chronicis.Shared.Models.Campaign", "Campaign")
 0514                        .WithMany("Articles")
 0515                        .HasForeignKey("CampaignId")
 0516                        .OnDelete(DeleteBehavior.Restrict);
 0517
 0518                    b.HasOne("Chronicis.Shared.Models.User", "Creator")
 0519                        .WithMany("CreatedArticles")
 0520                        .HasForeignKey("CreatedBy")
 0521                        .OnDelete(DeleteBehavior.Restrict)
 0522                        .IsRequired();
 0523
 0524                    b.HasOne("Chronicis.Shared.Models.User", "Modifier")
 0525                        .WithMany("ModifiedArticles")
 0526                        .HasForeignKey("LastModifiedBy")
 0527                        .OnDelete(DeleteBehavior.Restrict);
 0528
 0529                    b.HasOne("Chronicis.Shared.Models.Article", "Parent")
 0530                        .WithMany("Children")
 0531                        .HasForeignKey("ParentId")
 0532                        .OnDelete(DeleteBehavior.Restrict);
 0533
 0534                    b.HasOne("Chronicis.Shared.Models.User", "Player")
 0535                        .WithMany("OwnedCharacters")
 0536                        .HasForeignKey("PlayerId")
 0537                        .OnDelete(DeleteBehavior.Restrict);
 0538
 0539                    b.HasOne("Chronicis.Shared.Models.SummaryTemplate", "SummaryTemplate")
 0540                        .WithMany()
 0541                        .HasForeignKey("SummaryTemplateId")
 0542                        .OnDelete(DeleteBehavior.SetNull);
 0543
 0544                    b.HasOne("Chronicis.Shared.Models.World", "World")
 0545                        .WithMany("Articles")
 0546                        .HasForeignKey("WorldId")
 0547                        .OnDelete(DeleteBehavior.Restrict);
 0548
 0549                    b.Navigation("Arc");
 0550
 0551                    b.Navigation("Campaign");
 0552
 0553                    b.Navigation("Creator");
 0554
 0555                    b.Navigation("Modifier");
 0556
 0557                    b.Navigation("Parent");
 0558
 0559                    b.Navigation("Player");
 0560
 0561                    b.Navigation("SummaryTemplate");
 0562
 0563                    b.Navigation("World");
 0564                });
 565
 0566            modelBuilder.Entity("Chronicis.Shared.Models.ArticleLink", b =>
 0567                {
 0568                    b.HasOne("Chronicis.Shared.Models.Article", "SourceArticle")
 0569                        .WithMany("OutgoingLinks")
 0570                        .HasForeignKey("SourceArticleId")
 0571                        .OnDelete(DeleteBehavior.Cascade)
 0572                        .IsRequired();
 0573
 0574                    b.HasOne("Chronicis.Shared.Models.Article", "TargetArticle")
 0575                        .WithMany("IncomingLinks")
 0576                        .HasForeignKey("TargetArticleId")
 0577                        .OnDelete(DeleteBehavior.NoAction)
 0578                        .IsRequired();
 0579
 0580                    b.Navigation("SourceArticle");
 0581
 0582                    b.Navigation("TargetArticle");
 0583                });
 584
 0585            modelBuilder.Entity("Chronicis.Shared.Models.Campaign", b =>
 0586                {
 0587                    b.HasOne("Chronicis.Shared.Models.User", "Owner")
 0588                        .WithMany("OwnedCampaigns")
 0589                        .HasForeignKey("OwnerId")
 0590                        .OnDelete(DeleteBehavior.Restrict)
 0591                        .IsRequired();
 0592
 0593                    b.HasOne("Chronicis.Shared.Models.SummaryTemplate", "SummaryTemplate")
 0594                        .WithMany()
 0595                        .HasForeignKey("SummaryTemplateId")
 0596                        .OnDelete(DeleteBehavior.SetNull);
 0597
 0598                    b.HasOne("Chronicis.Shared.Models.World", "World")
 0599                        .WithMany("Campaigns")
 0600                        .HasForeignKey("WorldId")
 0601                        .OnDelete(DeleteBehavior.Restrict)
 0602                        .IsRequired();
 0603
 0604                    b.Navigation("Owner");
 0605
 0606                    b.Navigation("SummaryTemplate");
 0607
 0608                    b.Navigation("World");
 0609                });
 610
 0611            modelBuilder.Entity("Chronicis.Shared.Models.CampaignMember", b =>
 0612                {
 0613                    b.HasOne("Chronicis.Shared.Models.Campaign", "Campaign")
 0614                        .WithMany("Members")
 0615                        .HasForeignKey("CampaignId")
 0616                        .OnDelete(DeleteBehavior.Cascade)
 0617                        .IsRequired();
 0618
 0619                    b.HasOne("Chronicis.Shared.Models.User", "User")
 0620                        .WithMany("CampaignMemberships")
 0621                        .HasForeignKey("UserId")
 0622                        .OnDelete(DeleteBehavior.Cascade)
 0623                        .IsRequired();
 0624
 0625                    b.Navigation("Campaign");
 0626
 0627                    b.Navigation("User");
 0628                });
 629
 0630            modelBuilder.Entity("Chronicis.Shared.Models.SummaryTemplate", b =>
 0631                {
 0632                    b.HasOne("Chronicis.Shared.Models.User", "Creator")
 0633                        .WithMany()
 0634                        .HasForeignKey("CreatedBy")
 0635                        .OnDelete(DeleteBehavior.Restrict);
 0636
 0637                    b.HasOne("Chronicis.Shared.Models.World", "World")
 0638                        .WithMany()
 0639                        .HasForeignKey("WorldId")
 0640                        .OnDelete(DeleteBehavior.Cascade);
 0641
 0642                    b.Navigation("Creator");
 0643
 0644                    b.Navigation("World");
 0645                });
 646
 0647            modelBuilder.Entity("Chronicis.Shared.Models.World", b =>
 0648                {
 0649                    b.HasOne("Chronicis.Shared.Models.User", "Owner")
 0650                        .WithMany("OwnedWorlds")
 0651                        .HasForeignKey("OwnerId")
 0652                        .OnDelete(DeleteBehavior.Restrict)
 0653                        .IsRequired();
 0654
 0655                    b.Navigation("Owner");
 0656                });
 657
 0658            modelBuilder.Entity("Chronicis.Shared.Models.WorldLink", b =>
 0659                {
 0660                    b.HasOne("Chronicis.Shared.Models.World", "World")
 0661                        .WithMany("Links")
 0662                        .HasForeignKey("WorldId")
 0663                        .OnDelete(DeleteBehavior.Cascade)
 0664                        .IsRequired();
 0665
 0666                    b.Navigation("World");
 0667                });
 668
 0669            modelBuilder.Entity("Chronicis.Shared.Models.Arc", b =>
 0670                {
 0671                    b.Navigation("Sessions");
 0672                });
 673
 0674            modelBuilder.Entity("Chronicis.Shared.Models.Article", b =>
 0675                {
 0676                    b.Navigation("Children");
 0677
 0678                    b.Navigation("IncomingLinks");
 0679
 0680                    b.Navigation("OutgoingLinks");
 0681                });
 682
 0683            modelBuilder.Entity("Chronicis.Shared.Models.Campaign", b =>
 0684                {
 0685                    b.Navigation("Arcs");
 0686
 0687                    b.Navigation("Articles");
 0688
 0689                    b.Navigation("Members");
 0690                });
 691
 0692            modelBuilder.Entity("Chronicis.Shared.Models.User", b =>
 0693                {
 0694                    b.Navigation("CampaignMemberships");
 0695
 0696                    b.Navigation("CreatedArcs");
 0697
 0698                    b.Navigation("CreatedArticles");
 0699
 0700                    b.Navigation("ModifiedArticles");
 0701
 0702                    b.Navigation("OwnedCampaigns");
 0703
 0704                    b.Navigation("OwnedCharacters");
 0705
 0706                    b.Navigation("OwnedWorlds");
 0707                });
 708
 0709            modelBuilder.Entity("Chronicis.Shared.Models.World", b =>
 0710                {
 0711                    b.Navigation("Articles");
 0712
 0713                    b.Navigation("Campaigns");
 0714
 0715                    b.Navigation("Links");
 0716                });
 717#pragma warning restore 612, 618
 0718        }
 719    }
 720}