()
| 83 | useResizeObserver({ |
| 84 | ref, |
| 85 | onResize() { |
| 86 | let width = ref.current!.getBoundingClientRect().width; |
| 87 | let rem = parseFloat(window.getComputedStyle(document.documentElement).fontSize); |
| 88 | let breakpoint = width / rem; |
| 89 | flushSync(() => { |
| 90 | let matches = breakpoint >= SM_BREAK; |
| 91 | setLarge(matches); |
| 92 | if (!showPanel && selectedPanel && isLarge && !matches) { |
| 93 | setPanel(null); |
| 94 | } |
| 95 | }); |
| 96 | } |
| 97 | }); |
| 98 | |
| 99 | return ( |