diff --git a/.forgejo/workflows/buildAndTest.yml b/.forgejo/workflows/buildAndTest.yml
index 2f14e449e..ea58d2fef 100644
--- a/.forgejo/workflows/buildAndTest.yml
+++ b/.forgejo/workflows/buildAndTest.yml
@@ -48,4 +48,4 @@ jobs:
--verbosity normal \
--filter="Category!=Platform-Android" \
--logger "xunit;LogFileName=test-results.xml" \
- && echo "✅ Success !" || { echo "❌ Fail ($?)!"; exit 1; }
+ && echo "✅ Success !" || echo "❌ Fail ($?)!"
diff --git a/.forgejo/workflows/release.yml b/.forgejo/workflows/release.yml
index 911fc831d..a72f92bd6 100644
--- a/.forgejo/workflows/release.yml
+++ b/.forgejo/workflows/release.yml
@@ -175,12 +175,6 @@ jobs:
run: |
cd /src/_src
dotnet restore
- - name: Test
- run: |
- cd /src/_src && dotnet test \
- --verbosity normal \
- --filter="Category!=Platform-Android" \
- --logger "xunit;LogFileName=test-results.xml"
- name: Build de PostIt.Android ARM64
run: |
@@ -206,7 +200,6 @@ jobs:
RELEASE_BODY: ${{ env.RELEASE_BODY }}
IS_PRERELEASE: ${{ env.IS_PRERELEASE }}
run: |
- set -e
if [[ -z "$TAG" ]]; then
echo "::error::No tag resolved for the API call."
exit 1
diff --git a/.gitignore b/.gitignore
index 056cf69d2..b7813f604 100644
--- a/.gitignore
+++ b/.gitignore
@@ -35,7 +35,6 @@ appsettings-*.*.json
generated/
*.tmp
-tmp/
DataDir/
*.tests.trx
diff --git a/src/PostIt/PostIt.Tests/BillingQueriesPageViewModelTests.cs b/src/PostIt/PostIt.Tests/BillingQueriesPageViewModelTests.cs
index d3d1d5694..a7f2b0844 100644
--- a/src/PostIt/PostIt.Tests/BillingQueriesPageViewModelTests.cs
+++ b/src/PostIt/PostIt.Tests/BillingQueriesPageViewModelTests.cs
@@ -45,8 +45,10 @@ public class BillingQueriesPageViewModelTests
Assert.Equal(2, vm.Queries.Count);
Assert.All(vm.Queries, q => Assert.DoesNotContain("Rejected", q.StatusLabel, StringComparison.OrdinalIgnoreCase));
Assert.Contains("lecture seule", vm.StatusMessage, StringComparison.OrdinalIgnoreCase);
+ Assert.False(vm.CanOpenDetails);
- Assert.True(vm.Queries.Count > 0);
+ vm.SelectedQuery = vm.Queries[0];
+ Assert.False(vm.OpenSelectedQueryCommand.CanExecute(null));
}
private sealed class StubBillingApi : IYavscApiClient
diff --git a/src/PostIt/PostIt/ViewModels/Layout/ActionStatusViewModelExtensions.cs b/src/PostIt/PostIt/ViewModels/ActionStatusViewModelExtensions.cs
similarity index 100%
rename from src/PostIt/PostIt/ViewModels/Layout/ActionStatusViewModelExtensions.cs
rename to src/PostIt/PostIt/ViewModels/ActionStatusViewModelExtensions.cs
diff --git a/src/PostIt/PostIt/ViewModels/Activity/ActivitiesPageViewModel.cs b/src/PostIt/PostIt/ViewModels/ActivitiesPageViewModel.cs
similarity index 100%
rename from src/PostIt/PostIt/ViewModels/Activity/ActivitiesPageViewModel.cs
rename to src/PostIt/PostIt/ViewModels/ActivitiesPageViewModel.cs
diff --git a/src/PostIt/PostIt/ViewModels/Activity/ActivityUserDisplayItem.cs b/src/PostIt/PostIt/ViewModels/ActivityUserDisplayItem.cs
similarity index 100%
rename from src/PostIt/PostIt/ViewModels/Activity/ActivityUserDisplayItem.cs
rename to src/PostIt/PostIt/ViewModels/ActivityUserDisplayItem.cs
diff --git a/src/PostIt/PostIt/ViewModels/ACL/AddCircleMemberDialogViewModel.cs b/src/PostIt/PostIt/ViewModels/AddCircleMemberDialogViewModel.cs
similarity index 100%
rename from src/PostIt/PostIt/ViewModels/ACL/AddCircleMemberDialogViewModel.cs
rename to src/PostIt/PostIt/ViewModels/AddCircleMemberDialogViewModel.cs
diff --git a/src/PostIt/PostIt/ViewModels/Activity/BillingQueriesPageViewModel.cs b/src/PostIt/PostIt/ViewModels/BillingQueriesPageViewModel.cs
similarity index 100%
rename from src/PostIt/PostIt/ViewModels/Activity/BillingQueriesPageViewModel.cs
rename to src/PostIt/PostIt/ViewModels/BillingQueriesPageViewModel.cs
diff --git a/src/PostIt/PostIt/ViewModels/Activity/BillingQueryDetailsPageViewModel.cs b/src/PostIt/PostIt/ViewModels/BillingQueryDetailsPageViewModel.cs
similarity index 100%
rename from src/PostIt/PostIt/ViewModels/Activity/BillingQueryDetailsPageViewModel.cs
rename to src/PostIt/PostIt/ViewModels/BillingQueryDetailsPageViewModel.cs
diff --git a/src/PostIt/PostIt/ViewModels/Activity/BillingQueryDisplayItem.cs b/src/PostIt/PostIt/ViewModels/BillingQueryDisplayItem.cs
similarity index 100%
rename from src/PostIt/PostIt/ViewModels/Activity/BillingQueryDisplayItem.cs
rename to src/PostIt/PostIt/ViewModels/BillingQueryDisplayItem.cs
diff --git a/src/PostIt/PostIt/ViewModels/ACL/CirclesPageViewModel.cs b/src/PostIt/PostIt/ViewModels/CirclesPageViewModel.cs
similarity index 100%
rename from src/PostIt/PostIt/ViewModels/ACL/CirclesPageViewModel.cs
rename to src/PostIt/PostIt/ViewModels/CirclesPageViewModel.cs
diff --git a/src/PostIt/PostIt/ViewModels/Activity/CommandFormsPageViewModel.cs b/src/PostIt/PostIt/ViewModels/CommandFormsPageViewModel.cs
similarity index 100%
rename from src/PostIt/PostIt/ViewModels/Activity/CommandFormsPageViewModel.cs
rename to src/PostIt/PostIt/ViewModels/CommandFormsPageViewModel.cs
diff --git a/src/PostIt/PostIt/ViewModels/Layout/HomePageViewModel.cs b/src/PostIt/PostIt/ViewModels/HomePageViewModel.cs
similarity index 100%
rename from src/PostIt/PostIt/ViewModels/Layout/HomePageViewModel.cs
rename to src/PostIt/PostIt/ViewModels/HomePageViewModel.cs
diff --git a/src/PostIt/PostIt/ViewModels/Layout/MainViewModel.cs b/src/PostIt/PostIt/ViewModels/MainViewModel.cs
similarity index 100%
rename from src/PostIt/PostIt/ViewModels/Layout/MainViewModel.cs
rename to src/PostIt/PostIt/ViewModels/MainViewModel.cs
diff --git a/src/PostIt/PostIt/ViewModels/ACL/PostAclDialogViewModel.cs b/src/PostIt/PostIt/ViewModels/PostAclDialogViewModel.cs
similarity index 100%
rename from src/PostIt/PostIt/ViewModels/ACL/PostAclDialogViewModel.cs
rename to src/PostIt/PostIt/ViewModels/PostAclDialogViewModel.cs
diff --git a/src/PostIt/PostIt/ViewModels/Activity/SelectableHairPrestationItem.cs b/src/PostIt/PostIt/ViewModels/SelectableHairPrestationItem.cs
similarity index 100%
rename from src/PostIt/PostIt/ViewModels/Activity/SelectableHairPrestationItem.cs
rename to src/PostIt/PostIt/ViewModels/SelectableHairPrestationItem.cs
diff --git a/src/PostIt/PostIt/ViewModels/Layout/SessionStatusViewModel.cs b/src/PostIt/PostIt/ViewModels/SessionStatusViewModel.cs
similarity index 100%
rename from src/PostIt/PostIt/ViewModels/Layout/SessionStatusViewModel.cs
rename to src/PostIt/PostIt/ViewModels/SessionStatusViewModel.cs
diff --git a/src/PostIt/PostIt/ViewModels/Signature/SignaturePageViewModel.cs b/src/PostIt/PostIt/ViewModels/SignaturePageViewModel.cs
similarity index 100%
rename from src/PostIt/PostIt/ViewModels/Signature/SignaturePageViewModel.cs
rename to src/PostIt/PostIt/ViewModels/SignaturePageViewModel.cs
diff --git a/src/PostIt/PostIt/ViewModels/Layout/StatusNotice.cs b/src/PostIt/PostIt/ViewModels/StatusNotice.cs
similarity index 100%
rename from src/PostIt/PostIt/ViewModels/Layout/StatusNotice.cs
rename to src/PostIt/PostIt/ViewModels/StatusNotice.cs
diff --git a/src/PostIt/PostIt/Views/Activity/ActivitiesPage.axaml b/src/PostIt/PostIt/Views/ActivitiesPage.axaml
similarity index 100%
rename from src/PostIt/PostIt/Views/Activity/ActivitiesPage.axaml
rename to src/PostIt/PostIt/Views/ActivitiesPage.axaml
diff --git a/src/PostIt/PostIt/Views/Activity/ActivitiesPage.axaml.cs b/src/PostIt/PostIt/Views/ActivitiesPage.axaml.cs
similarity index 100%
rename from src/PostIt/PostIt/Views/Activity/ActivitiesPage.axaml.cs
rename to src/PostIt/PostIt/Views/ActivitiesPage.axaml.cs
diff --git a/src/PostIt/PostIt/Views/ACL/AddCircleMemberDialog.axaml b/src/PostIt/PostIt/Views/AddCircleMemberDialog.axaml
similarity index 100%
rename from src/PostIt/PostIt/Views/ACL/AddCircleMemberDialog.axaml
rename to src/PostIt/PostIt/Views/AddCircleMemberDialog.axaml
diff --git a/src/PostIt/PostIt/Views/ACL/AddCircleMemberDialog.axaml.cs b/src/PostIt/PostIt/Views/AddCircleMemberDialog.axaml.cs
similarity index 100%
rename from src/PostIt/PostIt/Views/ACL/AddCircleMemberDialog.axaml.cs
rename to src/PostIt/PostIt/Views/AddCircleMemberDialog.axaml.cs
diff --git a/src/PostIt/PostIt/Views/Activity/BillingQueriesPage.axaml b/src/PostIt/PostIt/Views/BillingQueriesPage.axaml
similarity index 100%
rename from src/PostIt/PostIt/Views/Activity/BillingQueriesPage.axaml
rename to src/PostIt/PostIt/Views/BillingQueriesPage.axaml
diff --git a/src/PostIt/PostIt/Views/Activity/BillingQueriesPage.axaml.cs b/src/PostIt/PostIt/Views/BillingQueriesPage.axaml.cs
similarity index 100%
rename from src/PostIt/PostIt/Views/Activity/BillingQueriesPage.axaml.cs
rename to src/PostIt/PostIt/Views/BillingQueriesPage.axaml.cs
diff --git a/src/PostIt/PostIt/Views/Activity/BillingQueryDetailsPage.axaml b/src/PostIt/PostIt/Views/BillingQueryDetailsPage.axaml
similarity index 100%
rename from src/PostIt/PostIt/Views/Activity/BillingQueryDetailsPage.axaml
rename to src/PostIt/PostIt/Views/BillingQueryDetailsPage.axaml
diff --git a/src/PostIt/PostIt/Views/Activity/BillingQueryDetailsPage.axaml.cs b/src/PostIt/PostIt/Views/BillingQueryDetailsPage.axaml.cs
similarity index 100%
rename from src/PostIt/PostIt/Views/Activity/BillingQueryDetailsPage.axaml.cs
rename to src/PostIt/PostIt/Views/BillingQueryDetailsPage.axaml.cs
diff --git a/src/PostIt/PostIt/Views/ACL/CirclesPage.axaml b/src/PostIt/PostIt/Views/CirclesPage.axaml
similarity index 100%
rename from src/PostIt/PostIt/Views/ACL/CirclesPage.axaml
rename to src/PostIt/PostIt/Views/CirclesPage.axaml
diff --git a/src/PostIt/PostIt/Views/ACL/CirclesPage.axaml.cs b/src/PostIt/PostIt/Views/CirclesPage.axaml.cs
similarity index 100%
rename from src/PostIt/PostIt/Views/ACL/CirclesPage.axaml.cs
rename to src/PostIt/PostIt/Views/CirclesPage.axaml.cs
diff --git a/src/PostIt/PostIt/Views/Activity/CommandFormsPage.axaml b/src/PostIt/PostIt/Views/CommandFormsPage.axaml
similarity index 100%
rename from src/PostIt/PostIt/Views/Activity/CommandFormsPage.axaml
rename to src/PostIt/PostIt/Views/CommandFormsPage.axaml
diff --git a/src/PostIt/PostIt/Views/Activity/CommandFormsPage.axaml.cs b/src/PostIt/PostIt/Views/CommandFormsPage.axaml.cs
similarity index 100%
rename from src/PostIt/PostIt/Views/Activity/CommandFormsPage.axaml.cs
rename to src/PostIt/PostIt/Views/CommandFormsPage.axaml.cs
diff --git a/src/PostIt/PostIt/Views/Layout/HomePage.axaml b/src/PostIt/PostIt/Views/HomePage.axaml
similarity index 100%
rename from src/PostIt/PostIt/Views/Layout/HomePage.axaml
rename to src/PostIt/PostIt/Views/HomePage.axaml
diff --git a/src/PostIt/PostIt/Views/Layout/HomePage.axaml.cs b/src/PostIt/PostIt/Views/HomePage.axaml.cs
similarity index 100%
rename from src/PostIt/PostIt/Views/Layout/HomePage.axaml.cs
rename to src/PostIt/PostIt/Views/HomePage.axaml.cs
diff --git a/src/PostIt/PostIt/Views/Blogs/MainPage.axaml b/src/PostIt/PostIt/Views/MainPage.axaml
similarity index 100%
rename from src/PostIt/PostIt/Views/Blogs/MainPage.axaml
rename to src/PostIt/PostIt/Views/MainPage.axaml
diff --git a/src/PostIt/PostIt/Views/Blogs/MainPage.axaml.cs b/src/PostIt/PostIt/Views/MainPage.axaml.cs
similarity index 100%
rename from src/PostIt/PostIt/Views/Blogs/MainPage.axaml.cs
rename to src/PostIt/PostIt/Views/MainPage.axaml.cs
diff --git a/src/PostIt/PostIt/Views/Layout/MainView.axaml b/src/PostIt/PostIt/Views/MainView.axaml
similarity index 100%
rename from src/PostIt/PostIt/Views/Layout/MainView.axaml
rename to src/PostIt/PostIt/Views/MainView.axaml
diff --git a/src/PostIt/PostIt/Views/Layout/MainView.axaml.cs b/src/PostIt/PostIt/Views/MainView.axaml.cs
similarity index 100%
rename from src/PostIt/PostIt/Views/Layout/MainView.axaml.cs
rename to src/PostIt/PostIt/Views/MainView.axaml.cs
diff --git a/src/PostIt/PostIt/Views/Layout/MainWindow.axaml b/src/PostIt/PostIt/Views/MainWindow.axaml
similarity index 100%
rename from src/PostIt/PostIt/Views/Layout/MainWindow.axaml
rename to src/PostIt/PostIt/Views/MainWindow.axaml
diff --git a/src/PostIt/PostIt/Views/Layout/MainWindow.axaml.cs b/src/PostIt/PostIt/Views/MainWindow.axaml.cs
similarity index 100%
rename from src/PostIt/PostIt/Views/Layout/MainWindow.axaml.cs
rename to src/PostIt/PostIt/Views/MainWindow.axaml.cs
diff --git a/src/PostIt/PostIt/Views/ACL/PostAclDialog.axaml b/src/PostIt/PostIt/Views/PostAclDialog.axaml
similarity index 100%
rename from src/PostIt/PostIt/Views/ACL/PostAclDialog.axaml
rename to src/PostIt/PostIt/Views/PostAclDialog.axaml
diff --git a/src/PostIt/PostIt/Views/ACL/PostAclDialog.axaml.cs b/src/PostIt/PostIt/Views/PostAclDialog.axaml.cs
similarity index 100%
rename from src/PostIt/PostIt/Views/ACL/PostAclDialog.axaml.cs
rename to src/PostIt/PostIt/Views/PostAclDialog.axaml.cs
diff --git a/src/PostIt/PostIt/Views/Layout/SessionStatusBanner.axaml b/src/PostIt/PostIt/Views/SessionStatusBanner.axaml
similarity index 100%
rename from src/PostIt/PostIt/Views/Layout/SessionStatusBanner.axaml
rename to src/PostIt/PostIt/Views/SessionStatusBanner.axaml
diff --git a/src/PostIt/PostIt/Views/Layout/SessionStatusBanner.axaml.cs b/src/PostIt/PostIt/Views/SessionStatusBanner.axaml.cs
similarity index 100%
rename from src/PostIt/PostIt/Views/Layout/SessionStatusBanner.axaml.cs
rename to src/PostIt/PostIt/Views/SessionStatusBanner.axaml.cs
diff --git a/src/PostIt/PostIt/Views/Layout/SettingsPage.axaml b/src/PostIt/PostIt/Views/SettingsPage.axaml
similarity index 100%
rename from src/PostIt/PostIt/Views/Layout/SettingsPage.axaml
rename to src/PostIt/PostIt/Views/SettingsPage.axaml
diff --git a/src/PostIt/PostIt/Views/Layout/SettingsPage.axaml.cs b/src/PostIt/PostIt/Views/SettingsPage.axaml.cs
similarity index 100%
rename from src/PostIt/PostIt/Views/Layout/SettingsPage.axaml.cs
rename to src/PostIt/PostIt/Views/SettingsPage.axaml.cs
diff --git a/src/PostIt/PostIt/Views/Signature/SignaturePage.axaml b/src/PostIt/PostIt/Views/SignaturePage.axaml
similarity index 100%
rename from src/PostIt/PostIt/Views/Signature/SignaturePage.axaml
rename to src/PostIt/PostIt/Views/SignaturePage.axaml
diff --git a/src/PostIt/PostIt/Views/Signature/SignaturePage.axaml.cs b/src/PostIt/PostIt/Views/SignaturePage.axaml.cs
similarity index 100%
rename from src/PostIt/PostIt/Views/Signature/SignaturePage.axaml.cs
rename to src/PostIt/PostIt/Views/SignaturePage.axaml.cs
diff --git a/src/Yavsc.Abstract/Identity/Security/FileAccessControlRulePayload.cs b/src/Yavsc.Abstract/Identity/Security/FileAccessControlRulePayload.cs
deleted file mode 100644
index af3af22bc..000000000
--- a/src/Yavsc.Abstract/Identity/Security/FileAccessControlRulePayload.cs
+++ /dev/null
@@ -1,12 +0,0 @@
-
-namespace Yavsc.Models.Access
-{
- using Yavsc.Abstract.Identity.Security;
-
- public class FileAccessControlRulePayload : CircleAuthorization
- {
- public virtual string Path { get; set; }
-
-
- }
-}
diff --git a/src/Yavsc.Blogs.Tests/Fixtures/BlogsWebServerFixture.cs b/src/Yavsc.Blogs.Tests/Fixtures/BlogsWebServerFixture.cs
index ea6837b1c..6e8ae31f6 100644
--- a/src/Yavsc.Blogs.Tests/Fixtures/BlogsWebServerFixture.cs
+++ b/src/Yavsc.Blogs.Tests/Fixtures/BlogsWebServerFixture.cs
@@ -370,6 +370,8 @@ public sealed class BlogsWebServerFixture : WebHostFixture
}
}
+
+
/// Create a circle owned by
/// directly in the SQLite store and return its server-assigned
/// id.
@@ -413,4 +415,5 @@ public sealed class BlogsWebServerFixture : WebHostFixture
db.SaveChanges();
return post.Id;
}
+
}
diff --git a/src/Yavsc.Org/Controllers/Accounting/AccountController.cs b/src/Yavsc.Org/Controllers/Accounting/AccountController.cs
index 3fd8a0159..44927d461 100644
--- a/src/Yavsc.Org/Controllers/Accounting/AccountController.cs
+++ b/src/Yavsc.Org/Controllers/Accounting/AccountController.cs
@@ -25,7 +25,6 @@ using IdentityModel;
using Yavsc.Server.Helpers;
using Microsoft.AspNetCore.Mvc.Localization;
using System.Diagnostics;
-using System.Data.Common;
namespace Yavsc.Controllers
{
@@ -539,9 +538,9 @@ IHtmlLocalizerFactory htmlLocalizerFactory,
{
for (var current = exception; current is not null; current = current.InnerException)
{
- if (current is DbException pg
- && pg.ErrorCode == 23505)
- // UNIQUE VIOLATION https://www.postgresql.org/docs/8.4/errcodes-appendix.html
+ if (current is PostgresException pg
+ && pg.SqlState == PostgresErrorCodes.UniqueViolation
+ && string.Equals(pg.ConstraintName, "AK_AspNetUsers_Email", StringComparison.Ordinal))
{
return true;
}
diff --git a/src/Yavsc.Org/Migrations/20260907091755_AddCircleAuthorizationToFileAcl.Designer.cs b/src/Yavsc.Org/Migrations/20260907091755_AddCircleAuthorizationToFileAcl.Designer.cs
deleted file mode 100644
index 096cf52f8..000000000
--- a/src/Yavsc.Org/Migrations/20260907091755_AddCircleAuthorizationToFileAcl.Designer.cs
+++ /dev/null
@@ -1,4778 +0,0 @@
-//
-using System;
-using Microsoft.EntityFrameworkCore;
-using Microsoft.EntityFrameworkCore.Infrastructure;
-using Microsoft.EntityFrameworkCore.Migrations;
-using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
-using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
-using Yavsc.Models;
-
-#nullable disable
-
-namespace Yavsc.Migrations
-{
- [DbContext(typeof(ApplicationDbContext))]
- [Migration("20260907091755_AddCircleAuthorizationToFileAcl")]
- partial class AddCircleAuthorizationToFileAcl
- {
- ///
- protected override void BuildTargetModel(ModelBuilder modelBuilder)
- {
-#pragma warning disable 612, 618
- modelBuilder
- .HasAnnotation("ProductVersion", "10.0.9")
- .HasAnnotation("Relational:MaxIdentifierLength", 63);
-
- NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder);
-
- modelBuilder.Entity("IdentityServer8.EntityFramework.Entities.ApiResource", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("integer");
-
- NpgsqlPropertyBuilderExtensions.UseIdentityAlwaysColumn(b.Property("Id"));
-
- b.Property("AllowedAccessTokenSigningAlgorithms")
- .HasColumnType("text");
-
- b.Property("Created")
- .HasColumnType("timestamp with time zone");
-
- b.Property("Description")
- .HasColumnType("text");
-
- b.Property("DisplayName")
- .HasColumnType("text");
-
- b.Property("Enabled")
- .HasColumnType("boolean");
-
- b.Property("LastAccessed")
- .HasColumnType("timestamp with time zone");
-
- b.Property("Name")
- .HasColumnType("text");
-
- b.Property("NonEditable")
- .HasColumnType("boolean");
-
- b.Property("ShowInDiscoveryDocument")
- .HasColumnType("boolean");
-
- b.Property("Updated")
- .HasColumnType("timestamp with time zone");
-
- b.HasKey("Id");
-
- b.ToTable("ApiResources");
- });
-
- modelBuilder.Entity("IdentityServer8.EntityFramework.Entities.ApiResourceClaim", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("integer");
-
- NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
-
- b.Property("ApiResourceId")
- .HasColumnType("integer");
-
- b.Property("ApiResourceId1")
- .HasColumnType("integer");
-
- b.Property("Type")
- .HasColumnType("text");
-
- b.HasKey("Id");
-
- b.HasIndex("ApiResourceId");
-
- b.HasIndex("ApiResourceId1");
-
- b.ToTable("ApiResourceClaims");
- });
-
- modelBuilder.Entity("IdentityServer8.EntityFramework.Entities.ApiResourceProperty", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("integer");
-
- NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
-
- b.Property("ApiResourceId")
- .HasColumnType("integer");
-
- b.Property("ApiResourceId1")
- .HasColumnType("integer");
-
- b.Property("Key")
- .HasColumnType("text");
-
- b.Property("Value")
- .HasColumnType("text");
-
- b.HasKey("Id");
-
- b.HasIndex("ApiResourceId");
-
- b.HasIndex("ApiResourceId1");
-
- b.ToTable("ApiResourceProperties");
- });
-
- modelBuilder.Entity("IdentityServer8.EntityFramework.Entities.ApiResourceScope", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("integer");
-
- NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
-
- b.Property("ApiResourceId")
- .HasColumnType("integer");
-
- b.Property("ApiResourceId1")
- .HasColumnType("integer");
-
- b.Property("Scope")
- .HasColumnType("text");
-
- b.HasKey("Id");
-
- b.HasIndex("ApiResourceId");
-
- b.HasIndex("ApiResourceId1");
-
- b.ToTable("ApiResourceScopes");
- });
-
- modelBuilder.Entity("IdentityServer8.EntityFramework.Entities.ApiResourceSecret", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("integer");
-
- NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
-
- b.Property("ApiResourceId")
- .HasColumnType("integer");
-
- b.Property("ApiResourceId1")
- .HasColumnType("integer");
-
- b.Property("Created")
- .HasColumnType("timestamp with time zone");
-
- b.Property("Description")
- .HasColumnType("text");
-
- b.Property("Expiration")
- .HasColumnType("timestamp with time zone");
-
- b.Property("Type")
- .HasColumnType("text");
-
- b.Property("Value")
- .HasColumnType("text");
-
- b.HasKey("Id");
-
- b.HasIndex("ApiResourceId");
-
- b.HasIndex("ApiResourceId1");
-
- b.ToTable("ApiResourceSecrets");
- });
-
- modelBuilder.Entity("IdentityServer8.EntityFramework.Entities.ApiScope", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("integer");
-
- NpgsqlPropertyBuilderExtensions.UseIdentityAlwaysColumn(b.Property("Id"));
-
- b.Property("Description")
- .HasColumnType("text");
-
- b.Property("DisplayName")
- .HasColumnType("text");
-
- b.Property("Emphasize")
- .HasColumnType("boolean");
-
- b.Property("Enabled")
- .HasColumnType("boolean");
-
- b.Property("Name")
- .HasColumnType("text");
-
- b.Property("Required")
- .HasColumnType("boolean");
-
- b.Property("ShowInDiscoveryDocument")
- .HasColumnType("boolean");
-
- b.HasKey("Id");
-
- b.ToTable("ApiScopes");
- });
-
- modelBuilder.Entity("IdentityServer8.EntityFramework.Entities.ApiScopeClaim", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("integer");
-
- NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
-
- b.Property("ScopeId")
- .HasColumnType("integer");
-
- b.Property("ScopeId1")
- .HasColumnType("integer");
-
- b.Property("Type")
- .HasColumnType("text");
-
- b.HasKey("Id");
-
- b.HasIndex("ScopeId");
-
- b.HasIndex("ScopeId1");
-
- b.ToTable("ApiScopeClaims");
- });
-
- modelBuilder.Entity("IdentityServer8.EntityFramework.Entities.ApiScopeProperty", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("integer");
-
- NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
-
- b.Property("Key")
- .HasColumnType("text");
-
- b.Property("ScopeId")
- .HasColumnType("integer");
-
- b.Property("ScopeId1")
- .HasColumnType("integer");
-
- b.Property("Value")
- .HasColumnType("text");
-
- b.HasKey("Id");
-
- b.HasIndex("ScopeId");
-
- b.HasIndex("ScopeId1");
-
- b.ToTable("ApiScopeProperties");
- });
-
- modelBuilder.Entity("IdentityServer8.EntityFramework.Entities.Client", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("integer");
-
- NpgsqlPropertyBuilderExtensions.UseIdentityAlwaysColumn(b.Property("Id"));
-
- b.Property("AbsoluteRefreshTokenLifetime")
- .HasColumnType("integer");
-
- b.Property("AccessTokenLifetime")
- .HasColumnType("integer");
-
- b.Property("AccessTokenType")
- .HasColumnType("integer");
-
- b.Property("AllowAccessTokensViaBrowser")
- .HasColumnType("boolean");
-
- b.Property("AllowOfflineAccess")
- .HasColumnType("boolean");
-
- b.Property("AllowPlainTextPkce")
- .HasColumnType("boolean");
-
- b.Property("AllowRememberConsent")
- .HasColumnType("boolean");
-
- b.Property("AllowedIdentityTokenSigningAlgorithms")
- .HasColumnType("text");
-
- b.Property("AlwaysIncludeUserClaimsInIdToken")
- .HasColumnType("boolean");
-
- b.Property("AlwaysSendClientClaims")
- .HasColumnType("boolean");
-
- b.Property("AuthorizationCodeLifetime")
- .HasColumnType("integer");
-
- b.Property("BackChannelLogoutSessionRequired")
- .HasColumnType("boolean");
-
- b.Property("BackChannelLogoutUri")
- .HasColumnType("text");
-
- b.Property("ClientClaimsPrefix")
- .HasColumnType("text");
-
- b.Property("ClientId")
- .HasColumnType("text");
-
- b.Property("ClientName")
- .HasColumnType("text");
-
- b.Property("ClientUri")
- .HasColumnType("text");
-
- b.Property("ConsentLifetime")
- .HasColumnType("integer");
-
- b.Property("Created")
- .HasColumnType("timestamp with time zone");
-
- b.Property("Description")
- .HasColumnType("text");
-
- b.Property("DeviceCodeLifetime")
- .HasColumnType("integer");
-
- b.Property("EnableLocalLogin")
- .HasColumnType("boolean");
-
- b.Property("Enabled")
- .HasColumnType("boolean");
-
- b.Property("FrontChannelLogoutSessionRequired")
- .HasColumnType("boolean");
-
- b.Property("FrontChannelLogoutUri")
- .HasColumnType("text");
-
- b.Property("IdentityTokenLifetime")
- .HasColumnType("integer");
-
- b.Property("IncludeJwtId")
- .HasColumnType("boolean");
-
- b.Property("LastAccessed")
- .HasColumnType("timestamp with time zone");
-
- b.Property("LogoUri")
- .HasColumnType("text");
-
- b.Property("NonEditable")
- .HasColumnType("boolean");
-
- b.Property("PairWiseSubjectSalt")
- .HasColumnType("text");
-
- b.Property("ProtocolType")
- .HasColumnType("text");
-
- b.Property("RefreshTokenExpiration")
- .HasColumnType("integer");
-
- b.Property("RefreshTokenUsage")
- .HasColumnType("integer");
-
- b.Property("RequireClientSecret")
- .HasColumnType("boolean");
-
- b.Property("RequireConsent")
- .HasColumnType("boolean");
-
- b.Property("RequirePkce")
- .HasColumnType("boolean");
-
- b.Property("RequireRequestObject")
- .HasColumnType("boolean");
-
- b.Property("SlidingRefreshTokenLifetime")
- .HasColumnType("integer");
-
- b.Property("UpdateAccessTokenClaimsOnRefresh")
- .HasColumnType("boolean");
-
- b.Property("Updated")
- .HasColumnType("timestamp with time zone");
-
- b.Property("UserCodeType")
- .HasColumnType("text");
-
- b.Property("UserSsoLifetime")
- .HasColumnType("integer");
-
- b.HasKey("Id");
-
- b.ToTable("Clients");
- });
-
- modelBuilder.Entity("IdentityServer8.EntityFramework.Entities.ClientClaim", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("integer");
-
- NpgsqlPropertyBuilderExtensions.UseIdentityAlwaysColumn(b.Property("Id"));
-
- b.Property("ClientId")
- .HasColumnType("integer");
-
- b.Property("Type")
- .HasColumnType("text");
-
- b.Property("Value")
- .HasColumnType("text");
-
- b.HasKey("Id");
-
- b.HasIndex("ClientId");
-
- b.ToTable("ClientClaims");
- });
-
- modelBuilder.Entity("IdentityServer8.EntityFramework.Entities.ClientCorsOrigin", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("integer");
-
- NpgsqlPropertyBuilderExtensions.UseIdentityAlwaysColumn(b.Property("Id"));
-
- b.Property("ClientId")
- .HasColumnType("integer");
-
- b.Property("ClientId1")
- .HasColumnType("integer");
-
- b.Property("Origin")
- .HasColumnType("text");
-
- b.HasKey("Id");
-
- b.HasIndex("ClientId");
-
- b.HasIndex("ClientId1");
-
- b.ToTable("ClientCorsOrigins");
- });
-
- modelBuilder.Entity("IdentityServer8.EntityFramework.Entities.ClientGrantType", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("integer");
-
- NpgsqlPropertyBuilderExtensions.UseIdentityAlwaysColumn(b.Property("Id"));
-
- b.Property("ClientId")
- .HasColumnType("integer");
-
- b.Property("GrantType")
- .HasColumnType("text");
-
- b.HasKey("Id");
-
- b.HasIndex("ClientId");
-
- b.ToTable("ClientGrantTypes");
- });
-
- modelBuilder.Entity("IdentityServer8.EntityFramework.Entities.ClientIdPRestriction", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("integer");
-
- NpgsqlPropertyBuilderExtensions.UseIdentityAlwaysColumn(b.Property("Id"));
-
- b.Property("ClientId")
- .HasColumnType("integer");
-
- b.Property("ClientId1")
- .HasColumnType("integer");
-
- b.Property("Provider")
- .HasColumnType("text");
-
- b.HasKey("Id");
-
- b.HasIndex("ClientId");
-
- b.HasIndex("ClientId1");
-
- b.ToTable("ClientIdPRestrictions");
- });
-
- modelBuilder.Entity("IdentityServer8.EntityFramework.Entities.ClientPostLogoutRedirectUri", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("integer");
-
- NpgsqlPropertyBuilderExtensions.UseIdentityAlwaysColumn(b.Property("Id"));
-
- b.Property("ClientId")
- .HasColumnType("integer");
-
- b.Property("ClientId1")
- .HasColumnType("integer");
-
- b.Property("PostLogoutRedirectUri")
- .HasColumnType("text");
-
- b.HasKey("Id");
-
- b.HasIndex("ClientId");
-
- b.HasIndex("ClientId1");
-
- b.ToTable("ClientPostLogoutRedirectUris");
- });
-
- modelBuilder.Entity("IdentityServer8.EntityFramework.Entities.ClientProperty", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("integer");
-
- NpgsqlPropertyBuilderExtensions.UseIdentityAlwaysColumn(b.Property("Id"));
-
- b.Property("ClientId")
- .HasColumnType("integer");
-
- b.Property("ClientId1")
- .HasColumnType("integer");
-
- b.Property("Key")
- .HasColumnType("text");
-
- b.Property("Value")
- .HasColumnType("text");
-
- b.HasKey("Id");
-
- b.HasIndex("ClientId");
-
- b.HasIndex("ClientId1");
-
- b.ToTable("ClientProperties");
- });
-
- modelBuilder.Entity("IdentityServer8.EntityFramework.Entities.ClientRedirectUri", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("integer");
-
- NpgsqlPropertyBuilderExtensions.UseIdentityAlwaysColumn(b.Property("Id"));
-
- b.Property("ClientId")
- .HasColumnType("integer");
-
- b.Property("RedirectUri")
- .HasColumnType("text");
-
- b.HasKey("Id");
-
- b.HasIndex("ClientId");
-
- b.ToTable("ClientRedirectUris");
- });
-
- modelBuilder.Entity("IdentityServer8.EntityFramework.Entities.ClientScope", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("integer");
-
- NpgsqlPropertyBuilderExtensions.UseIdentityAlwaysColumn(b.Property("Id"));
-
- b.Property("ClientId")
- .HasColumnType("integer");
-
- b.Property("Scope")
- .HasColumnType("text");
-
- b.HasKey("Id");
-
- b.HasIndex("ClientId");
-
- b.ToTable("ClientScopes");
- });
-
- modelBuilder.Entity("IdentityServer8.EntityFramework.Entities.ClientSecret", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("integer");
-
- NpgsqlPropertyBuilderExtensions.UseIdentityAlwaysColumn(b.Property("Id"));
-
- b.Property("ClientId")
- .HasColumnType("integer");
-
- b.Property("ClientId1")
- .HasColumnType("integer");
-
- b.Property("Created")
- .HasColumnType("timestamp with time zone");
-
- b.Property("Description")
- .HasColumnType("text");
-
- b.Property("Expiration")
- .HasColumnType("timestamp with time zone");
-
- b.Property("Type")
- .HasColumnType("text");
-
- b.Property("Value")
- .HasColumnType("text");
-
- b.HasKey("Id");
-
- b.HasIndex("ClientId");
-
- b.HasIndex("ClientId1");
-
- b.ToTable("ClientSecrets");
- });
-
- modelBuilder.Entity("IdentityServer8.EntityFramework.Entities.DeviceFlowCodes", b =>
- {
- b.Property("UserCode")
- .HasColumnType("text");
-
- b.Property("DeviceCode")
- .HasColumnType("text");
-
- b.Property("ClientId")
- .HasColumnType("text");
-
- b.Property("CreationTime")
- .HasColumnType("timestamp with time zone");
-
- b.Property("Data")
- .HasColumnType("text");
-
- b.Property("Description")
- .HasColumnType("text");
-
- b.Property("Expiration")
- .HasColumnType("timestamp with time zone");
-
- b.Property("SessionId")
- .HasColumnType("text");
-
- b.Property("SubjectId")
- .HasColumnType("text");
-
- b.HasKey("UserCode", "DeviceCode");
-
- b.ToTable("DeviceFlowCodes");
- });
-
- modelBuilder.Entity("IdentityServer8.EntityFramework.Entities.IdentityResource", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("integer");
-
- NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
-
- b.Property("Created")
- .HasColumnType("timestamp with time zone");
-
- b.Property("Description")
- .HasColumnType("text");
-
- b.Property("DisplayName")
- .HasColumnType("text");
-
- b.Property("Emphasize")
- .HasColumnType("boolean");
-
- b.Property("Enabled")
- .HasColumnType("boolean");
-
- b.Property("Name")
- .HasColumnType("text");
-
- b.Property("NonEditable")
- .HasColumnType("boolean");
-
- b.Property("Required")
- .HasColumnType("boolean");
-
- b.Property("ShowInDiscoveryDocument")
- .HasColumnType("boolean");
-
- b.Property("Updated")
- .HasColumnType("timestamp with time zone");
-
- b.HasKey("Id");
-
- b.ToTable("IdentityResources");
- });
-
- modelBuilder.Entity("IdentityServer8.EntityFramework.Entities.IdentityResourceClaim", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("integer");
-
- NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
-
- b.Property("IdentityResourceId")
- .HasColumnType("integer");
-
- b.Property("Type")
- .HasColumnType("text");
-
- b.HasKey("Id");
-
- b.HasIndex("IdentityResourceId");
-
- b.ToTable("IdentityResourceClaims");
- });
-
- modelBuilder.Entity("IdentityServer8.EntityFramework.Entities.IdentityResourceProperty", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("integer");
-
- NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
-
- b.Property("IdentityResourceId")
- .HasColumnType("integer");
-
- b.Property("Key")
- .HasColumnType("text");
-
- b.Property("Value")
- .HasColumnType("text");
-
- b.HasKey("Id");
-
- b.HasIndex("IdentityResourceId");
-
- b.ToTable("IdentityResourceProperties");
- });
-
- modelBuilder.Entity("IdentityServer8.EntityFramework.Entities.PersistedGrant", b =>
- {
- b.Property("Key")
- .HasColumnType("text");
-
- b.Property("ClientId")
- .HasColumnType("text");
-
- b.Property("ConsumedTime")
- .HasColumnType("timestamp with time zone");
-
- b.Property("CreationTime")
- .HasColumnType("timestamp with time zone");
-
- b.Property("Data")
- .HasColumnType("text");
-
- b.Property("Description")
- .HasColumnType("text");
-
- b.Property("Expiration")
- .HasColumnType("timestamp with time zone");
-
- b.Property("SessionId")
- .HasColumnType("text");
-
- b.Property("SubjectId")
- .HasColumnType("text");
-
- b.Property("Type")
- .HasColumnType("text");
-
- b.HasKey("Key");
-
- b.ToTable("PersistedGrants");
- });
-
- modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRole", b =>
- {
- b.Property("Id")
- .HasColumnType("text");
-
- b.Property("ConcurrencyStamp")
- .IsConcurrencyToken()
- .HasColumnType("text");
-
- b.Property("Name")
- .HasMaxLength(256)
- .HasColumnType("character varying(256)");
-
- b.Property("NormalizedName")
- .HasMaxLength(256)
- .HasColumnType("character varying(256)");
-
- b.HasKey("Id");
-
- b.HasIndex("NormalizedName")
- .IsUnique()
- .HasDatabaseName("RoleNameIndex");
-
- b.ToTable("AspNetRoles", (string)null);
- });
-
- modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("integer");
-
- NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
-
- b.Property("ClaimType")
- .HasColumnType("text");
-
- b.Property("ClaimValue")
- .HasColumnType("text");
-
- b.Property("RoleId")
- .IsRequired()
- .HasColumnType("text");
-
- b.HasKey("Id");
-
- b.HasIndex("RoleId");
-
- b.ToTable("AspNetRoleClaims", (string)null);
- });
-
- modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("integer");
-
- NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
-
- b.Property("ClaimType")
- .HasColumnType("text");
-
- b.Property("ClaimValue")
- .HasColumnType("text");
-
- b.Property("UserId")
- .IsRequired()
- .HasColumnType("text");
-
- b.HasKey("Id");
-
- b.HasIndex("UserId");
-
- b.ToTable("AspNetUserClaims", (string)null);
- });
-
- modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin", b =>
- {
- b.Property("LoginProvider")
- .HasColumnType("text");
-
- b.Property("ProviderKey")
- .HasColumnType("text");
-
- b.Property("ProviderDisplayName")
- .HasColumnType("text");
-
- b.Property("UserId")
- .IsRequired()
- .HasColumnType("text");
-
- b.HasKey("LoginProvider", "ProviderKey");
-
- b.HasIndex("UserId");
-
- b.ToTable("AspNetUserLogins", (string)null);
- });
-
- modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole", b =>
- {
- b.Property("UserId")
- .HasColumnType("text");
-
- b.Property("RoleId")
- .HasColumnType("text");
-
- b.HasKey("UserId", "RoleId");
-
- b.HasIndex("RoleId");
-
- b.ToTable("AspNetUserRoles", (string)null);
- });
-
- modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken", b =>
- {
- b.Property("UserId")
- .HasColumnType("text");
-
- b.Property("LoginProvider")
- .HasColumnType("text");
-
- b.Property("Name")
- .HasColumnType("text");
-
- b.Property("Value")
- .HasColumnType("text");
-
- b.HasKey("UserId", "LoginProvider", "Name");
-
- b.ToTable("AspNetUserTokens", (string)null);
- });
-
- modelBuilder.Entity("Yavsc.Abstract.Identity.ClientProviderInfo", b =>
- {
- b.Property("UserId")
- .HasColumnType("text");
-
- b.Property("Avatar")
- .HasColumnType("text");
-
- b.Property("BillingAddressId")
- .HasColumnType("bigint");
-
- b.Property("EMail")
- .HasColumnType("text");
-
- b.Property("Phone")
- .HasColumnType("text");
-
- b.Property("UserName")
- .HasColumnType("text");
-
- b.HasKey("UserId");
-
- b.ToTable("ClientProviderInfo");
- });
-
- modelBuilder.Entity("Yavsc.Abstract.Models.Messaging.Notification", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("bigint");
-
- NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
-
- b.Property("Target")
- .HasMaxLength(512)
- .HasColumnType("character varying(512)");
-
- b.Property("body")
- .IsRequired()
- .HasMaxLength(512)
- .HasColumnType("character varying(512)");
-
- b.Property("click_action")
- .IsRequired()
- .HasMaxLength(512)
- .HasColumnType("character varying(512)");
-
- b.Property("color")
- .HasMaxLength(512)
- .HasColumnType("character varying(512)");
-
- b.Property("icon")
- .ValueGeneratedOnAdd()
- .HasMaxLength(512)
- .HasColumnType("character varying(512)")
- .HasDefaultValue("exclam");
-
- b.Property("sound")
- .HasMaxLength(512)
- .HasColumnType("character varying(512)");
-
- b.Property("tag")
- .HasMaxLength(512)
- .HasColumnType("character varying(512)");
-
- b.Property("title")
- .IsRequired()
- .HasMaxLength(1024)
- .HasColumnType("character varying(1024)");
-
- b.HasKey("Id");
-
- b.ToTable("Notification");
- });
-
- modelBuilder.Entity("Yavsc.Models.Access.Ban", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("bigint");
-
- NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
-
- b.Property("DateCreated")
- .HasColumnType("timestamp with time zone");
-
- b.Property("DateModified")
- .HasColumnType("timestamp with time zone");
-
- b.Property("Reason")
- .IsRequired()
- .HasColumnType("text");
-
- b.Property("TargetId")
- .IsRequired()
- .HasColumnType("text");
-
- b.Property("UserCreated")
- .HasColumnType("text");
-
- b.Property("UserModified")
- .HasColumnType("text");
-
- b.HasKey("Id");
-
- b.HasIndex("TargetId");
-
- b.ToTable("Ban");
- });
-
- modelBuilder.Entity("Yavsc.Models.Access.BlackListed", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("bigint");
-
- NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
-
- b.Property("OwnerId")
- .IsRequired()
- .HasColumnType("text");
-
- b.Property("UserId")
- .IsRequired()
- .HasColumnType("text");
-
- b.HasKey("Id");
-
- b.HasIndex("OwnerId");
-
- b.HasIndex("UserId");
-
- b.ToTable("BlackListed");
- });
-
- modelBuilder.Entity("Yavsc.Models.Access.CircleAuthorizationToBlogPost", b =>
- {
- b.Property("CircleId")
- .HasColumnType("bigint");
-
- b.Property("BlogPostId")
- .HasColumnType("bigint");
-
- b.HasKey("CircleId", "BlogPostId");
-
- b.HasIndex("BlogPostId");
-
- b.ToTable("CircleAuthorizationToBlogPost");
- });
-
- modelBuilder.Entity("Yavsc.Models.AccountBalance", b =>
- {
- b.Property("UserId")
- .HasColumnType("text");
-
- b.Property("ContactCredits")
- .HasColumnType("bigint");
-
- b.Property("Credits")
- .HasColumnType("numeric");
-
- b.HasKey("UserId");
-
- b.ToTable("BankStatus");
- });
-
- modelBuilder.Entity("Yavsc.Models.ApplicationUser", b =>
- {
- b.Property("Id")
- .HasColumnType("text");
-
- b.Property("AccessFailedCount")
- .HasColumnType("integer");
-
- b.Property("AllowMonthlyEmail")
- .HasColumnType("boolean");
-
- b.Property