@@ -271,24 +271,36 @@ def perform_codegen(reformat=True):
271
271
root_datatype_imports .append (f"._deprecations.{ dep_clas } " )
272
272
273
273
optional_figure_widget_import = f"""
274
- __all__.append("FigureWidget")
275
- orig_getattr = __getattr__
276
- def __getattr__(import_name):
277
- if import_name == "FigureWidget":
278
- try:
279
- import ipywidgets
280
- from packaging.version import Version
281
-
282
- if Version(ipywidgets.__version__) >= Version("7.0.0"):
283
- from ..graph_objs._figurewidget import FigureWidget
274
+ if sys.version_info < (3, 7) or TYPE_CHECKING:
275
+ try:
276
+ import ipywidgets as _ipywidgets
277
+ from packaging.version import Version as _Version
278
+ if _Version(_ipywidgets.__version__) >= _Version("7.0.0"):
279
+ from ..graph_objs._figurewidget import FigureWidget
280
+ else:
281
+ raise ImportError()
282
+ except Exception:
283
+ from ..missing_anywidget import FigureWidget
284
+ else:
285
+ __all__.append("FigureWidget")
286
+ orig_getattr = __getattr__
287
+ def __getattr__(import_name):
288
+ if import_name == "FigureWidget":
289
+ try:
290
+ import ipywidgets
291
+ from packaging.version import Version
292
+ if Version(ipywidgets.__version__) >= Version("7.0.0"):
293
+ from ..graph_objs._figurewidget import FigureWidget
294
+ return FigureWidget
295
+ else:
296
+ raise ImportError()
297
+ except Exception:
298
+ from ..missing_anywidget import FigureWidget
284
299
return FigureWidget
285
300
else:
286
301
raise ImportError()
287
- except Exception:
288
- from ..missing_anywidget import FigureWidget
289
- return FigureWidget
290
302
291
- return orig_getattr(import_name)
303
+ return orig_getattr(import_name)
292
304
"""
293
305
# ### __all__ ###
294
306
for path_parts , class_names in alls .items ():
0 commit comments