11'use client' ;
22
33import type { DocumentBlockCode } from '@gitbook/api' ;
4- import { Suspense , useEffect , useMemo , useRef , useState } from 'react' ;
4+ import { useEffect , useMemo , useRef , useState } from 'react' ;
55
6- import { type AdaptiveVisitorClaims , useAdaptiveVisitor } from '@/components/Adaptive' ;
6+ import { useAdaptiveVisitor } from '@/components/Adaptive' ;
77import { useInViewportListener } from '@/components/hooks/useInViewportListener' ;
88import { useScrollListener } from '@/components/hooks/useScrollListener' ;
99import { useDebounceCallback } from 'usehooks-ts' ;
@@ -18,29 +18,18 @@ type ClientBlockProps = Pick<BlockProps<DocumentBlockCode>, 'block' | 'style'> &
1818 inlineExprVariables : InlineExpressionVariables ;
1919} ;
2020
21- export function ClientCodeBlock ( props : ClientBlockProps ) {
22- const getAdaptiveVisitorClaims = useAdaptiveVisitor ( ) ;
23- const visitorClaims = getAdaptiveVisitorClaims ( ) ;
24-
25- return (
26- < Suspense fallback = { null } >
27- < ClientCodeBlockWithVisitorClaims { ...props } visitorClaims = { visitorClaims } />
28- </ Suspense >
29- ) ;
30- }
31-
3221/**
3322 * Render a code-block client-side by loading the highlighter asynchronously.
3423 * It allows us to defer some load to avoid blocking the rendering of the whole page with block highlighting.
3524 */
36- export function ClientCodeBlockWithVisitorClaims (
37- props : ClientBlockProps & { visitorClaims : AdaptiveVisitorClaims | null }
38- ) {
39- const { block, style, inlines, inlineExprVariables, visitorClaims } = props ;
25+ export function ClientCodeBlock ( props : ClientBlockProps ) {
26+ const { block, style, inlines, inlineExprVariables } = props ;
4027 const blockRef = useRef < HTMLDivElement > ( null ) ;
4128 const isInViewportRef = useRef ( false ) ;
4229 const [ isInViewport , setIsInViewport ] = useState ( false ) ;
4330
31+ const getAdaptiveVisitorClaims = useAdaptiveVisitor ( ) ;
32+ const visitorClaims = getAdaptiveVisitorClaims ( ) ;
4433 const evaluateInlineExpression = useEvaluateInlineExpression ( {
4534 visitorClaims,
4635 variables : inlineExprVariables ,
0 commit comments