From 419a4e944f231026322e2c4f137e7a3eb94735e8 Mon Sep 17 00:00:00 2001 From: dangotbanned <125183946+dangotbanned@users.noreply.github.com> Date: Tue, 16 Jul 2024 10:15:28 +0100 Subject: [PATCH] refactor: reduce code duplication in `Chart.to_dict` --- altair/vegalite/v5/api.py | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/altair/vegalite/v5/api.py b/altair/vegalite/v5/api.py index 84c41c275..fb2f3c2de 100644 --- a/altair/vegalite/v5/api.py +++ b/altair/vegalite/v5/api.py @@ -98,6 +98,7 @@ AggregateOp_T, MultiTimeUnit_T, SingleTimeUnit_T, + Map, ) ChartDataType: TypeAlias = Optional[Union[DataType, core.Data, str, core.Generator]] @@ -2987,17 +2988,14 @@ def to_dict( if validate=True and the dict does not conform to the schema """ context = context or {} + kwds: Map = {"validate": validate, "format": format, "ignore": ignore, "context": context} # fmt: skip if self.data is Undefined and "data" not in context: # No data specified here or in parent: inject empty data # for easier specification of datum encodings. copy = self.copy(deep=False) copy.data = core.InlineData(values=[{}]) - return super(Chart, copy).to_dict( - validate=validate, format=format, ignore=ignore, context=context - ) - return super().to_dict( - validate=validate, format=format, ignore=ignore, context=context - ) + return super(Chart, copy).to_dict(**kwds) + return super().to_dict(**kwds) def transformed_data( self, row_limit: int | None = None, exclude: Iterable[str] | None = None