1# Generated by Plain 0.52.2 on 2025-07-08 01:17
2
3import plain.models.deletion
4from plain import models
5from plain.models import migrations
6from plain.runtime import settings
7
8
9class Migration(migrations.Migration):
10 initial = True
11
12 dependencies = [
13 migrations.settings_dependency(settings.AUTH_USER_MODEL),
14 ]
15
16 operations = [
17 migrations.CreateModel(
18 name="OAuthConnection",
19 fields=[
20 ("id", models.BigAutoField(auto_created=True, primary_key=True)),
21 ("created_at", models.DateTimeField(auto_now_add=True)),
22 ("updated_at", models.DateTimeField(auto_now=True)),
23 ("provider_key", models.CharField(max_length=100)),
24 ("provider_user_id", models.CharField(max_length=100)),
25 ("access_token", models.CharField(max_length=2000)),
26 ("refresh_token", models.CharField(max_length=2000, required=False)),
27 (
28 "access_token_expires_at",
29 models.DateTimeField(allow_null=True, required=False),
30 ),
31 (
32 "refresh_token_expires_at",
33 models.DateTimeField(allow_null=True, required=False),
34 ),
35 (
36 "user",
37 models.ForeignKey(
38 on_delete=plain.models.deletion.CASCADE,
39 related_name="oauth_connections",
40 to="users.user",
41 ),
42 ),
43 ],
44 options={
45 "ordering": ("provider_key",),
46 },
47 ),
48 migrations.AddConstraint(
49 model_name="oauthconnection",
50 constraint=models.UniqueConstraint(
51 fields=("provider_key", "provider_user_id"),
52 name="plainoauth_oauthconnection_unique_provider_key_user_id",
53 ),
54 ),
55 ]