gatsby
Version:
Blazing fast modern site generator for React
39 lines (36 loc) • 1.39 kB
JavaScript
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
exports.__esModule = true;
exports.onRenderBody = void 0;
var _react = _interopRequireDefault(require("react"));
var _gatsbyScript = require("gatsby-script");
var _getForwards = require("./utils/get-forwards");
var _integration = require("@builder.io/partytown/integration");
const onRenderBody = ({
pathname,
setHeadComponents
}) => {
const collectedScripts = _gatsbyScript.collectedScriptsByPage.get(pathname);
if (!(collectedScripts !== null && collectedScripts !== void 0 && collectedScripts.length)) {
return;
}
const forwards = (0, _getForwards.getForwards)(collectedScripts);
// Adapted from https://github.com/BuilderIO/partytown/blob/main/src/react/snippet.tsx to only include SSR logic
setHeadComponents([/*#__PURE__*/_react.default.createElement("script", {
key: "partytown",
"data-partytown": "",
suppressHydrationWarning: true,
dangerouslySetInnerHTML: {
__html: `
${(0, _integration.partytownSnippet)({
forward: forwards
})}
document.currentScript.dataset.partytown=""
`
}
})]);
// Clear scripts after we've used them to avoid leaky behavior
_gatsbyScript.collectedScriptsByPage.delete(pathname);
};
exports.onRenderBody = onRenderBody;
//# sourceMappingURL=gatsby-ssr.js.map
;