refactor: rejuvenation using match/case in format_value (#34594)

* Refactor: Rejuvenation using match/case in format_value

* refactor(format_value): rejuvenation using match/case (PEP 634) (#34594)

* refactor: if for match

* style: fix code formatting and indentation for consistency

* chore: format

Signed-off-by: Akhil Narang <me@akhilnarang.dev>

---------

Signed-off-by: Akhil Narang <me@akhilnarang.dev>
Co-authored-by: Akhil Narang <me@akhilnarang.dev>
This commit is contained in:
marcosppca 2026-01-08 09:44:50 -03:00 committed by GitHub
parent 686e436d57
commit 6ef39f3253
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -36,18 +36,19 @@ def format_value(value, df=None, doc=None, currency=None, translated=False, form
if not df:
df = frappe._dict()
if isinstance(value, datetime.datetime):
df.fieldtype = "Datetime"
elif isinstance(value, datetime.date):
df.fieldtype = "Date"
elif isinstance(value, datetime.timedelta):
df.fieldtype = "Time"
elif isinstance(value, int):
df.fieldtype = "Int"
elif isinstance(value, float):
df.fieldtype = "Float"
else:
df.fieldtype = "Data"
match value:
case datetime.datetime():
df.fieldtype = "Datetime"
case datetime.date():
df.fieldtype = "Date"
case datetime.timedelta():
df.fieldtype = "Time"
case int():
df.fieldtype = "Int"
case float():
df.fieldtype = "Float"
case _:
df.fieldtype = "Data"
elif isinstance(df, dict):
# Convert dict to object if necessary