Skip to content

Commit 32f4706

Browse files
committed
DB schema for Spark
1 parent f9a99e4 commit 32f4706

File tree

2 files changed

+90
-0
lines changed

2 files changed

+90
-0
lines changed
Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
-- AlterEnum
2+
ALTER TYPE "WalletName" ADD VALUE 'SPARK'; COMMIT;
3+
4+
-- AlterEnum
5+
ALTER TYPE "WalletProtocolName" ADD VALUE 'SPARK'; COMMIT;
6+
7+
-- AlterEnum
8+
ALTER TYPE "WalletRecvProtocolName" ADD VALUE 'SPARK'; COMMIT;
9+
10+
-- AlterEnum
11+
ALTER TYPE "WalletSendProtocolName" ADD VALUE 'SPARK'; COMMIT;
12+
13+
INSERT INTO "WalletTemplate" ("name", "sendProtocols", "recvProtocols")
14+
VALUES ('SPARK', '{SPARK}', '{SPARK}');
15+
16+
-- CreateTable
17+
CREATE TABLE "WalletSendSpark" (
18+
"id" SERIAL NOT NULL,
19+
"created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
20+
"updated_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
21+
"protocolId" INTEGER NOT NULL,
22+
"mnemonicVaultId" INTEGER NOT NULL,
23+
24+
CONSTRAINT "WalletSendSpark_pkey" PRIMARY KEY ("id")
25+
);
26+
27+
-- CreateTable
28+
CREATE TABLE "WalletRecvSpark" (
29+
"id" SERIAL NOT NULL,
30+
"created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
31+
"updated_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
32+
"protocolId" INTEGER NOT NULL,
33+
"address" TEXT NOT NULL,
34+
35+
CONSTRAINT "WalletRecvSpark_pkey" PRIMARY KEY ("id")
36+
);
37+
38+
-- CreateIndex
39+
CREATE UNIQUE INDEX "WalletSendSpark_protocolId_key" ON "WalletSendSpark"("protocolId");
40+
41+
-- CreateIndex
42+
CREATE UNIQUE INDEX "WalletSendSpark_mnemonicVaultId_key" ON "WalletSendSpark"("mnemonicVaultId");
43+
44+
-- CreateIndex
45+
CREATE UNIQUE INDEX "WalletRecvSpark_protocolId_key" ON "WalletRecvSpark"("protocolId");
46+
47+
-- AddForeignKey
48+
ALTER TABLE "WalletSendSpark" ADD CONSTRAINT "WalletSendSpark_protocolId_fkey" FOREIGN KEY ("protocolId") REFERENCES "WalletProtocol"("id") ON DELETE CASCADE ON UPDATE CASCADE;
49+
50+
-- AddForeignKey
51+
ALTER TABLE "WalletSendSpark" ADD CONSTRAINT "WalletSendSpark_mnemonicVaultId_fkey" FOREIGN KEY ("mnemonicVaultId") REFERENCES "Vault"("id") ON DELETE RESTRICT ON UPDATE CASCADE;
52+
53+
-- AddForeignKey
54+
ALTER TABLE "WalletRecvSpark" ADD CONSTRAINT "WalletRecvSpark_protocolId_fkey" FOREIGN KEY ("protocolId") REFERENCES "WalletProtocol"("id") ON DELETE CASCADE ON UPDATE CASCADE;
55+
56+
CREATE TRIGGER wallet_to_jsonb
57+
AFTER INSERT OR UPDATE ON "WalletSendSpark"
58+
FOR EACH ROW
59+
EXECUTE PROCEDURE wallet_to_jsonb();
60+
61+
CREATE TRIGGER wallet_clear_vault
62+
AFTER DELETE ON "WalletSendSpark"
63+
FOR EACH ROW
64+
EXECUTE PROCEDURE wallet_clear_vault();

