Skip to content

Commit e13c76e

Browse files
authored
Set preconnect links to main domains on render (#2354)
1 parent 4a11d8d commit e13c76e

File tree

2 files changed

+10
-0
lines changed

2 files changed

+10
-0
lines changed

src/app/(space)/(content)/layout.tsx

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@ import { AdminToolbar } from '@/components/AdminToolbar';
88
import { CookiesToast } from '@/components/Cookies';
99
import { LoadIntegrations } from '@/components/Integrations';
1010
import { SpaceLayout } from '@/components/SpaceLayout';
11+
import { api } from '@/lib/api';
12+
import { assetsDomain } from '@/lib/assets';
1113
import { buildVersion } from '@/lib/build';
1214
import { getContentSecurityPolicyNonce } from '@/lib/csp';
1315
import { absoluteHref, baseUrl } from '@/lib/links';
@@ -39,6 +41,11 @@ export default async function ContentLayout(props: { children: React.ReactNode }
3941
scripts,
4042
} = await fetchSpaceData();
4143

44+
ReactDOM.preconnect(api().endpoint);
45+
if (assetsDomain) {
46+
ReactDOM.preconnect(assetsDomain);
47+
}
48+
4249
scripts.forEach(({ script }) => {
4350
ReactDOM.preload(script, {
4451
as: 'script',

src/components/DocumentView/Embed.tsx

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import * as gitbookAPI from '@gitbook/api';
22
import Script from 'next/script';
3+
import ReactDOM from 'react-dom';
34

45
import { Card } from '@/components/primitives';
56
import { api } from '@/lib/api';
@@ -11,6 +12,8 @@ import { IntegrationBlock } from './Integration';
1112

1213
export async function Embed(props: BlockProps<gitbookAPI.DocumentBlockEmbed>) {
1314
const { block, context, ...otherProps } = props;
15+
16+
ReactDOM.preconnect('https://cdn.iframe.ly');
1417

1518
const { data: embed } = await (context.content
1619
? api().spaces.getEmbedByUrlInSpace(context.content.spaceId, { url: block.data.url })

0 commit comments

Comments
 (0)