-- AlterEnum -- This migration adds more than one value to an enum. -- With PostgreSQL versions 11 and earlier, this is not possible -- in a single migration. This can be worked around by creating -- multiple migrations, each migration adding only one value to -- the enum. ALTER TYPE "UserSecurityAuditLogType" ADD VALUE 'PASSKEY_CREATED'; ALTER TYPE "UserSecurityAuditLogType" ADD VALUE 'PASSKEY_DELETED'; ALTER TYPE "UserSecurityAuditLogType" ADD VALUE 'PASSKEY_UPDATED'; ALTER TYPE "UserSecurityAuditLogType" ADD VALUE 'SIGN_IN_PASSKEY_FAIL'; -- CreateTable CREATE TABLE "Passkey" ( "id" TEXT NOT NULL, "userId" INTEGER NOT NULL, "name" TEXT NOT NULL, "createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP, "updatedAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP, "lastUsedAt" TIMESTAMP(3), "credentialId" BYTEA NOT NULL, "credentialPublicKey" BYTEA NOT NULL, "counter" BIGINT NOT NULL, "credentialDeviceType" TEXT NOT NULL, "credentialBackedUp" BOOLEAN NOT NULL, "transports" TEXT[], CONSTRAINT "Passkey_pkey" PRIMARY KEY ("id") ); -- CreateTable CREATE TABLE "AnonymousVerificationToken" ( "id" TEXT NOT NULL, "token" TEXT NOT NULL, "expiresAt" TIMESTAMP(3) NOT NULL, "createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP, CONSTRAINT "AnonymousVerificationToken_pkey" PRIMARY KEY ("id") ); -- CreateIndex CREATE UNIQUE INDEX "AnonymousVerificationToken_id_key" ON "AnonymousVerificationToken"("id"); -- CreateIndex CREATE UNIQUE INDEX "AnonymousVerificationToken_token_key" ON "AnonymousVerificationToken"("token"); -- AddForeignKey ALTER TABLE "Passkey" ADD CONSTRAINT "Passkey_userId_fkey" FOREIGN KEY ("userId") REFERENCES "User"("id") ON DELETE CASCADE ON UPDATE CASCADE;