prisma/schema.prisma

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -221,6 +221,7 @@ model Vault {
221221
walletSendLNCRemoteKey WalletSendLNC? @relation("lncRemoteKey")
222222
walletSendLNCServerHost WalletSendLNC? @relation("lncServerHost")
223223
walletSendCLNRestRune WalletSendCLNRest? @relation("clnRune")
224+
walletSendSparkMnemonic WalletSendSpark? @relation("sparkMnemonic")
224225
}
225226

226227
model WalletLog {
@@ -1214,6 +1215,7 @@ enum WalletProtocolName {
12141215
CLN_REST
12151216
LND_GRPC
12161217
CLINK
1218+
SPARK
12171219
}
12181220

12191221
enum WalletSendProtocolName {
@@ -1224,6 +1226,7 @@ enum WalletSendProtocolName {
12241226
WEBLN
12251227
LNC
12261228
CLN_REST
1229+
SPARK
12271230
}
12281231

12291232
enum WalletRecvProtocolName {
@@ -1235,6 +1238,7 @@ enum WalletRecvProtocolName {
12351238
CLN_REST
12361239
LND_GRPC
12371240
CLINK
1241+
SPARK
12381242
}
12391243

12401244
enum WalletProtocolStatus {
@@ -1270,6 +1274,7 @@ enum WalletName {
12701274
LN_ADDR
12711275
CASH_APP
12721276
BLITZ
1277+
SPARK
12731278
}
12741279

12751280
model WalletTemplate {
@@ -1327,6 +1332,7 @@ model WalletProtocol {
13271332
walletSendWebLN WalletSendWebLN?
13281333
walletSendLNC WalletSendLNC?
13291334
walletSendCLNRest WalletSendCLNRest?
1335+
walletSendSpark WalletSendSpark?
13301336
13311337
walletRecvNWC WalletRecvNWC?
13321338
walletRecvLNbits WalletRecvLNbits?
@@ -1336,6 +1342,7 @@ model WalletProtocol {
13361342
walletRecvCLNRest WalletRecvCLNRest?
13371343
walletRecvLNDGRPC WalletRecvLNDGRPC?
13381344
walletRecvClink WalletRecvClink?
1345+
walletRecvSpark WalletRecvSpark?
13391346
13401347
@@unique(name: "WalletProtocol_walletId_send_name_key", [walletId, send, name])
13411348
@@index([walletId])
@@ -1420,6 +1427,16 @@ model WalletSendCLNRest {
14201427
rune Vault? @relation("clnRune", fields: [runeVaultId], references: [id])
14211428
}
14221429

1430+
model WalletSendSpark {
1431+
id Int @id @default(autoincrement())
1432+
createdAt DateTime @default(now()) @map("created_at")
1433+
updatedAt DateTime @default(now()) @updatedAt @map("updated_at")
1434+
protocolId Int @unique
1435+
protocol WalletProtocol @relation(fields: [protocolId], references: [id], onDelete: Cascade)
1436+
mnemonicVaultId Int @unique
1437+
mnemonic Vault? @relation("sparkMnemonic", fields: [mnemonicVaultId], references: [id])
1438+
}
1439+
14231440
model WalletRecvNWC {
14241441
id Int @id @default(autoincrement())
14251442
createdAt DateTime @default(now()) @map("created_at")
@@ -1498,3 +1515,12 @@ model WalletRecvClink {
14981515
protocol WalletProtocol @relation(fields: [protocolId], references: [id], onDelete: Cascade)
14991516
noffer String
15001517
}
1518+
1519+
model WalletRecvSpark {
1520+
id Int @id @default(autoincrement())
1521+
createdAt DateTime @default(now()) @map("created_at")
1522+
updatedAt DateTime @default(now()) @updatedAt @map("updated_at")
1523+
protocolId Int @unique
1524+
protocol WalletProtocol @relation(fields: [protocolId], references: [id], onDelete: Cascade)
1525+
address String
1526+
}

0 commit comments

Comments
 (0)