()
| 733 | }; |
| 734 | |
| 735 | const syncDataZoomUi = (): void => { |
| 736 | const shouldHaveSlider = hasSliderDataZoom(currentOptions); |
| 737 | if (!shouldHaveSlider) { |
| 738 | disposeDataZoomUi(); |
| 739 | return; |
| 740 | } |
| 741 | |
| 742 | // Slider requires a coordinator-backed zoom state. |
| 743 | if (!coordinator) return; |
| 744 | if (!coordinator.getZoomRange()) return; |
| 745 | |
| 746 | const host = ensureDataZoomSliderHost(); |
| 747 | if (!dataZoomSlider) { |
| 748 | dataZoomSlider = createDataZoomSlider(host, createCoordinatorZoomStateLike(), { |
| 749 | height: DATA_ZOOM_SLIDER_HEIGHT_CSS_PX, |
| 750 | marginTop: 0, // host provides vertical spacing |
| 751 | }); |
| 752 | } |
| 753 | dataZoomSlider.update(resolvedOptions.theme); |
| 754 | }; |
| 755 | |
| 756 | const bindCoordinatorInteractionXChange = (): void => { |
| 757 | unbindCoordinatorInteractionXChange(); |
no test coverage detected