//
using System;
using DodoSSH.Client.Storage;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Infrastructure;
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
#nullable disable
namespace DodoSSH.Client.Storage.Migrations
{
[DbContext(typeof(ClientCacheContext))]
partial class ClientCacheContextModelSnapshot : ModelSnapshot
{
protected override void BuildModel(ModelBuilder modelBuilder)
{
#pragma warning disable 612, 618
modelBuilder.HasAnnotation("ProductVersion", "10.0.10");
modelBuilder.Entity("DodoSSH.Client.Storage.CachedItemRow", b =>
{
b.Property("VaultId")
.HasColumnType("TEXT")
.HasColumnName("vault_id");
b.Property("EntityType")
.HasColumnType("INTEGER")
.HasColumnName("entity_type");
b.Property("EntityId")
.HasColumnType("TEXT")
.HasColumnName("entity_id");
b.Property("AadVersion")
.HasColumnType("INTEGER")
.HasColumnName("aad_version");
b.Property("ChangeSequence")
.HasColumnType("INTEGER")
.HasColumnName("change_sequence");
b.Property("DataKeyId")
.HasColumnType("TEXT")
.HasColumnName("data_key_id");
b.Property("IsDeleted")
.HasColumnType("INTEGER")
.HasColumnName("is_deleted");
b.Property("KeyGeneration")
.HasColumnType("INTEGER")
.HasColumnName("key_generation");
b.Property("Payload")
.HasColumnType("BLOB")
.HasColumnName("payload");
b.Property("ProtectedFields")
.HasColumnType("BLOB")
.HasColumnName("protected_fields");
b.Property("UpdatedAtUtc")
.HasColumnType("INTEGER")
.HasColumnName("updated_at_utc");
b.Property("Version")
.HasColumnType("INTEGER")
.HasColumnName("version");
b.Property("WrappedDataKey")
.HasColumnType("BLOB")
.HasColumnName("wrapped_data_key");
b.HasKey("VaultId", "EntityType", "EntityId")
.HasName("pk_item");
b.HasIndex("VaultId", "ChangeSequence")
.HasDatabaseName("ix_item_vault_id_change_sequence");
b.HasIndex("VaultId", "EntityType")
.HasDatabaseName("ix_item_vault_id_entity_type");
b.ToTable("item", (string)null);
});
modelBuilder.Entity("DodoSSH.Client.Storage.CachedVaultKeyWrapRow", b =>
{
b.Property("VaultId")
.HasColumnType("TEXT")
.HasColumnName("vault_id");
b.Property("KeyGeneration")
.HasColumnType("INTEGER")
.HasColumnName("key_generation");
b.Property("WrappedKey")
.IsRequired()
.HasColumnType("BLOB")
.HasColumnName("wrapped_key");
b.HasKey("VaultId", "KeyGeneration")
.HasName("pk_vault_key_wrap");
b.ToTable("vault_key_wrap", (string)null);
});
modelBuilder.Entity("DodoSSH.Client.Storage.CachedVaultRow", b =>
{
b.Property("VaultId")
.HasColumnType("TEXT")
.HasColumnName("vault_id");
b.Property("Hidden")
.HasColumnType("INTEGER")
.HasColumnName("hidden");
b.Property("IsPersonal")
.HasColumnType("INTEGER")
.HasColumnName("is_personal");
b.Property("KeyGeneration")
.HasColumnType("INTEGER")
.HasColumnName("key_generation");
b.Property("Name")
.IsRequired()
.HasColumnType("TEXT")
.HasColumnName("name");
b.Property("Permissions")
.HasColumnType("INTEGER")
.HasColumnName("permissions");
b.Property("RekeyRequired")
.HasColumnType("INTEGER")
.HasColumnName("rekey_required");
b.Property("TeamId")
.HasColumnType("TEXT")
.HasColumnName("team_id");
b.Property("UpdatedAtUtc")
.HasColumnType("INTEGER")
.HasColumnName("updated_at_utc");
b.Property("WrappedVaultKey")
.HasColumnType("BLOB")
.HasColumnName("wrapped_vault_key");
b.HasKey("VaultId")
.HasName("pk_vault");
b.ToTable("vault", (string)null);
});
modelBuilder.Entity("DodoSSH.Client.Storage.ConflictRow", b =>
{
b.Property("Id")
.HasColumnType("TEXT")
.HasColumnName("id");
b.Property("Acknowledged")
.HasColumnType("INTEGER")
.HasColumnName("acknowledged");
b.Property("Detail")
.IsRequired()
.HasColumnType("BLOB")
.HasColumnName("detail");
b.Property("DetectedAtUtc")
.HasColumnType("INTEGER")
.HasColumnName("detected_at_utc");
b.Property("EntityId")
.HasColumnType("TEXT")
.HasColumnName("entity_id");
b.Property("EntityType")
.HasColumnType("INTEGER")
.HasColumnName("entity_type");
b.Property("Kind")
.HasColumnType("INTEGER")
.HasColumnName("kind");
b.Property("VaultId")
.HasColumnType("TEXT")
.HasColumnName("vault_id");
b.HasKey("Id")
.HasName("pk_conflict");
b.HasIndex("VaultId", "Acknowledged")
.HasDatabaseName("ix_conflict_vault_id_acknowledged");
b.HasIndex("VaultId", "EntityType", "EntityId")
.HasDatabaseName("ix_conflict_vault_id_entity_type_entity_id");
b.ToTable("conflict", (string)null);
});
modelBuilder.Entity("DodoSSH.Client.Storage.OutboxRow", b =>
{
b.Property("Sequence")
.ValueGeneratedOnAdd()
.HasColumnType("INTEGER")
.HasColumnName("sequence");
b.Property("AadVersion")
.HasColumnType("INTEGER")
.HasColumnName("aad_version");
b.Property("AncestorAadVersion")
.HasColumnType("INTEGER")
.HasColumnName("ancestor_aad_version");
b.Property("AncestorDataKeyId")
.HasColumnType("TEXT")
.HasColumnName("ancestor_data_key_id");
b.Property("AncestorKeyGeneration")
.HasColumnType("INTEGER")
.HasColumnName("ancestor_key_generation");
b.Property("AncestorPayload")
.HasColumnType("BLOB")
.HasColumnName("ancestor_payload");
b.Property("AncestorProtectedFields")
.HasColumnType("BLOB")
.HasColumnName("ancestor_protected_fields");
b.Property("AncestorVersion")
.HasColumnType("INTEGER")
.HasColumnName("ancestor_version");
b.Property("AncestorWrappedDataKey")
.HasColumnType("BLOB")
.HasColumnName("ancestor_wrapped_data_key");
b.Property("Attempts")
.HasColumnType("INTEGER")
.HasColumnName("attempts");
b.Property("DataKeyId")
.HasColumnType("TEXT")
.HasColumnName("data_key_id");
b.Property("EntityId")
.HasColumnType("TEXT")
.HasColumnName("entity_id");
b.Property("EntityType")
.HasColumnType("INTEGER")
.HasColumnName("entity_type");
b.Property("ExpectedVersion")
.HasColumnType("INTEGER")
.HasColumnName("expected_version");
b.Property("IsParked")
.HasColumnType("INTEGER")
.HasColumnName("is_parked");
b.Property("KeyGeneration")
.HasColumnType("INTEGER")
.HasColumnName("key_generation");
b.Property("LastError")
.HasColumnType("TEXT")
.HasColumnName("last_error");
b.Property("Operation")
.HasColumnType("INTEGER")
.HasColumnName("operation");
b.Property("OperationId")
.HasColumnType("TEXT")
.HasColumnName("operation_id");
b.Property("Payload")
.HasColumnType("BLOB")
.HasColumnName("payload");
b.Property("ProtectedFields")
.HasColumnType("BLOB")
.HasColumnName("protected_fields");
b.Property("QueuedAtUtc")
.HasColumnType("INTEGER")
.HasColumnName("queued_at_utc");
b.Property("VaultId")
.HasColumnType("TEXT")
.HasColumnName("vault_id");
b.Property("WrappedDataKey")
.HasColumnType("BLOB")
.HasColumnName("wrapped_data_key");
b.HasKey("Sequence")
.HasName("pk_outbox");
b.HasIndex("OperationId")
.IsUnique()
.HasDatabaseName("ix_outbox_operation_id");
b.HasIndex("VaultId", "EntityType", "EntityId")
.IsUnique()
.HasDatabaseName("ix_outbox_vault_id_entity_type_entity_id");
b.HasIndex("VaultId", "IsParked", "Sequence")
.HasDatabaseName("ix_outbox_vault_id_is_parked_sequence");
b.ToTable("outbox", (string)null);
});
modelBuilder.Entity("DodoSSH.Client.Storage.RememberedSignInRow", b =>
{
b.Property("Id")
.HasColumnType("INTEGER")
.HasColumnName("id");
b.Property("SealedRefreshToken")
.IsRequired()
.HasColumnType("BLOB")
.HasColumnName("sealed_refresh_token");
b.Property("UpdatedAtUtc")
.HasColumnType("INTEGER")
.HasColumnName("updated_at_utc");
b.HasKey("Id")
.HasName("pk_remembered_sign_in");
b.ToTable("remembered_sign_in", null, t =>
{
t.HasCheckConstraint("ck_remembered_sign_in_singleton", "id = 1");
});
});
modelBuilder.Entity("DodoSSH.Client.Storage.SyncStateRow", b =>
{
b.Property("VaultId")
.HasColumnType("TEXT")
.HasColumnName("vault_id");
b.Property("Cursor")
.HasColumnType("TEXT")
.HasColumnName("cursor");
b.Property("KeyGeneration")
.HasColumnType("INTEGER")
.HasColumnName("key_generation");
b.Property("LastPulledAtUtc")
.HasColumnType("INTEGER")
.HasColumnName("last_pulled_at_utc");
b.Property("LastPushedAtUtc")
.HasColumnType("INTEGER")
.HasColumnName("last_pushed_at_utc");
b.Property("PulledTypes")
.HasColumnType("TEXT")
.HasColumnName("pulled_types");
b.Property("ServerTimeSkewMs")
.HasColumnType("INTEGER")
.HasColumnName("server_time_skew_ms");
b.HasKey("VaultId")
.HasName("pk_sync_state");
b.ToTable("sync_state", (string)null);
});
modelBuilder.Entity("DodoSSH.Client.Storage.UnlockMaterialRow", b =>
{
b.Property("Id")
.HasColumnType("INTEGER")
.HasColumnName("id");
b.Property("DeviceId")
.HasColumnType("TEXT")
.HasColumnName("device_id");
b.Property("DeviceWrappedPrivateKey")
.HasColumnType("BLOB")
.HasColumnName("device_wrapped_private_key");
b.Property("DisplayName")
.HasColumnType("TEXT")
.HasColumnName("display_name");
b.Property("Email")
.HasColumnType("TEXT")
.HasColumnName("email");
b.Property("Issuer")
.IsRequired()
.HasColumnType("TEXT")
.HasColumnName("issuer");
b.Property("KdfAlgorithm")
.IsRequired()
.HasColumnType("TEXT")
.HasColumnName("kdf_algorithm");
b.Property("KdfMemoryKibibytes")
.HasColumnType("INTEGER")
.HasColumnName("kdf_memory_kibibytes");
b.Property("KdfParallelism")
.HasColumnType("INTEGER")
.HasColumnName("kdf_parallelism");
b.Property("KdfPasses")
.HasColumnType("INTEGER")
.HasColumnName("kdf_passes");
b.Property("KdfSalt")
.IsRequired()
.HasColumnType("BLOB")
.HasColumnName("kdf_salt");
b.Property("KeyGeneration")
.HasColumnType("INTEGER")
.HasColumnName("key_generation");
b.Property("ServerUrl")
.IsRequired()
.HasColumnType("TEXT")
.HasColumnName("server_url");
b.Property("Subject")
.IsRequired()
.HasColumnType("TEXT")
.HasColumnName("subject");
b.Property("UpdatedAtUtc")
.HasColumnType("INTEGER")
.HasColumnName("updated_at_utc");
b.Property("UserId")
.HasColumnType("TEXT")
.HasColumnName("user_id");
b.Property("WrappedPrivateKey")
.IsRequired()
.HasColumnType("BLOB")
.HasColumnName("wrapped_private_key");
b.HasKey("Id")
.HasName("pk_unlock_material");
b.ToTable("unlock_material", null, t =>
{
t.HasCheckConstraint("ck_unlock_material_singleton", "id = 1");
});
});
#pragma warning restore 612, 618
}
}
}