Elimino los embedBuilder y los cambio por Components Message V2, algo tardado.
This commit is contained in:
BIN
prisma/dev.db
BIN
prisma/dev.db
Binary file not shown.
@@ -1,62 +0,0 @@
|
||||
-- CreateTable
|
||||
CREATE TABLE "Guild" (
|
||||
"id" TEXT NOT NULL PRIMARY KEY,
|
||||
"name" TEXT NOT NULL
|
||||
);
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE "User" (
|
||||
"id" TEXT NOT NULL PRIMARY KEY
|
||||
);
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE "PartnershipStats" (
|
||||
"totalPoints" INTEGER NOT NULL DEFAULT 0,
|
||||
"weeklyPoints" INTEGER NOT NULL DEFAULT 0,
|
||||
"monthlyPoints" INTEGER NOT NULL DEFAULT 0,
|
||||
"lastWeeklyReset" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
"lastMonthlyReset" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
"userId" TEXT NOT NULL,
|
||||
"guildId" TEXT NOT NULL,
|
||||
|
||||
PRIMARY KEY ("userId", "guildId"),
|
||||
CONSTRAINT "PartnershipStats_userId_fkey" FOREIGN KEY ("userId") REFERENCES "User" ("id") ON DELETE RESTRICT ON UPDATE CASCADE,
|
||||
CONSTRAINT "PartnershipStats_guildId_fkey" FOREIGN KEY ("guildId") REFERENCES "Guild" ("id") ON DELETE RESTRICT ON UPDATE CASCADE
|
||||
);
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE "Alliance" (
|
||||
"id" TEXT NOT NULL PRIMARY KEY,
|
||||
"channelId" TEXT NOT NULL,
|
||||
"messageId" TEXT NOT NULL,
|
||||
"createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
"guildId" TEXT NOT NULL,
|
||||
"creatorId" TEXT NOT NULL,
|
||||
CONSTRAINT "Alliance_guildId_fkey" FOREIGN KEY ("guildId") REFERENCES "Guild" ("id") ON DELETE RESTRICT ON UPDATE CASCADE,
|
||||
CONSTRAINT "Alliance_creatorId_fkey" FOREIGN KEY ("creatorId") REFERENCES "User" ("id") ON DELETE RESTRICT ON UPDATE CASCADE
|
||||
);
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE "EmbedConfig" (
|
||||
"id" TEXT NOT NULL PRIMARY KEY,
|
||||
"color" TEXT,
|
||||
"title" TEXT,
|
||||
"url" TEXT,
|
||||
"authorName" TEXT,
|
||||
"authorIconURL" TEXT,
|
||||
"authorURL" TEXT,
|
||||
"description" TEXT,
|
||||
"thumbnailURL" TEXT,
|
||||
"imageURL" TEXT,
|
||||
"footerText" TEXT,
|
||||
"footerIconURL" TEXT,
|
||||
"fields" TEXT DEFAULT '[]',
|
||||
"guildId" TEXT NOT NULL,
|
||||
CONSTRAINT "EmbedConfig_guildId_fkey" FOREIGN KEY ("guildId") REFERENCES "Guild" ("id") ON DELETE RESTRICT ON UPDATE CASCADE
|
||||
);
|
||||
|
||||
-- CreateIndex
|
||||
CREATE UNIQUE INDEX "Alliance_messageId_key" ON "Alliance"("messageId");
|
||||
|
||||
-- CreateIndex
|
||||
CREATE UNIQUE INDEX "EmbedConfig_guildId_key" ON "EmbedConfig"("guildId");
|
||||
@@ -1,33 +0,0 @@
|
||||
/*
|
||||
Warnings:
|
||||
|
||||
- Added the required column `name` to the `EmbedConfig` table without a default value. This is not possible if the table is not empty.
|
||||
|
||||
*/
|
||||
-- RedefineTables
|
||||
PRAGMA defer_foreign_keys=ON;
|
||||
PRAGMA foreign_keys=OFF;
|
||||
CREATE TABLE "new_EmbedConfig" (
|
||||
"id" TEXT NOT NULL PRIMARY KEY,
|
||||
"name" TEXT NOT NULL,
|
||||
"color" TEXT,
|
||||
"title" TEXT,
|
||||
"url" TEXT,
|
||||
"authorName" TEXT,
|
||||
"authorIconURL" TEXT,
|
||||
"authorURL" TEXT,
|
||||
"description" TEXT,
|
||||
"thumbnailURL" TEXT,
|
||||
"imageURL" TEXT,
|
||||
"footerText" TEXT,
|
||||
"footerIconURL" TEXT,
|
||||
"fields" TEXT DEFAULT '[]',
|
||||
"guildId" TEXT NOT NULL,
|
||||
CONSTRAINT "EmbedConfig_guildId_fkey" FOREIGN KEY ("guildId") REFERENCES "Guild" ("id") ON DELETE RESTRICT ON UPDATE CASCADE
|
||||
);
|
||||
INSERT INTO "new_EmbedConfig" ("authorIconURL", "authorName", "authorURL", "color", "description", "fields", "footerIconURL", "footerText", "guildId", "id", "imageURL", "thumbnailURL", "title", "url") SELECT "authorIconURL", "authorName", "authorURL", "color", "description", "fields", "footerIconURL", "footerText", "guildId", "id", "imageURL", "thumbnailURL", "title", "url" FROM "EmbedConfig";
|
||||
DROP TABLE "EmbedConfig";
|
||||
ALTER TABLE "new_EmbedConfig" RENAME TO "EmbedConfig";
|
||||
CREATE UNIQUE INDEX "EmbedConfig_guildId_name_key" ON "EmbedConfig"("guildId", "name");
|
||||
PRAGMA foreign_keys=ON;
|
||||
PRAGMA defer_foreign_keys=OFF;
|
||||
@@ -1,13 +0,0 @@
|
||||
-- RedefineTables
|
||||
PRAGMA defer_foreign_keys=ON;
|
||||
PRAGMA foreign_keys=OFF;
|
||||
CREATE TABLE "new_Guild" (
|
||||
"id" TEXT NOT NULL PRIMARY KEY,
|
||||
"name" TEXT NOT NULL,
|
||||
"prefix" TEXT NOT NULL DEFAULT '!'
|
||||
);
|
||||
INSERT INTO "new_Guild" ("id", "name") SELECT "id", "name" FROM "Guild";
|
||||
DROP TABLE "Guild";
|
||||
ALTER TABLE "new_Guild" RENAME TO "Guild";
|
||||
PRAGMA foreign_keys=ON;
|
||||
PRAGMA defer_foreign_keys=OFF;
|
||||
@@ -1,3 +0,0 @@
|
||||
# Please do not edit this file manually
|
||||
# It should be added in your version-control system (e.g., Git)
|
||||
provider = "sqlite"
|
||||
@@ -29,6 +29,7 @@ model Guild {
|
||||
|
||||
// ✅ CAMBIO: Ahora un Guild puede tener MÚLTIPLES configuraciones de embed.
|
||||
embedConfigs EmbedConfig[]
|
||||
BlockV2Config BlockV2Config[]
|
||||
}
|
||||
/*
|
||||
* -----------------------------------------------------------------------------
|
||||
@@ -130,4 +131,27 @@ model EmbedConfig {
|
||||
// ✅ NUEVO: Asegura que el 'name' sea único por cada servidor.
|
||||
// No puedes tener dos embeds llamados "alianza" en el mismo servidor.
|
||||
@@unique([guildId, name])
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* -----------------------------------------------------------------------------
|
||||
* Modelo para la Configuración de Bloques V2
|
||||
* -----------------------------------------------------------------------------
|
||||
*/
|
||||
model BlockV2Config {
|
||||
id String @id @default(cuid())
|
||||
|
||||
// ✅ Nombre único dentro de cada servidor
|
||||
name String
|
||||
|
||||
// Configuración en JSON (embed + componentes, botones, etc.)
|
||||
config Json
|
||||
|
||||
|
||||
// Relación con el servidor
|
||||
guild Guild @relation(fields: [guildId], references: [id])
|
||||
guildId String
|
||||
|
||||
// 🔒 Asegura que un nombre no se repita dentro del mismo servidor
|
||||
@@unique([guildId, name])
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user