# parsly/models

from django.db import models

class ManualParserSelector(models.Model):
    fieldtype = models.CharField(max_length=64, unique=True)  # np. "text", "number"
    label = models.CharField(max_length=128)  # Przyjazna nazwa do UI
    description = models.TextField()
    options = models.JSONField()  # Lista opcji do danego typu pola
    example = models.JSONField(null=True, blank=True)  # Przykładowa definicja

    def __str__(self):
        return self.fieldtype



class ManualParser(models.Model):
    name = models.CharField(max_length=155, unique=True) 
    description = models.TextField()
    
    def __str__(self):
        return self.name
    
    



class ManualParserModels(models.Model):
    parser = models.ForeignKey(ManualParser, on_delete=models.CASCADE, related_name='manual_parser')
    name = models.CharField(max_length=155, unique=True) 
    fieldType = models.CharField(max_length=155) 
    description = models.TextField(null=True, blank=True)
    is_active = models.BooleanField(default=True)
    label = models.CharField(max_length=128)  # Przyjazna nazwa do UI
    keys = models.JSONField(null=True, blank=True)  # Lista opcji do danego typu pola
    
    def __str__(self):
        return self.name
    
    
    
