11import datetime
2- from typing import Optional
2+ from typing import Optional , List
33from decimal import Decimal
44
55from validator_collection import validators
1111from highcharts_core .utility_classes .events import SeriesEvents
1212from highcharts_core .utility_classes .javascript_functions import CallbackFunction
1313from highcharts_core .options .plot_options .link import LinkOptions
14+ from highcharts_core .options .plot_options .levels import TreegraphLevelOptions
1415
1516
1617class TreegraphEvents (SeriesEvents ):
@@ -120,6 +121,8 @@ def __init__(self, **kwargs):
120121 self ._reversed = None
121122 self ._traverse_up_button = None
122123
124+ self ._levels = None
125+
123126 self .animation_limit = kwargs .get ('animation_limit' , None )
124127 self .boost_blending = kwargs .get ('boost_blending' , None )
125128 self .boost_threshold = kwargs .get ('boost_threshold' , None )
@@ -144,6 +147,8 @@ def __init__(self, **kwargs):
144147 self .link = kwargs .get ('link' , None )
145148 self .reversed = kwargs .get ('reversed' , None )
146149
150+ self .levels = kwargs .get ('levels' , None )
151+
147152 super ().__init__ (** kwargs )
148153
149154 @property
@@ -626,7 +631,25 @@ def reversed(self, value):
626631 self ._reversed = None
627632 else :
628633 self ._reversed = bool (value )
629-
634+
635+ @property
636+ def levels (self ) -> Optional [List [TreegraphLevelOptions ]]:
637+ """Set options on specific levels.
638+
639+ .. note::
640+
641+ Takes precedence over series options, but not point options.
642+
643+ :rtype: :class:`TreemapLevelOptions <highcharts_core.options.plot_options.levels.TreemapLevelOptions>`
644+ or :obj:`None <python:None>`
645+ """
646+ return self ._levels
647+
648+ @levels .setter
649+ @class_sensitive (TreegraphLevelOptions )
650+ def levels (self , value ):
651+ self ._levels = value
652+
630653 @classmethod
631654 def _get_kwargs_from_dict (cls , as_dict ):
632655 """Convenience method which returns the keyword arguments used to initialize the
@@ -699,6 +722,7 @@ class from a Highcharts Javascript-compatible :class:`dict <python:dict>` object
699722 'fill_space' : as_dict .get ('fillSpace' , None ),
700723 'link' : as_dict .get ('link' , None ),
701724 'reversed' : as_dict .get ('reversed' , None ),
725+ 'levels' : as_dict .get ('levels' , None ),
702726 }
703727
704728 return kwargs
@@ -762,6 +786,7 @@ def _to_untrimmed_dict(self, in_cls = None) -> dict:
762786 'fillSpace' : self .fill_space ,
763787 'link' : self .link ,
764788 'reversed' : self .reversed ,
789+ 'levels' : self .levels ,
765790 }
766791
767792 return untrimmed
0 commit comments