/[sudobot]/trunk/drizzle/0000_init.sql
ViewVC logotype

Contents of /trunk/drizzle/0000_init.sql

Parent Directory Parent Directory | Revision Log Revision Log


Revision 575 - (show annotations)
Mon Jul 29 17:59:26 2024 UTC (8 months ago) by rakinar2
File MIME type: application/x-sql
File size: 7872 byte(s)
chore: add trunk
1 DO $$ BEGIN
2 CREATE TYPE "public"."command_permission_overwrite_action" AS ENUM('Allow', 'Deny');
3 EXCEPTION
4 WHEN duplicate_object THEN null;
5 END $$;
6 --> statement-breakpoint
7 DO $$ BEGIN
8 CREATE TYPE "public"."infraction_delivery_status" AS ENUM('Success', 'Failed', 'Fallback', 'NotDelivered');
9 EXCEPTION
10 WHEN duplicate_object THEN null;
11 END $$;
12 --> statement-breakpoint
13 DO $$ BEGIN
14 CREATE TYPE "public"."infraction_type" AS ENUM('Ban', 'Kick', 'Mute', 'Warning', 'MassBan', 'MassKick', 'Unban', 'Unmute', 'BulkDeleteMessage', 'Timeout', 'TimeoutRemove', 'Bean', 'Note', 'Role', 'ModMessage', 'Shot');
15 EXCEPTION
16 WHEN duplicate_object THEN null;
17 END $$;
18 --> statement-breakpoint
19 DO $$ BEGIN
20 CREATE TYPE "public"."permission_logic_mode" AS ENUM('And', 'Or');
21 EXCEPTION
22 WHEN duplicate_object THEN null;
23 END $$;
24 --> statement-breakpoint
25 DO $$ BEGIN
26 CREATE TYPE "public"."verification_method" AS ENUM('discord', 'github', 'google', 'email');
27 EXCEPTION
28 WHEN duplicate_object THEN null;
29 END $$;
30 --> statement-breakpoint
31 CREATE TABLE IF NOT EXISTS "afk_entries" (
32 "id" serial PRIMARY KEY NOT NULL,
33 "reason" varchar,
34 "user_id" varchar NOT NULL,
35 "guild_id" varchar NOT NULL,
36 "mentions" varchar[] DEFAULT '{}' NOT NULL,
37 "mention_count" integer DEFAULT 0 NOT NULL,
38 "global" boolean DEFAULT false NOT NULL,
39 "created_at" timestamp with time zone DEFAULT now() NOT NULL,
40 "updated_at" timestamp with time zone DEFAULT now() NOT NULL
41 );
42 --> statement-breakpoint
43 CREATE TABLE IF NOT EXISTS "channel_locks" (
44 "id" serial PRIMARY KEY NOT NULL,
45 "guild_id" varchar NOT NULL,
46 "channel_id" varchar NOT NULL,
47 "permissions" json NOT NULL,
48 "created_at" timestamp with time zone DEFAULT now(),
49 "updated_at" timestamp with time zone DEFAULT now()
50 );
51 --> statement-breakpoint
52 CREATE TABLE IF NOT EXISTS "command_permission_overwrites" (
53 "id" serial PRIMARY KEY NOT NULL,
54 "guild_id" varchar NOT NULL,
55 "commands" text[] DEFAULT '{}' NOT NULL,
56 "required_discord_permissions" json DEFAULT 'null'::json,
57 "required_system_permissions" json DEFAULT 'null'::json,
58 "required_roles" json DEFAULT 'null'::json,
59 "required_users" json DEFAULT 'null'::json,
60 "required_channels" json DEFAULT 'null'::json,
61 "required_level" integer,
62 "disabled" boolean DEFAULT false,
63 "on_match" "command_permission_overwrite_action" DEFAULT 'Allow' NOT NULL,
64 "created_at" timestamp with time zone DEFAULT now() NOT NULL,
65 "updated_at" timestamp with time zone DEFAULT now() NOT NULL
66 );
67 --> statement-breakpoint
68 CREATE TABLE IF NOT EXISTS "infractions" (
69 "id" serial PRIMARY KEY NOT NULL,
70 "type" "infraction_type" NOT NULL,
71 "user_id" varchar NOT NULL,
72 "moderator_id" varchar NOT NULL,
73 "guild_id" varchar NOT NULL,
74 "reason" varchar,
75 "expires_at" timestamp with time zone,
76 "metadata" json,
77 "delivery_status" "infraction_delivery_status" DEFAULT 'Success' NOT NULL,
78 "queue_id" integer,
79 "created_at" timestamp with time zone DEFAULT now() NOT NULL,
80 "updated_at" timestamp with time zone DEFAULT now() NOT NULL
81 );
82 --> statement-breakpoint
83 CREATE TABLE IF NOT EXISTS "mute_records" (
84 "id" serial PRIMARY KEY NOT NULL,
85 "member_id" varchar NOT NULL,
86 "guild_id" varchar NOT NULL,
87 "roles" varchar[] DEFAULT '{}' NOT NULL,
88 "created_at" timestamp with time zone DEFAULT now(),
89 "updated_at" timestamp with time zone DEFAULT now()
90 );
91 --> statement-breakpoint
92 CREATE TABLE IF NOT EXISTS "permission_levels" (
93 "id" serial PRIMARY KEY NOT NULL,
94 "guild_id" varchar NOT NULL,
95 "level" integer NOT NULL,
96 "disabled" boolean DEFAULT false,
97 "granted_discord_permissions" text[] DEFAULT '{}' NOT NULL,
98 "granted_system_permissions" text[] DEFAULT '{}' NOT NULL,
99 "roles" text[] DEFAULT '{}' NOT NULL,
100 "users" text[] DEFAULT '{}' NOT NULL,
101 "created_at" timestamp with time zone DEFAULT now(),
102 "updated_at" timestamp with time zone DEFAULT now()
103 );
104 --> statement-breakpoint
105 CREATE TABLE IF NOT EXISTS "permission_overwrites" (
106 "id" serial PRIMARY KEY NOT NULL,
107 "name" text,
108 "guild_id" varchar NOT NULL,
109 "roles" text[] DEFAULT '{}' NOT NULL,
110 "users" text[] DEFAULT '{}' NOT NULL,
111 "granted_discord_permissions" text[] DEFAULT '{}' NOT NULL,
112 "granted_system_permissions" text[] DEFAULT '{}' NOT NULL,
113 "priority" integer DEFAULT 0 NOT NULL,
114 "merge" boolean DEFAULT true NOT NULL,
115 "disabled" boolean DEFAULT false NOT NULL,
116 "created_at" timestamp with time zone DEFAULT now(),
117 "updated_at" timestamp with time zone DEFAULT now()
118 );
119 --> statement-breakpoint
120 CREATE TABLE IF NOT EXISTS "queues" (
121 "id" serial PRIMARY KEY NOT NULL,
122 "user_id" varchar NOT NULL,
123 "guild_id" varchar NOT NULL,
124 "channel_id" varchar,
125 "message_id" varchar,
126 "name" varchar NOT NULL,
127 "repeat" boolean DEFAULT false,
128 "data" json DEFAULT '{}'::json,
129 "created_at" timestamp with time zone DEFAULT now(),
130 "updated_at" timestamp with time zone DEFAULT now(),
131 "runs_at" timestamp with time zone
132 );
133 --> statement-breakpoint
134 CREATE TABLE IF NOT EXISTS "reaction_roles" (
135 "id" serial PRIMARY KEY NOT NULL,
136 "emoji" varchar,
137 "is_built_in_emoji" boolean DEFAULT false NOT NULL,
138 "guild_id" varchar NOT NULL,
139 "channel_id" varchar NOT NULL,
140 "message_id" varchar NOT NULL,
141 "roles" varchar[] DEFAULT '{}' NOT NULL,
142 "required_roles" varchar[] DEFAULT '{}' NOT NULL,
143 "blacklisted_users" varchar[] DEFAULT '{}' NOT NULL,
144 "required_permissions" varchar[] DEFAULT '{}' NOT NULL,
145 "level" integer,
146 "single" boolean DEFAULT false NOT NULL,
147 "created_at" timestamp with time zone DEFAULT now() NOT NULL,
148 "updated_at" timestamp with time zone DEFAULT now() NOT NULL
149 );
150 --> statement-breakpoint
151 CREATE TABLE IF NOT EXISTS "snippets" (
152 "id" serial PRIMARY KEY NOT NULL,
153 "name" varchar,
154 "user_id" varchar NOT NULL,
155 "guild_id" varchar NOT NULL,
156 "aliases" varchar[] DEFAULT '{}' NOT NULL,
157 "roles" varchar[] DEFAULT '{}' NOT NULL,
158 "channels" varchar[] DEFAULT '{}' NOT NULL,
159 "users" varchar[] DEFAULT '{}' NOT NULL,
160 "attachments" varchar[] DEFAULT ARRAY[]::varchar[] NOT NULL,
161 "content" varchar[] DEFAULT ARRAY[]::varchar[] NOT NULL,
162 "randomize" boolean DEFAULT false NOT NULL,
163 "permissions" varchar[] DEFAULT ARRAY[]::varchar[] NOT NULL,
164 "permission_mode" "permission_logic_mode" DEFAULT 'And' NOT NULL,
165 "level" integer,
166 "created_at" timestamp with time zone DEFAULT now() NOT NULL,
167 "updated_at" timestamp with time zone DEFAULT now() NOT NULL
168 );
169 --> statement-breakpoint
170 CREATE TABLE IF NOT EXISTS "users" (
171 "id" serial PRIMARY KEY NOT NULL,
172 "name" varchar,
173 "username" varchar NOT NULL,
174 "discord_id" varchar NOT NULL,
175 "github_id" varchar,
176 "guilds" varchar[] DEFAULT '{}' NOT NULL,
177 "password" varchar NOT NULL,
178 "token" varchar,
179 "recovery_token" varchar,
180 "recovery_code" varchar,
181 "recovery_attempts" integer DEFAULT 0 NOT NULL,
182 "recovery_token_expires_at" timestamp with time zone,
183 "created_at" timestamp with time zone DEFAULT now() NOT NULL,
184 "token_expires_at" timestamp with time zone,
185 "updated_at" timestamp with time zone DEFAULT now() NOT NULL
186 );
187 --> statement-breakpoint
188 CREATE TABLE IF NOT EXISTS "verification_entries" (
189 "id" serial PRIMARY KEY NOT NULL,
190 "user_id" varchar NOT NULL,
191 "guild_id" varchar NOT NULL,
192 "code" varchar NOT NULL,
193 "attempts" integer DEFAULT 0 NOT NULL,
194 "metadata" json DEFAULT '{}'::json NOT NULL,
195 "expires_at" timestamp with time zone NOT NULL,
196 "created_at" timestamp with time zone DEFAULT now() NOT NULL,
197 "updated_at" timestamp with time zone DEFAULT now() NOT NULL,
198 CONSTRAINT "verification_entries_code_unique" UNIQUE("code")
199 );
200 --> statement-breakpoint
201 CREATE TABLE IF NOT EXISTS "verification_records" (
202 "id" serial PRIMARY KEY NOT NULL,
203 "guild_id" varchar NOT NULL,
204 "user_id" varchar NOT NULL,
205 "discord_id" varchar,
206 "github_id" varchar,
207 "google_id" varchar,
208 "email" varchar,
209 "method" "verification_method" NOT NULL,
210 "created_at" timestamp with time zone DEFAULT now() NOT NULL,
211 "updated_at" timestamp with time zone DEFAULT now() NOT NULL
212 );

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26