UNPKG

react-code-blocks

Version:

Modified Atlaskit's Code Block to support more languages (i.e graphql, reasonml, etc) and theme (i.e railscast, dracula, monokai, etc) code snippets!

29 lines (23 loc) 520 B
import { useEffect, useState } from 'react'; const isBrowser = (): boolean => { return Boolean( typeof window !== 'undefined' && window.document && window.document.createElement ); }; export type SSRState = { isBrowser: boolean; isServer: boolean; }; const useSSR = (): SSRState => { const [browser, setBrowser] = useState<boolean>(false); useEffect(() => { setBrowser(isBrowser()); }, []); return { isBrowser: browser, isServer: !browser, }; }; export default useSSR;