# Generated by Django 5.1.3 on 2025-12-24 05:15

import uuid

import django.db.models.deletion
from django.conf import settings
from django.db import migrations, models


class Migration(migrations.Migration):
    dependencies = [
        ("accounts", "0002_remove_organization"),
        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
    ]

    operations = [
        migrations.CreateModel(
            name="MarketingProfile",
            fields=[
                ("created_at", models.DateTimeField(auto_now_add=True)),
                ("updated_at", models.DateTimeField(auto_now=True)),
                (
                    "id",
                    models.UUIDField(
                        default=uuid.uuid4,
                        editable=False,
                        primary_key=True,
                        serialize=False,
                    ),
                ),
                (
                    "role",
                    models.CharField(
                        blank=True,
                        choices=[
                            ("devrel", "Developer Relations"),
                            ("community_manager", "Community Manager"),
                            ("developer", "Developer"),
                            ("other", "Other"),
                        ],
                        max_length=20,
                        null=True,
                    ),
                ),
                (
                    "company_size",
                    models.CharField(
                        blank=True,
                        choices=[
                            ("solo_indie", "Solo/Indie"),
                            ("startup", "Startup (2-50)"),
                            ("midsize", "Mid-size (51-500)"),
                            ("enterprise", "Enterprise (500+)"),
                        ],
                        max_length=20,
                        null=True,
                    ),
                ),
                ("community_channels", models.JSONField(blank=True, default=list)),
                (
                    "user",
                    models.OneToOneField(
                        on_delete=django.db.models.deletion.CASCADE,
                        related_name="marketing_profile",
                        to=settings.AUTH_USER_MODEL,
                    ),
                ),
            ],
            options={
                "abstract": False,
            },
        ),
        migrations.CreateModel(
            name="OnboardingProgress",
            fields=[
                ("created_at", models.DateTimeField(auto_now_add=True)),
                ("updated_at", models.DateTimeField(auto_now=True)),
                (
                    "id",
                    models.UUIDField(
                        default=uuid.uuid4,
                        editable=False,
                        primary_key=True,
                        serialize=False,
                    ),
                ),
                ("has_completed_onboarding", models.BooleanField(default=False)),
                ("completed_welcome", models.BooleanField(default=False)),
                ("completed_role", models.BooleanField(default=False)),
                ("completed_company", models.BooleanField(default=False)),
                ("completed_channels", models.BooleanField(default=False)),
                (
                    "user",
                    models.OneToOneField(
                        on_delete=django.db.models.deletion.CASCADE,
                        related_name="onboarding_progress",
                        to=settings.AUTH_USER_MODEL,
                    ),
                ),
            ],
            options={
                "verbose_name_plural": "Onboarding progress",
            },
        ),
    ]
