Skip to content

Commit b7699bb

Browse files
feat: better tg_groups table, verifyTgLink fn, some fixings
1 parent 03ca5c0 commit b7699bb

16 files changed

+528
-1695
lines changed

backend/drizzle/0000_illegal_anita_blake.sql renamed to backend/drizzle/0000_abandoned_stephen_strange.sql

Lines changed: 38 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,8 @@ CREATE TABLE "auth_users" (
3232
"email" text NOT NULL,
3333
"email_verified" boolean NOT NULL,
3434
"image" text,
35+
"tg_id" bigint,
36+
"tg_username" text,
3537
"created_at" timestamp NOT NULL,
3638
"updated_at" timestamp NOT NULL,
3739
CONSTRAINT "auth_users_email_unique" UNIQUE("email")
@@ -46,14 +48,45 @@ CREATE TABLE "auth_verifications" (
4648
"updated_at" timestamp
4749
);
4850
--> statement-breakpoint
51+
CREATE TABLE "tg_audit_log" (
52+
"id" integer PRIMARY KEY GENERATED ALWAYS AS IDENTITY (sequence name "tg_audit_log_id_seq" INCREMENT BY 1 MINVALUE 1 MAXVALUE 2147483647 START WITH 1 CACHE 1),
53+
"admin_id" bigint NOT NULL,
54+
"target_id" bigint NOT NULL,
55+
"group_id" bigint,
56+
"type" varchar(32) NOT NULL,
57+
"until" timestamp (0),
58+
"reason" varchar(256),
59+
"updated_at" timestamp (3),
60+
"created_at" timestamp (3) DEFAULT now() NOT NULL
61+
);
62+
--> statement-breakpoint
4963
CREATE TABLE "tg_groups" (
50-
"id" integer PRIMARY KEY GENERATED ALWAYS AS IDENTITY (sequence name "tg_groups_id_seq" INCREMENT BY 1 MINVALUE 1 MAXVALUE 2147483647 START WITH 1 CACHE 1),
51-
"telegram_id" bigint NOT NULL,
64+
"telegram_id" bigint PRIMARY KEY NOT NULL,
5265
"title" varchar NOT NULL,
5366
"link" varchar(128),
5467
"updated_at" timestamp (3),
68+
"created_at" timestamp (3) DEFAULT now() NOT NULL
69+
);
70+
--> statement-breakpoint
71+
CREATE TABLE "tg_link" (
72+
"code" text PRIMARY KEY NOT NULL,
73+
"ttl" integer NOT NULL,
74+
"user_id" text NOT NULL,
75+
"tg_username" text NOT NULL,
76+
"tg_id" bigint,
77+
"updated_at" timestamp (3),
78+
"created_at" timestamp (3) DEFAULT now() NOT NULL,
79+
CONSTRAINT "tg_link_tg_id_unique" UNIQUE("tg_id")
80+
);
81+
--> statement-breakpoint
82+
CREATE TABLE "tg_messages" (
83+
"chat_id" bigint NOT NULL,
84+
"message_id" bigint NOT NULL,
85+
"author_id" bigint NOT NULL,
86+
"timestamp" timestamp NOT NULL,
87+
"message" varchar(8704) NOT NULL,
5588
"created_at" timestamp (3) DEFAULT now() NOT NULL,
56-
CONSTRAINT "tg_groups_telegram_id_unique" UNIQUE("telegram_id")
89+
CONSTRAINT "tg_messages_chat_id_message_id_pk" PRIMARY KEY("chat_id","message_id")
5790
);
5891
--> statement-breakpoint
5992
CREATE TABLE "tg_group_admins" (
@@ -86,5 +119,6 @@ CREATE TABLE "web_test" (
86119
--> statement-breakpoint
87120
ALTER TABLE "auth_accounts" ADD CONSTRAINT "auth_accounts_user_id_auth_users_id_fk" FOREIGN KEY ("user_id") REFERENCES "public"."auth_users"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
88121
ALTER TABLE "auth_sessions" ADD CONSTRAINT "auth_sessions_user_id_auth_users_id_fk" FOREIGN KEY ("user_id") REFERENCES "public"."auth_users"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
89-
CREATE INDEX "telegram_id_idx" ON "tg_groups" USING btree ("telegram_id");--> statement-breakpoint
122+
ALTER TABLE "tg_link" ADD CONSTRAINT "tg_link_user_id_auth_users_id_fk" FOREIGN KEY ("user_id") REFERENCES "public"."auth_users"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
123+
CREATE INDEX "auditlog_adminid_idx" ON "tg_audit_log" USING btree ("admin_id");--> statement-breakpoint
90124
CREATE INDEX "user_id_idx" ON "tg_group_admins" USING btree ("user_id");

backend/drizzle/0001_empty_menace.sql

Lines changed: 0 additions & 14 deletions
This file was deleted.
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
ALTER TABLE "tg_audit_log" ALTER COLUMN "updated_at" SET DATA TYPE timestamp (0);--> statement-breakpoint
2+
ALTER TABLE "tg_audit_log" ALTER COLUMN "created_at" SET DATA TYPE timestamp (0);--> statement-breakpoint
3+
ALTER TABLE "tg_groups" ALTER COLUMN "updated_at" SET DATA TYPE timestamp (0);--> statement-breakpoint
4+
ALTER TABLE "tg_groups" ALTER COLUMN "created_at" SET DATA TYPE timestamp (0);--> statement-breakpoint
5+
ALTER TABLE "tg_link" ALTER COLUMN "updated_at" SET DATA TYPE timestamp (0);--> statement-breakpoint
6+
ALTER TABLE "tg_link" ALTER COLUMN "created_at" SET DATA TYPE timestamp (0);--> statement-breakpoint
7+
ALTER TABLE "tg_messages" ALTER COLUMN "created_at" SET DATA TYPE timestamp (0);--> statement-breakpoint
8+
ALTER TABLE "tg_group_admins" ALTER COLUMN "updated_at" SET DATA TYPE timestamp (0);--> statement-breakpoint
9+
ALTER TABLE "tg_group_admins" ALTER COLUMN "created_at" SET DATA TYPE timestamp (0);--> statement-breakpoint
10+
ALTER TABLE "tg_permissions" ALTER COLUMN "updated_at" SET DATA TYPE timestamp (0);--> statement-breakpoint
11+
ALTER TABLE "tg_permissions" ALTER COLUMN "created_at" SET DATA TYPE timestamp (0);

backend/drizzle/0002_chilly_molly_hayes.sql

Lines changed: 0 additions & 9 deletions
This file was deleted.

backend/drizzle/0003_simple_mephistopheles.sql

Lines changed: 0 additions & 13 deletions
This file was deleted.

0 commit comments

Comments
 (0)