diff --git a/.gitignore b/.gitignore index 24c5aac..535aadd 100644 --- a/.gitignore +++ b/.gitignore @@ -36,5 +36,4 @@ yarn-error.log* # zipline config.toml uploads/ -data.db* -migrations/ \ No newline at end of file +data.db* \ No newline at end of file diff --git a/prisma/migrations/20210825043706_init/migration.sql b/prisma/migrations/20210825043706_init/migration.sql new file mode 100644 index 0000000..bf21d2f --- /dev/null +++ b/prisma/migrations/20210825043706_init/migration.sql @@ -0,0 +1,71 @@ +-- CreateTable +CREATE TABLE "User" ( + "id" SERIAL NOT NULL, + "username" TEXT NOT NULL, + "password" TEXT NOT NULL, + "token" TEXT NOT NULL, + "administrator" BOOLEAN NOT NULL DEFAULT false, + "embedTitle" TEXT, + "embedColor" TEXT NOT NULL DEFAULT E'#2f3136', + + PRIMARY KEY ("id") +); + +-- CreateTable +CREATE TABLE "Image" ( + "id" SERIAL NOT NULL, + "file" TEXT NOT NULL, + "mimetype" TEXT NOT NULL DEFAULT E'image/png', + "created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP, + "views" INTEGER NOT NULL DEFAULT 0, + "userId" INTEGER NOT NULL, + + PRIMARY KEY ("id") +); + +-- CreateTable +CREATE TABLE "InvisibleImage" ( + "id" INTEGER NOT NULL, + "invis" TEXT NOT NULL +); + +-- CreateTable +CREATE TABLE "Url" ( + "id" SERIAL NOT NULL, + "to" TEXT NOT NULL, + "created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP, + "views" INTEGER NOT NULL DEFAULT 0, + "userId" INTEGER NOT NULL, + + PRIMARY KEY ("id") +); + +-- CreateTable +CREATE TABLE "InvisibleUrl" ( + "id" INTEGER NOT NULL, + "invis" TEXT NOT NULL +); + +-- CreateIndex +CREATE UNIQUE INDEX "InvisibleImage.invis_unique" ON "InvisibleImage"("invis"); + +-- CreateIndex +CREATE UNIQUE INDEX "InvisibleImage_id_unique" ON "InvisibleImage"("id"); + +-- CreateIndex +CREATE UNIQUE INDEX "InvisibleUrl.invis_unique" ON "InvisibleUrl"("invis"); + +-- CreateIndex +CREATE UNIQUE INDEX "InvisibleUrl_id_unique" ON "InvisibleUrl"("id"); + +-- AddForeignKey +ALTER TABLE "Image" ADD FOREIGN KEY ("userId") REFERENCES "User"("id") ON DELETE CASCADE ON UPDATE CASCADE; + +-- AddForeignKey +ALTER TABLE "InvisibleImage" ADD FOREIGN KEY ("id") REFERENCES "Image"("id") ON DELETE CASCADE ON UPDATE CASCADE; + +-- AddForeignKey +ALTER TABLE "Url" ADD FOREIGN KEY ("userId") REFERENCES "User"("id") ON DELETE CASCADE ON UPDATE CASCADE; + +-- AddForeignKey +ALTER TABLE "InvisibleUrl" ADD FOREIGN KEY ("id") REFERENCES "Url"("id") ON DELETE CASCADE ON UPDATE CASCADE; diff --git a/prisma/migrations/migration_lock.toml b/prisma/migrations/migration_lock.toml new file mode 100644 index 0000000..fbffa92 --- /dev/null +++ b/prisma/migrations/migration_lock.toml @@ -0,0 +1,3 @@ +# Please do not edit this file manually +# It should be added in your version-control system (i.e. Git) +provider = "postgresql" \ No newline at end of file