@spfn/auth 0.1.0-alpha.88 → 0.2.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1385 -1199
- package/dist/config.d.ts +405 -0
- package/dist/config.js +240 -0
- package/dist/config.js.map +1 -0
- package/dist/dto-81uR9gzF.d.ts +630 -0
- package/dist/errors.d.ts +196 -0
- package/dist/errors.js +173 -0
- package/dist/errors.js.map +1 -0
- package/dist/index.d.ts +273 -14
- package/dist/index.js +511 -6665
- package/dist/index.js.map +1 -1
- package/dist/nextjs/api.js +345 -0
- package/dist/nextjs/api.js.map +1 -0
- package/dist/{adapters/nextjs → nextjs}/server.d.ts +47 -65
- package/dist/nextjs/server.js +179 -0
- package/dist/nextjs/server.js.map +1 -0
- package/dist/server.d.ts +4328 -529
- package/dist/server.js +7841 -1247
- package/dist/server.js.map +1 -1
- package/migrations/{0000_skinny_christian_walker.sql → 0000_mysterious_colossus.sql} +53 -23
- package/migrations/meta/0000_snapshot.json +281 -46
- package/migrations/meta/_journal.json +2 -2
- package/package.json +31 -31
- package/dist/adapters/nextjs/api.d.ts +0 -446
- package/dist/adapters/nextjs/api.js +0 -3279
- package/dist/adapters/nextjs/api.js.map +0 -1
- package/dist/adapters/nextjs/server.js +0 -3645
- package/dist/adapters/nextjs/server.js.map +0 -1
- package/dist/lib/api/auth-codes-verify.d.ts +0 -37
- package/dist/lib/api/auth-codes-verify.js +0 -2949
- package/dist/lib/api/auth-codes-verify.js.map +0 -1
- package/dist/lib/api/auth-codes.d.ts +0 -37
- package/dist/lib/api/auth-codes.js +0 -2949
- package/dist/lib/api/auth-codes.js.map +0 -1
- package/dist/lib/api/auth-exists.d.ts +0 -38
- package/dist/lib/api/auth-exists.js +0 -2949
- package/dist/lib/api/auth-exists.js.map +0 -1
- package/dist/lib/api/auth-invitations-accept.d.ts +0 -38
- package/dist/lib/api/auth-invitations-accept.js +0 -2883
- package/dist/lib/api/auth-invitations-accept.js.map +0 -1
- package/dist/lib/api/auth-invitations-cancel.d.ts +0 -37
- package/dist/lib/api/auth-invitations-cancel.js +0 -2883
- package/dist/lib/api/auth-invitations-cancel.js.map +0 -1
- package/dist/lib/api/auth-invitations-delete.d.ts +0 -36
- package/dist/lib/api/auth-invitations-delete.js +0 -2883
- package/dist/lib/api/auth-invitations-delete.js.map +0 -1
- package/dist/lib/api/auth-invitations-resend.d.ts +0 -37
- package/dist/lib/api/auth-invitations-resend.js +0 -2883
- package/dist/lib/api/auth-invitations-resend.js.map +0 -1
- package/dist/lib/api/auth-invitations.d.ts +0 -109
- package/dist/lib/api/auth-invitations.js +0 -2887
- package/dist/lib/api/auth-invitations.js.map +0 -1
- package/dist/lib/api/auth-keys-rotate.d.ts +0 -37
- package/dist/lib/api/auth-keys-rotate.js +0 -2949
- package/dist/lib/api/auth-keys-rotate.js.map +0 -1
- package/dist/lib/api/auth-login.d.ts +0 -39
- package/dist/lib/api/auth-login.js +0 -2949
- package/dist/lib/api/auth-login.js.map +0 -1
- package/dist/lib/api/auth-logout.d.ts +0 -36
- package/dist/lib/api/auth-logout.js +0 -2949
- package/dist/lib/api/auth-logout.js.map +0 -1
- package/dist/lib/api/auth-me.d.ts +0 -50
- package/dist/lib/api/auth-me.js +0 -2949
- package/dist/lib/api/auth-me.js.map +0 -1
- package/dist/lib/api/auth-password.d.ts +0 -36
- package/dist/lib/api/auth-password.js +0 -2949
- package/dist/lib/api/auth-password.js.map +0 -1
- package/dist/lib/api/auth-register.d.ts +0 -38
- package/dist/lib/api/auth-register.js +0 -2949
- package/dist/lib/api/auth-register.js.map +0 -1
- package/dist/lib/api/index.d.ts +0 -356
- package/dist/lib/api/index.js +0 -3261
- package/dist/lib/api/index.js.map +0 -1
- package/dist/lib/config.d.ts +0 -70
- package/dist/lib/config.js +0 -64
- package/dist/lib/config.js.map +0 -1
- package/dist/lib/contracts/auth.d.ts +0 -302
- package/dist/lib/contracts/auth.js +0 -2951
- package/dist/lib/contracts/auth.js.map +0 -1
- package/dist/lib/contracts/index.d.ts +0 -3
- package/dist/lib/contracts/index.js +0 -3190
- package/dist/lib/contracts/index.js.map +0 -1
- package/dist/lib/contracts/invitation.d.ts +0 -243
- package/dist/lib/contracts/invitation.js +0 -2883
- package/dist/lib/contracts/invitation.js.map +0 -1
- package/dist/lib/crypto.d.ts +0 -76
- package/dist/lib/crypto.js +0 -127
- package/dist/lib/crypto.js.map +0 -1
- package/dist/lib/index.d.ts +0 -4
- package/dist/lib/index.js +0 -313
- package/dist/lib/index.js.map +0 -1
- package/dist/lib/session.d.ts +0 -68
- package/dist/lib/session.js +0 -126
- package/dist/lib/session.js.map +0 -1
- package/dist/lib/types/api.d.ts +0 -45
- package/dist/lib/types/api.js +0 -1
- package/dist/lib/types/api.js.map +0 -1
- package/dist/lib/types/index.d.ts +0 -3
- package/dist/lib/types/index.js +0 -2647
- package/dist/lib/types/index.js.map +0 -1
- package/dist/lib/types/schemas.d.ts +0 -45
- package/dist/lib/types/schemas.js +0 -2647
- package/dist/lib/types/schemas.js.map +0 -1
- package/dist/lib.js +0 -1
- package/dist/lib.js.map +0 -1
- package/dist/plugin.d.ts +0 -12
- package/dist/plugin.js +0 -9083
- package/dist/plugin.js.map +0 -1
- package/dist/server/entities/index.d.ts +0 -11
- package/dist/server/entities/index.js +0 -395
- package/dist/server/entities/index.js.map +0 -1
- package/dist/server/entities/invitations.d.ts +0 -241
- package/dist/server/entities/invitations.js +0 -184
- package/dist/server/entities/invitations.js.map +0 -1
- package/dist/server/entities/permissions.d.ts +0 -196
- package/dist/server/entities/permissions.js +0 -49
- package/dist/server/entities/permissions.js.map +0 -1
- package/dist/server/entities/role-permissions.d.ts +0 -107
- package/dist/server/entities/role-permissions.js +0 -115
- package/dist/server/entities/role-permissions.js.map +0 -1
- package/dist/server/entities/roles.d.ts +0 -196
- package/dist/server/entities/roles.js +0 -50
- package/dist/server/entities/roles.js.map +0 -1
- package/dist/server/entities/schema.d.ts +0 -14
- package/dist/server/entities/schema.js +0 -7
- package/dist/server/entities/schema.js.map +0 -1
- package/dist/server/entities/user-permissions.d.ts +0 -163
- package/dist/server/entities/user-permissions.js +0 -193
- package/dist/server/entities/user-permissions.js.map +0 -1
- package/dist/server/entities/user-public-keys.d.ts +0 -227
- package/dist/server/entities/user-public-keys.js +0 -156
- package/dist/server/entities/user-public-keys.js.map +0 -1
- package/dist/server/entities/user-social-accounts.d.ts +0 -189
- package/dist/server/entities/user-social-accounts.js +0 -149
- package/dist/server/entities/user-social-accounts.js.map +0 -1
- package/dist/server/entities/users.d.ts +0 -235
- package/dist/server/entities/users.js +0 -117
- package/dist/server/entities/users.js.map +0 -1
- package/dist/server/entities/verification-codes.d.ts +0 -191
- package/dist/server/entities/verification-codes.js +0 -49
- package/dist/server/entities/verification-codes.js.map +0 -1
- package/dist/server/routes/auth/index.d.ts +0 -10
- package/dist/server/routes/auth/index.js +0 -4460
- package/dist/server/routes/auth/index.js.map +0 -1
- package/dist/server/routes/index.d.ts +0 -6
- package/dist/server/routes/index.js +0 -6584
- package/dist/server/routes/index.js.map +0 -1
- package/dist/server/routes/invitations/index.d.ts +0 -10
- package/dist/server/routes/invitations/index.js +0 -4395
- package/dist/server/routes/invitations/index.js.map +0 -1
- /package/dist/{lib.d.ts → nextjs/api.d.ts} +0 -0
|
@@ -6,7 +6,7 @@ CREATE TABLE "spfn_auth"."users" (
|
|
|
6
6
|
"phone" text,
|
|
7
7
|
"password_hash" text,
|
|
8
8
|
"password_change_required" boolean DEFAULT false NOT NULL,
|
|
9
|
-
"role_id"
|
|
9
|
+
"role_id" bigserial NOT NULL,
|
|
10
10
|
"status" text DEFAULT 'active' NOT NULL,
|
|
11
11
|
"email_verified_at" timestamp with time zone,
|
|
12
12
|
"phone_verified_at" timestamp with time zone,
|
|
@@ -18,17 +18,26 @@ CREATE TABLE "spfn_auth"."users" (
|
|
|
18
18
|
CONSTRAINT "email_or_phone_check" CHECK ("spfn_auth"."users"."email" IS NOT NULL OR "spfn_auth"."users"."phone" IS NOT NULL)
|
|
19
19
|
);
|
|
20
20
|
--> statement-breakpoint
|
|
21
|
-
CREATE TABLE "spfn_auth"."
|
|
21
|
+
CREATE TABLE "spfn_auth"."user_profiles" (
|
|
22
22
|
"id" bigserial PRIMARY KEY NOT NULL,
|
|
23
23
|
"user_id" bigserial NOT NULL,
|
|
24
|
-
"
|
|
25
|
-
"
|
|
26
|
-
"
|
|
27
|
-
"
|
|
28
|
-
"
|
|
29
|
-
"
|
|
24
|
+
"display_name" text NOT NULL,
|
|
25
|
+
"first_name" text,
|
|
26
|
+
"last_name" text,
|
|
27
|
+
"avatar_url" text,
|
|
28
|
+
"bio" text,
|
|
29
|
+
"locale" text DEFAULT 'en',
|
|
30
|
+
"timezone" text DEFAULT 'UTC',
|
|
31
|
+
"date_of_birth" text,
|
|
32
|
+
"gender" text,
|
|
33
|
+
"website" text,
|
|
34
|
+
"location" text,
|
|
35
|
+
"company" text,
|
|
36
|
+
"job_title" text,
|
|
37
|
+
"metadata" jsonb,
|
|
30
38
|
"created_at" timestamp with time zone DEFAULT now() NOT NULL,
|
|
31
|
-
"updated_at" timestamp with time zone DEFAULT now() NOT NULL
|
|
39
|
+
"updated_at" timestamp with time zone DEFAULT now() NOT NULL,
|
|
40
|
+
CONSTRAINT "user_profiles_user_id_unique" UNIQUE("user_id")
|
|
32
41
|
);
|
|
33
42
|
--> statement-breakpoint
|
|
34
43
|
CREATE TABLE "spfn_auth"."user_public_keys" (
|
|
@@ -47,6 +56,19 @@ CREATE TABLE "spfn_auth"."user_public_keys" (
|
|
|
47
56
|
CONSTRAINT "user_public_keys_key_id_unique" UNIQUE("key_id")
|
|
48
57
|
);
|
|
49
58
|
--> statement-breakpoint
|
|
59
|
+
CREATE TABLE "spfn_auth"."user_social_accounts" (
|
|
60
|
+
"id" bigserial PRIMARY KEY NOT NULL,
|
|
61
|
+
"user_id" bigserial NOT NULL,
|
|
62
|
+
"provider" text NOT NULL,
|
|
63
|
+
"provider_user_id" text NOT NULL,
|
|
64
|
+
"provider_email" text,
|
|
65
|
+
"access_token" text,
|
|
66
|
+
"refresh_token" text,
|
|
67
|
+
"token_expires_at" timestamp with time zone,
|
|
68
|
+
"created_at" timestamp with time zone DEFAULT now() NOT NULL,
|
|
69
|
+
"updated_at" timestamp with time zone DEFAULT now() NOT NULL
|
|
70
|
+
);
|
|
71
|
+
--> statement-breakpoint
|
|
50
72
|
CREATE TABLE "spfn_auth"."verification_codes" (
|
|
51
73
|
"id" bigserial PRIMARY KEY NOT NULL,
|
|
52
74
|
"target" text NOT NULL,
|
|
@@ -55,17 +77,18 @@ CREATE TABLE "spfn_auth"."verification_codes" (
|
|
|
55
77
|
"purpose" text NOT NULL,
|
|
56
78
|
"expires_at" timestamp with time zone NOT NULL,
|
|
57
79
|
"used_at" timestamp with time zone,
|
|
58
|
-
"attempts"
|
|
80
|
+
"attempts" integer DEFAULT 0 NOT NULL,
|
|
59
81
|
"created_at" timestamp with time zone DEFAULT now() NOT NULL,
|
|
60
|
-
"updated_at" timestamp with time zone DEFAULT now() NOT NULL
|
|
82
|
+
"updated_at" timestamp with time zone DEFAULT now() NOT NULL,
|
|
83
|
+
CONSTRAINT "attempts_limit_check" CHECK ("spfn_auth"."verification_codes"."attempts" >= 0 AND "spfn_auth"."verification_codes"."attempts" <= 10)
|
|
61
84
|
);
|
|
62
85
|
--> statement-breakpoint
|
|
63
86
|
CREATE TABLE "spfn_auth"."user_invitations" (
|
|
64
87
|
"id" bigserial PRIMARY KEY NOT NULL,
|
|
65
88
|
"email" text NOT NULL,
|
|
66
89
|
"token" text NOT NULL,
|
|
67
|
-
"role_id"
|
|
68
|
-
"
|
|
90
|
+
"role_id" bigserial NOT NULL,
|
|
91
|
+
"invited_by_id" bigserial NOT NULL,
|
|
69
92
|
"status" text DEFAULT 'pending' NOT NULL,
|
|
70
93
|
"expires_at" timestamp with time zone NOT NULL,
|
|
71
94
|
"accepted_at" timestamp with time zone,
|
|
@@ -99,6 +122,7 @@ CREATE TABLE "spfn_auth"."permissions" (
|
|
|
99
122
|
"is_builtin" boolean DEFAULT false NOT NULL,
|
|
100
123
|
"is_system" boolean DEFAULT false NOT NULL,
|
|
101
124
|
"is_active" boolean DEFAULT true NOT NULL,
|
|
125
|
+
"metadata" jsonb,
|
|
102
126
|
"created_at" timestamp with time zone DEFAULT now() NOT NULL,
|
|
103
127
|
"updated_at" timestamp with time zone DEFAULT now() NOT NULL,
|
|
104
128
|
CONSTRAINT "permissions_name_unique" UNIQUE("name")
|
|
@@ -106,8 +130,8 @@ CREATE TABLE "spfn_auth"."permissions" (
|
|
|
106
130
|
--> statement-breakpoint
|
|
107
131
|
CREATE TABLE "spfn_auth"."role_permissions" (
|
|
108
132
|
"id" bigserial PRIMARY KEY NOT NULL,
|
|
109
|
-
"role_id"
|
|
110
|
-
"permission_id"
|
|
133
|
+
"role_id" bigserial NOT NULL,
|
|
134
|
+
"permission_id" bigserial NOT NULL,
|
|
111
135
|
"created_at" timestamp with time zone DEFAULT now() NOT NULL,
|
|
112
136
|
"updated_at" timestamp with time zone DEFAULT now() NOT NULL,
|
|
113
137
|
CONSTRAINT "role_permissions_unique" UNIQUE("role_id","permission_id")
|
|
@@ -115,8 +139,8 @@ CREATE TABLE "spfn_auth"."role_permissions" (
|
|
|
115
139
|
--> statement-breakpoint
|
|
116
140
|
CREATE TABLE "spfn_auth"."user_permissions" (
|
|
117
141
|
"id" bigserial PRIMARY KEY NOT NULL,
|
|
118
|
-
"user_id"
|
|
119
|
-
"permission_id"
|
|
142
|
+
"user_id" bigserial NOT NULL,
|
|
143
|
+
"permission_id" bigserial NOT NULL,
|
|
120
144
|
"granted" boolean DEFAULT true NOT NULL,
|
|
121
145
|
"reason" text,
|
|
122
146
|
"expires_at" timestamp with time zone,
|
|
@@ -125,11 +149,12 @@ CREATE TABLE "spfn_auth"."user_permissions" (
|
|
|
125
149
|
CONSTRAINT "user_permissions_unique" UNIQUE("user_id","permission_id")
|
|
126
150
|
);
|
|
127
151
|
--> statement-breakpoint
|
|
128
|
-
ALTER TABLE "spfn_auth"."users" ADD CONSTRAINT "users_role_id_roles_id_fk" FOREIGN KEY ("role_id") REFERENCES "spfn_auth"."roles"("id") ON DELETE
|
|
129
|
-
ALTER TABLE "spfn_auth"."
|
|
152
|
+
ALTER TABLE "spfn_auth"."users" ADD CONSTRAINT "users_role_id_roles_id_fk" FOREIGN KEY ("role_id") REFERENCES "spfn_auth"."roles"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
|
|
153
|
+
ALTER TABLE "spfn_auth"."user_profiles" ADD CONSTRAINT "user_profiles_user_id_users_id_fk" FOREIGN KEY ("user_id") REFERENCES "spfn_auth"."users"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
|
|
130
154
|
ALTER TABLE "spfn_auth"."user_public_keys" ADD CONSTRAINT "user_public_keys_user_id_users_id_fk" FOREIGN KEY ("user_id") REFERENCES "spfn_auth"."users"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
|
|
131
|
-
ALTER TABLE "spfn_auth"."
|
|
132
|
-
ALTER TABLE "spfn_auth"."user_invitations" ADD CONSTRAINT "
|
|
155
|
+
ALTER TABLE "spfn_auth"."user_social_accounts" ADD CONSTRAINT "user_social_accounts_user_id_users_id_fk" FOREIGN KEY ("user_id") REFERENCES "spfn_auth"."users"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
|
|
156
|
+
ALTER TABLE "spfn_auth"."user_invitations" ADD CONSTRAINT "user_invitations_role_id_roles_id_fk" FOREIGN KEY ("role_id") REFERENCES "spfn_auth"."roles"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
|
|
157
|
+
ALTER TABLE "spfn_auth"."user_invitations" ADD CONSTRAINT "user_invitations_invited_by_id_users_id_fk" FOREIGN KEY ("invited_by_id") REFERENCES "spfn_auth"."users"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
|
|
133
158
|
ALTER TABLE "spfn_auth"."role_permissions" ADD CONSTRAINT "role_permissions_role_id_roles_id_fk" FOREIGN KEY ("role_id") REFERENCES "spfn_auth"."roles"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
|
|
134
159
|
ALTER TABLE "spfn_auth"."role_permissions" ADD CONSTRAINT "role_permissions_permission_id_permissions_id_fk" FOREIGN KEY ("permission_id") REFERENCES "spfn_auth"."permissions"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
|
|
135
160
|
ALTER TABLE "spfn_auth"."user_permissions" ADD CONSTRAINT "user_permissions_user_id_users_id_fk" FOREIGN KEY ("user_id") REFERENCES "spfn_auth"."users"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
|
|
@@ -138,16 +163,21 @@ CREATE INDEX "users_email_idx" ON "spfn_auth"."users" USING btree ("email");-->
|
|
|
138
163
|
CREATE INDEX "users_phone_idx" ON "spfn_auth"."users" USING btree ("phone");--> statement-breakpoint
|
|
139
164
|
CREATE INDEX "users_status_idx" ON "spfn_auth"."users" USING btree ("status");--> statement-breakpoint
|
|
140
165
|
CREATE INDEX "users_role_id_idx" ON "spfn_auth"."users" USING btree ("role_id");--> statement-breakpoint
|
|
141
|
-
CREATE
|
|
166
|
+
CREATE INDEX "user_profiles_user_id_idx" ON "spfn_auth"."user_profiles" USING btree ("user_id");--> statement-breakpoint
|
|
167
|
+
CREATE INDEX "user_profiles_display_name_idx" ON "spfn_auth"."user_profiles" USING btree ("display_name");--> statement-breakpoint
|
|
168
|
+
CREATE INDEX "user_profiles_locale_idx" ON "spfn_auth"."user_profiles" USING btree ("locale");--> statement-breakpoint
|
|
142
169
|
CREATE INDEX "user_public_keys_user_id_idx" ON "spfn_auth"."user_public_keys" USING btree ("user_id");--> statement-breakpoint
|
|
143
170
|
CREATE INDEX "user_public_keys_key_id_idx" ON "spfn_auth"."user_public_keys" USING btree ("key_id");--> statement-breakpoint
|
|
144
171
|
CREATE INDEX "user_public_keys_active_idx" ON "spfn_auth"."user_public_keys" USING btree ("is_active");--> statement-breakpoint
|
|
145
172
|
CREATE INDEX "user_public_keys_fingerprint_idx" ON "spfn_auth"."user_public_keys" USING btree ("fingerprint");--> statement-breakpoint
|
|
173
|
+
CREATE INDEX "user_social_accounts_user_id_idx" ON "spfn_auth"."user_social_accounts" USING btree ("user_id");--> statement-breakpoint
|
|
174
|
+
CREATE INDEX "user_social_accounts_provider_idx" ON "spfn_auth"."user_social_accounts" USING btree ("provider");--> statement-breakpoint
|
|
175
|
+
CREATE UNIQUE INDEX "provider_user_unique_idx" ON "spfn_auth"."user_social_accounts" USING btree ("provider","provider_user_id");--> statement-breakpoint
|
|
146
176
|
CREATE INDEX "target_purpose_idx" ON "spfn_auth"."verification_codes" USING btree ("target","purpose","expires_at");--> statement-breakpoint
|
|
147
177
|
CREATE INDEX "invitations_token_idx" ON "spfn_auth"."user_invitations" USING btree ("token");--> statement-breakpoint
|
|
148
178
|
CREATE INDEX "invitations_email_idx" ON "spfn_auth"."user_invitations" USING btree ("email");--> statement-breakpoint
|
|
149
179
|
CREATE INDEX "invitations_status_idx" ON "spfn_auth"."user_invitations" USING btree ("status");--> statement-breakpoint
|
|
150
|
-
CREATE INDEX "invitations_invited_by_idx" ON "spfn_auth"."user_invitations" USING btree ("
|
|
180
|
+
CREATE INDEX "invitations_invited_by_idx" ON "spfn_auth"."user_invitations" USING btree ("invited_by_id");--> statement-breakpoint
|
|
151
181
|
CREATE INDEX "invitations_expires_at_idx" ON "spfn_auth"."user_invitations" USING btree ("expires_at");--> statement-breakpoint
|
|
152
182
|
CREATE INDEX "invitations_role_id_idx" ON "spfn_auth"."user_invitations" USING btree ("role_id");--> statement-breakpoint
|
|
153
183
|
CREATE INDEX "roles_name_idx" ON "spfn_auth"."roles" USING btree ("name");--> statement-breakpoint
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"id": "
|
|
2
|
+
"id": "7dedce95-7ceb-4691-aaad-0989041d8828",
|
|
3
3
|
"prevId": "00000000-0000-0000-0000-000000000000",
|
|
4
4
|
"version": "7",
|
|
5
5
|
"dialect": "postgresql",
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
},
|
|
42
42
|
"role_id": {
|
|
43
43
|
"name": "role_id",
|
|
44
|
-
"type": "
|
|
44
|
+
"type": "bigserial",
|
|
45
45
|
"primaryKey": false,
|
|
46
46
|
"notNull": true
|
|
47
47
|
},
|
|
@@ -159,7 +159,7 @@
|
|
|
159
159
|
"columnsTo": [
|
|
160
160
|
"id"
|
|
161
161
|
],
|
|
162
|
-
"onDelete": "
|
|
162
|
+
"onDelete": "cascade",
|
|
163
163
|
"onUpdate": "no action"
|
|
164
164
|
}
|
|
165
165
|
},
|
|
@@ -189,8 +189,8 @@
|
|
|
189
189
|
},
|
|
190
190
|
"isRLSEnabled": false
|
|
191
191
|
},
|
|
192
|
-
"spfn_auth.
|
|
193
|
-
"name": "
|
|
192
|
+
"spfn_auth.user_profiles": {
|
|
193
|
+
"name": "user_profiles",
|
|
194
194
|
"schema": "spfn_auth",
|
|
195
195
|
"columns": {
|
|
196
196
|
"id": {
|
|
@@ -205,39 +205,89 @@
|
|
|
205
205
|
"primaryKey": false,
|
|
206
206
|
"notNull": true
|
|
207
207
|
},
|
|
208
|
-
"
|
|
209
|
-
"name": "
|
|
208
|
+
"display_name": {
|
|
209
|
+
"name": "display_name",
|
|
210
210
|
"type": "text",
|
|
211
211
|
"primaryKey": false,
|
|
212
212
|
"notNull": true
|
|
213
213
|
},
|
|
214
|
-
"
|
|
215
|
-
"name": "
|
|
214
|
+
"first_name": {
|
|
215
|
+
"name": "first_name",
|
|
216
216
|
"type": "text",
|
|
217
217
|
"primaryKey": false,
|
|
218
|
-
"notNull":
|
|
218
|
+
"notNull": false
|
|
219
219
|
},
|
|
220
|
-
"
|
|
221
|
-
"name": "
|
|
220
|
+
"last_name": {
|
|
221
|
+
"name": "last_name",
|
|
222
222
|
"type": "text",
|
|
223
223
|
"primaryKey": false,
|
|
224
224
|
"notNull": false
|
|
225
225
|
},
|
|
226
|
-
"
|
|
227
|
-
"name": "
|
|
226
|
+
"avatar_url": {
|
|
227
|
+
"name": "avatar_url",
|
|
228
228
|
"type": "text",
|
|
229
229
|
"primaryKey": false,
|
|
230
230
|
"notNull": false
|
|
231
231
|
},
|
|
232
|
-
"
|
|
233
|
-
"name": "
|
|
232
|
+
"bio": {
|
|
233
|
+
"name": "bio",
|
|
234
234
|
"type": "text",
|
|
235
235
|
"primaryKey": false,
|
|
236
236
|
"notNull": false
|
|
237
237
|
},
|
|
238
|
-
"
|
|
239
|
-
"name": "
|
|
240
|
-
"type": "
|
|
238
|
+
"locale": {
|
|
239
|
+
"name": "locale",
|
|
240
|
+
"type": "text",
|
|
241
|
+
"primaryKey": false,
|
|
242
|
+
"notNull": false,
|
|
243
|
+
"default": "'en'"
|
|
244
|
+
},
|
|
245
|
+
"timezone": {
|
|
246
|
+
"name": "timezone",
|
|
247
|
+
"type": "text",
|
|
248
|
+
"primaryKey": false,
|
|
249
|
+
"notNull": false,
|
|
250
|
+
"default": "'UTC'"
|
|
251
|
+
},
|
|
252
|
+
"date_of_birth": {
|
|
253
|
+
"name": "date_of_birth",
|
|
254
|
+
"type": "text",
|
|
255
|
+
"primaryKey": false,
|
|
256
|
+
"notNull": false
|
|
257
|
+
},
|
|
258
|
+
"gender": {
|
|
259
|
+
"name": "gender",
|
|
260
|
+
"type": "text",
|
|
261
|
+
"primaryKey": false,
|
|
262
|
+
"notNull": false
|
|
263
|
+
},
|
|
264
|
+
"website": {
|
|
265
|
+
"name": "website",
|
|
266
|
+
"type": "text",
|
|
267
|
+
"primaryKey": false,
|
|
268
|
+
"notNull": false
|
|
269
|
+
},
|
|
270
|
+
"location": {
|
|
271
|
+
"name": "location",
|
|
272
|
+
"type": "text",
|
|
273
|
+
"primaryKey": false,
|
|
274
|
+
"notNull": false
|
|
275
|
+
},
|
|
276
|
+
"company": {
|
|
277
|
+
"name": "company",
|
|
278
|
+
"type": "text",
|
|
279
|
+
"primaryKey": false,
|
|
280
|
+
"notNull": false
|
|
281
|
+
},
|
|
282
|
+
"job_title": {
|
|
283
|
+
"name": "job_title",
|
|
284
|
+
"type": "text",
|
|
285
|
+
"primaryKey": false,
|
|
286
|
+
"notNull": false
|
|
287
|
+
},
|
|
288
|
+
"metadata": {
|
|
289
|
+
"name": "metadata",
|
|
290
|
+
"type": "jsonb",
|
|
241
291
|
"primaryKey": false,
|
|
242
292
|
"notNull": false
|
|
243
293
|
},
|
|
@@ -257,32 +307,56 @@
|
|
|
257
307
|
}
|
|
258
308
|
},
|
|
259
309
|
"indexes": {
|
|
260
|
-
"
|
|
261
|
-
"name": "
|
|
310
|
+
"user_profiles_user_id_idx": {
|
|
311
|
+
"name": "user_profiles_user_id_idx",
|
|
262
312
|
"columns": [
|
|
263
313
|
{
|
|
264
|
-
"expression": "
|
|
314
|
+
"expression": "user_id",
|
|
265
315
|
"isExpression": false,
|
|
266
316
|
"asc": true,
|
|
267
317
|
"nulls": "last"
|
|
268
|
-
}
|
|
318
|
+
}
|
|
319
|
+
],
|
|
320
|
+
"isUnique": false,
|
|
321
|
+
"concurrently": false,
|
|
322
|
+
"method": "btree",
|
|
323
|
+
"with": {}
|
|
324
|
+
},
|
|
325
|
+
"user_profiles_display_name_idx": {
|
|
326
|
+
"name": "user_profiles_display_name_idx",
|
|
327
|
+
"columns": [
|
|
269
328
|
{
|
|
270
|
-
"expression": "
|
|
329
|
+
"expression": "display_name",
|
|
271
330
|
"isExpression": false,
|
|
272
331
|
"asc": true,
|
|
273
332
|
"nulls": "last"
|
|
274
333
|
}
|
|
275
334
|
],
|
|
276
|
-
"isUnique":
|
|
335
|
+
"isUnique": false,
|
|
336
|
+
"concurrently": false,
|
|
337
|
+
"method": "btree",
|
|
338
|
+
"with": {}
|
|
339
|
+
},
|
|
340
|
+
"user_profiles_locale_idx": {
|
|
341
|
+
"name": "user_profiles_locale_idx",
|
|
342
|
+
"columns": [
|
|
343
|
+
{
|
|
344
|
+
"expression": "locale",
|
|
345
|
+
"isExpression": false,
|
|
346
|
+
"asc": true,
|
|
347
|
+
"nulls": "last"
|
|
348
|
+
}
|
|
349
|
+
],
|
|
350
|
+
"isUnique": false,
|
|
277
351
|
"concurrently": false,
|
|
278
352
|
"method": "btree",
|
|
279
353
|
"with": {}
|
|
280
354
|
}
|
|
281
355
|
},
|
|
282
356
|
"foreignKeys": {
|
|
283
|
-
"
|
|
284
|
-
"name": "
|
|
285
|
-
"tableFrom": "
|
|
357
|
+
"user_profiles_user_id_users_id_fk": {
|
|
358
|
+
"name": "user_profiles_user_id_users_id_fk",
|
|
359
|
+
"tableFrom": "user_profiles",
|
|
286
360
|
"tableTo": "users",
|
|
287
361
|
"schemaTo": "spfn_auth",
|
|
288
362
|
"columnsFrom": [
|
|
@@ -296,7 +370,15 @@
|
|
|
296
370
|
}
|
|
297
371
|
},
|
|
298
372
|
"compositePrimaryKeys": {},
|
|
299
|
-
"uniqueConstraints": {
|
|
373
|
+
"uniqueConstraints": {
|
|
374
|
+
"user_profiles_user_id_unique": {
|
|
375
|
+
"name": "user_profiles_user_id_unique",
|
|
376
|
+
"nullsNotDistinct": false,
|
|
377
|
+
"columns": [
|
|
378
|
+
"user_id"
|
|
379
|
+
]
|
|
380
|
+
}
|
|
381
|
+
},
|
|
300
382
|
"policies": {},
|
|
301
383
|
"checkConstraints": {},
|
|
302
384
|
"isRLSEnabled": false
|
|
@@ -473,6 +555,148 @@
|
|
|
473
555
|
"checkConstraints": {},
|
|
474
556
|
"isRLSEnabled": false
|
|
475
557
|
},
|
|
558
|
+
"spfn_auth.user_social_accounts": {
|
|
559
|
+
"name": "user_social_accounts",
|
|
560
|
+
"schema": "spfn_auth",
|
|
561
|
+
"columns": {
|
|
562
|
+
"id": {
|
|
563
|
+
"name": "id",
|
|
564
|
+
"type": "bigserial",
|
|
565
|
+
"primaryKey": true,
|
|
566
|
+
"notNull": true
|
|
567
|
+
},
|
|
568
|
+
"user_id": {
|
|
569
|
+
"name": "user_id",
|
|
570
|
+
"type": "bigserial",
|
|
571
|
+
"primaryKey": false,
|
|
572
|
+
"notNull": true
|
|
573
|
+
},
|
|
574
|
+
"provider": {
|
|
575
|
+
"name": "provider",
|
|
576
|
+
"type": "text",
|
|
577
|
+
"primaryKey": false,
|
|
578
|
+
"notNull": true
|
|
579
|
+
},
|
|
580
|
+
"provider_user_id": {
|
|
581
|
+
"name": "provider_user_id",
|
|
582
|
+
"type": "text",
|
|
583
|
+
"primaryKey": false,
|
|
584
|
+
"notNull": true
|
|
585
|
+
},
|
|
586
|
+
"provider_email": {
|
|
587
|
+
"name": "provider_email",
|
|
588
|
+
"type": "text",
|
|
589
|
+
"primaryKey": false,
|
|
590
|
+
"notNull": false
|
|
591
|
+
},
|
|
592
|
+
"access_token": {
|
|
593
|
+
"name": "access_token",
|
|
594
|
+
"type": "text",
|
|
595
|
+
"primaryKey": false,
|
|
596
|
+
"notNull": false
|
|
597
|
+
},
|
|
598
|
+
"refresh_token": {
|
|
599
|
+
"name": "refresh_token",
|
|
600
|
+
"type": "text",
|
|
601
|
+
"primaryKey": false,
|
|
602
|
+
"notNull": false
|
|
603
|
+
},
|
|
604
|
+
"token_expires_at": {
|
|
605
|
+
"name": "token_expires_at",
|
|
606
|
+
"type": "timestamp with time zone",
|
|
607
|
+
"primaryKey": false,
|
|
608
|
+
"notNull": false
|
|
609
|
+
},
|
|
610
|
+
"created_at": {
|
|
611
|
+
"name": "created_at",
|
|
612
|
+
"type": "timestamp with time zone",
|
|
613
|
+
"primaryKey": false,
|
|
614
|
+
"notNull": true,
|
|
615
|
+
"default": "now()"
|
|
616
|
+
},
|
|
617
|
+
"updated_at": {
|
|
618
|
+
"name": "updated_at",
|
|
619
|
+
"type": "timestamp with time zone",
|
|
620
|
+
"primaryKey": false,
|
|
621
|
+
"notNull": true,
|
|
622
|
+
"default": "now()"
|
|
623
|
+
}
|
|
624
|
+
},
|
|
625
|
+
"indexes": {
|
|
626
|
+
"user_social_accounts_user_id_idx": {
|
|
627
|
+
"name": "user_social_accounts_user_id_idx",
|
|
628
|
+
"columns": [
|
|
629
|
+
{
|
|
630
|
+
"expression": "user_id",
|
|
631
|
+
"isExpression": false,
|
|
632
|
+
"asc": true,
|
|
633
|
+
"nulls": "last"
|
|
634
|
+
}
|
|
635
|
+
],
|
|
636
|
+
"isUnique": false,
|
|
637
|
+
"concurrently": false,
|
|
638
|
+
"method": "btree",
|
|
639
|
+
"with": {}
|
|
640
|
+
},
|
|
641
|
+
"user_social_accounts_provider_idx": {
|
|
642
|
+
"name": "user_social_accounts_provider_idx",
|
|
643
|
+
"columns": [
|
|
644
|
+
{
|
|
645
|
+
"expression": "provider",
|
|
646
|
+
"isExpression": false,
|
|
647
|
+
"asc": true,
|
|
648
|
+
"nulls": "last"
|
|
649
|
+
}
|
|
650
|
+
],
|
|
651
|
+
"isUnique": false,
|
|
652
|
+
"concurrently": false,
|
|
653
|
+
"method": "btree",
|
|
654
|
+
"with": {}
|
|
655
|
+
},
|
|
656
|
+
"provider_user_unique_idx": {
|
|
657
|
+
"name": "provider_user_unique_idx",
|
|
658
|
+
"columns": [
|
|
659
|
+
{
|
|
660
|
+
"expression": "provider",
|
|
661
|
+
"isExpression": false,
|
|
662
|
+
"asc": true,
|
|
663
|
+
"nulls": "last"
|
|
664
|
+
},
|
|
665
|
+
{
|
|
666
|
+
"expression": "provider_user_id",
|
|
667
|
+
"isExpression": false,
|
|
668
|
+
"asc": true,
|
|
669
|
+
"nulls": "last"
|
|
670
|
+
}
|
|
671
|
+
],
|
|
672
|
+
"isUnique": true,
|
|
673
|
+
"concurrently": false,
|
|
674
|
+
"method": "btree",
|
|
675
|
+
"with": {}
|
|
676
|
+
}
|
|
677
|
+
},
|
|
678
|
+
"foreignKeys": {
|
|
679
|
+
"user_social_accounts_user_id_users_id_fk": {
|
|
680
|
+
"name": "user_social_accounts_user_id_users_id_fk",
|
|
681
|
+
"tableFrom": "user_social_accounts",
|
|
682
|
+
"tableTo": "users",
|
|
683
|
+
"schemaTo": "spfn_auth",
|
|
684
|
+
"columnsFrom": [
|
|
685
|
+
"user_id"
|
|
686
|
+
],
|
|
687
|
+
"columnsTo": [
|
|
688
|
+
"id"
|
|
689
|
+
],
|
|
690
|
+
"onDelete": "cascade",
|
|
691
|
+
"onUpdate": "no action"
|
|
692
|
+
}
|
|
693
|
+
},
|
|
694
|
+
"compositePrimaryKeys": {},
|
|
695
|
+
"uniqueConstraints": {},
|
|
696
|
+
"policies": {},
|
|
697
|
+
"checkConstraints": {},
|
|
698
|
+
"isRLSEnabled": false
|
|
699
|
+
},
|
|
476
700
|
"spfn_auth.verification_codes": {
|
|
477
701
|
"name": "verification_codes",
|
|
478
702
|
"schema": "spfn_auth",
|
|
@@ -521,10 +745,10 @@
|
|
|
521
745
|
},
|
|
522
746
|
"attempts": {
|
|
523
747
|
"name": "attempts",
|
|
524
|
-
"type": "
|
|
748
|
+
"type": "integer",
|
|
525
749
|
"primaryKey": false,
|
|
526
750
|
"notNull": true,
|
|
527
|
-
"default":
|
|
751
|
+
"default": 0
|
|
528
752
|
},
|
|
529
753
|
"created_at": {
|
|
530
754
|
"name": "created_at",
|
|
@@ -574,7 +798,12 @@
|
|
|
574
798
|
"compositePrimaryKeys": {},
|
|
575
799
|
"uniqueConstraints": {},
|
|
576
800
|
"policies": {},
|
|
577
|
-
"checkConstraints": {
|
|
801
|
+
"checkConstraints": {
|
|
802
|
+
"attempts_limit_check": {
|
|
803
|
+
"name": "attempts_limit_check",
|
|
804
|
+
"value": "\"spfn_auth\".\"verification_codes\".\"attempts\" >= 0 AND \"spfn_auth\".\"verification_codes\".\"attempts\" <= 10"
|
|
805
|
+
}
|
|
806
|
+
},
|
|
578
807
|
"isRLSEnabled": false
|
|
579
808
|
},
|
|
580
809
|
"spfn_auth.user_invitations": {
|
|
@@ -601,13 +830,13 @@
|
|
|
601
830
|
},
|
|
602
831
|
"role_id": {
|
|
603
832
|
"name": "role_id",
|
|
604
|
-
"type": "
|
|
833
|
+
"type": "bigserial",
|
|
605
834
|
"primaryKey": false,
|
|
606
835
|
"notNull": true
|
|
607
836
|
},
|
|
608
|
-
"
|
|
609
|
-
"name": "
|
|
610
|
-
"type": "
|
|
837
|
+
"invited_by_id": {
|
|
838
|
+
"name": "invited_by_id",
|
|
839
|
+
"type": "bigserial",
|
|
611
840
|
"primaryKey": false,
|
|
612
841
|
"notNull": true
|
|
613
842
|
},
|
|
@@ -707,7 +936,7 @@
|
|
|
707
936
|
"name": "invitations_invited_by_idx",
|
|
708
937
|
"columns": [
|
|
709
938
|
{
|
|
710
|
-
"expression": "
|
|
939
|
+
"expression": "invited_by_id",
|
|
711
940
|
"isExpression": false,
|
|
712
941
|
"asc": true,
|
|
713
942
|
"nulls": "last"
|
|
@@ -761,21 +990,21 @@
|
|
|
761
990
|
"columnsTo": [
|
|
762
991
|
"id"
|
|
763
992
|
],
|
|
764
|
-
"onDelete": "
|
|
993
|
+
"onDelete": "cascade",
|
|
765
994
|
"onUpdate": "no action"
|
|
766
995
|
},
|
|
767
|
-
"
|
|
768
|
-
"name": "
|
|
996
|
+
"user_invitations_invited_by_id_users_id_fk": {
|
|
997
|
+
"name": "user_invitations_invited_by_id_users_id_fk",
|
|
769
998
|
"tableFrom": "user_invitations",
|
|
770
999
|
"tableTo": "users",
|
|
771
1000
|
"schemaTo": "spfn_auth",
|
|
772
1001
|
"columnsFrom": [
|
|
773
|
-
"
|
|
1002
|
+
"invited_by_id"
|
|
774
1003
|
],
|
|
775
1004
|
"columnsTo": [
|
|
776
1005
|
"id"
|
|
777
1006
|
],
|
|
778
|
-
"onDelete": "
|
|
1007
|
+
"onDelete": "cascade",
|
|
779
1008
|
"onUpdate": "no action"
|
|
780
1009
|
}
|
|
781
1010
|
},
|
|
@@ -1011,6 +1240,12 @@
|
|
|
1011
1240
|
"notNull": true,
|
|
1012
1241
|
"default": true
|
|
1013
1242
|
},
|
|
1243
|
+
"metadata": {
|
|
1244
|
+
"name": "metadata",
|
|
1245
|
+
"type": "jsonb",
|
|
1246
|
+
"primaryKey": false,
|
|
1247
|
+
"notNull": false
|
|
1248
|
+
},
|
|
1014
1249
|
"created_at": {
|
|
1015
1250
|
"name": "created_at",
|
|
1016
1251
|
"type": "timestamp with time zone",
|
|
@@ -1130,13 +1365,13 @@
|
|
|
1130
1365
|
},
|
|
1131
1366
|
"role_id": {
|
|
1132
1367
|
"name": "role_id",
|
|
1133
|
-
"type": "
|
|
1368
|
+
"type": "bigserial",
|
|
1134
1369
|
"primaryKey": false,
|
|
1135
1370
|
"notNull": true
|
|
1136
1371
|
},
|
|
1137
1372
|
"permission_id": {
|
|
1138
1373
|
"name": "permission_id",
|
|
1139
|
-
"type": "
|
|
1374
|
+
"type": "bigserial",
|
|
1140
1375
|
"primaryKey": false,
|
|
1141
1376
|
"notNull": true
|
|
1142
1377
|
},
|
|
@@ -1244,13 +1479,13 @@
|
|
|
1244
1479
|
},
|
|
1245
1480
|
"user_id": {
|
|
1246
1481
|
"name": "user_id",
|
|
1247
|
-
"type": "
|
|
1482
|
+
"type": "bigserial",
|
|
1248
1483
|
"primaryKey": false,
|
|
1249
1484
|
"notNull": true
|
|
1250
1485
|
},
|
|
1251
1486
|
"permission_id": {
|
|
1252
1487
|
"name": "permission_id",
|
|
1253
|
-
"type": "
|
|
1488
|
+
"type": "bigserial",
|
|
1254
1489
|
"primaryKey": false,
|
|
1255
1490
|
"notNull": true
|
|
1256
1491
|
},
|