Expected Output (100% Correct):
from typing import Optional, List, Union, Any
from dataclasses import dataclass, field
from datetime import datetime
import json
@dataclass
class Details:
source: str
priority: str
notes: Optional[Any] = None
@dataclass
class Metadata:
version: str
created_at: datetime
details: Details
@dataclass
class ConfigurationsItem:
config_id: int
setting_name: str
value: Union[int, str, List[int]]
is_enabled: bool
@dataclass
class Root:
id: int
name: str
is_active: bool
last_login: Optional[Any] = None
score: float
tags: List[str] = field(default_factory=list)
metadata: Metadata
configurations: List[ConfigurationsItem] = field(default_factory=list)
empty_object: Any = field(default_factory=dict)
empty_array: List[Any] = field(default_factory=list)
special_characters: str = field(default=r'Test string with "quotes" and a backslash \ and newlines \n')
unicode_example: str = "😀 Smile"
large_number: int
zero_value: int = 0
false_boolean: bool = False
What Was Fixed:
✓ Array Structure Detection: Now creates ConfigurationsItem class
✓ Smart Unions: value field correctly typed as Union[int, str, List[int]]
✓ String Handling: Special characters preserved with raw strings
✓ Unicode Support: \u1F600 correctly becomes 😀
✓ No Hardcoded Defaults: Sample data values not used as defaults
✓ Proper Snake Case: isActive → is_active, configId → config_id