fix(sdk): use after interactive for nextjs #290

This commit is contained in:
Carl-Gerhard Lindesvärd
2026-02-17 13:48:03 +01:00
parent fef4941e06
commit 5a0769c917

View File

@@ -22,6 +22,7 @@ type OpenPanelComponentProps = Omit<OpenPanelOptions, 'filter'> & {
cdnUrl?: string; cdnUrl?: string;
filter?: string; filter?: string;
globalProperties?: Record<string, unknown>; globalProperties?: Record<string, unknown>;
strategy?: 'beforeInteractive' | 'afterInteractive' | 'lazyOnload' | 'worker';
}; };
const stringify = (obj: unknown) => { const stringify = (obj: unknown) => {
@@ -42,6 +43,7 @@ export function OpenPanelComponent({
profileId, profileId,
cdnUrl, cdnUrl,
globalProperties, globalProperties,
strategy = 'afterInteractive',
...options ...options
}: OpenPanelComponentProps) { }: OpenPanelComponentProps) {
const methods: { name: OpenPanelMethodNames; value: unknown }[] = [ const methods: { name: OpenPanelMethodNames; value: unknown }[] = [
@@ -80,7 +82,8 @@ export function OpenPanelComponent({
<> <>
<Script src={appendVersion(cdnUrl || CDN_URL)} async defer /> <Script src={appendVersion(cdnUrl || CDN_URL)} async defer />
<Script <Script
strategy="beforeInteractive" id="openpanel-init"
strategy={strategy}
dangerouslySetInnerHTML={{ dangerouslySetInnerHTML={{
__html: `${getInitSnippet()} __html: `${getInitSnippet()}
${methods ${methods