first commit

This commit is contained in:
Mateusz Gruszczyński
2026-03-23 15:56:18 +01:00
commit c5cc2efbac
106 changed files with 10254 additions and 0 deletions

View File

@@ -0,0 +1,19 @@
from __future__ import annotations
from dataclasses import asdict, is_dataclass
from datetime import date, datetime
from typing import Any
def to_plain(value: Any) -> Any:
if is_dataclass(value):
return to_plain(asdict(value))
if isinstance(value, datetime):
return value.isoformat()
if isinstance(value, date):
return value.isoformat()
if isinstance(value, dict):
return {key: to_plain(item) for key, item in value.items()}
if isinstance(value, (list, tuple, set)):
return [to_plain(item) for item in value]
return value