From 1ba4bca58b4563fffdc88cdf199f84aea20a6bc7 Mon Sep 17 00:00:00 2001 From: tcely Date: Sun, 18 May 2025 06:16:06 -0400 Subject: [PATCH] Add `json_serial` to json.py --- tubesync/common/json.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/tubesync/common/json.py b/tubesync/common/json.py index e8a22e1c..5a56a019 100644 --- a/tubesync/common/json.py +++ b/tubesync/common/json.py @@ -1,4 +1,6 @@ +from datetime import datetime from django.core.serializers.json import DjangoJSONEncoder +from yt_dlp.utils import LazyList class JSONEncoder(DjangoJSONEncoder): @@ -14,3 +16,11 @@ class JSONEncoder(DjangoJSONEncoder): return list(iterable) return super().default(obj) + +def json_serial(obj): + if isinstance(obj, datetime): + return obj.isoformat() + if isinstance(obj, LazyList): + return list(obj) + raise TypeError(f'Type {type(obj)} is not json_serial()-able') +