UNPKG

@primer/react

Version:

An implementation of GitHub's Primer Design System using React

35 lines (32 loc) 847 B
import { c } from 'react-compiler-runtime'; import { isMacOS } from '@primer/behaviors/utils'; import { useState, useEffect } from 'react'; import { canUseDOM } from '../utils/environment.js'; /** * SSR-safe hook for determining if the current platform is MacOS. When rendering * server-side, will default to non-MacOS and then re-render in an effect if the * client turns out to be a MacOS device. */ function useIsMacOS() { const $ = c(2); const [isMacOS$1, setIsMacOS] = useState(_temp); let t0; let t1; if ($[0] === Symbol.for("react.memo_cache_sentinel")) { t0 = () => { setIsMacOS(isMacOS()); }; t1 = []; $[0] = t0; $[1] = t1; } else { t0 = $[0]; t1 = $[1]; } useEffect(t0, t1); return isMacOS$1; } function _temp() { return canUseDOM ? isMacOS() : false; } export { useIsMacOS };