next
Version:
The React Framework
50 lines (48 loc) • 2.45 kB
JavaScript
'use client';
;
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "ClientPageRoot", {
enumerable: true,
get: function() {
return ClientPageRoot;
}
});
const _jsxruntime = require("react/jsx-runtime");
const _approutercontextsharedruntime = require("../../shared/lib/app-router-context.shared-runtime");
const _react = require("react");
const _routeparams = require("../route-params");
const _hooksclientcontextsharedruntime = require("../../shared/lib/hooks-client-context.shared-runtime");
const _clientboundaryparams = require("./client-boundary-params");
function ClientPageRoot({ Component, serverProvidedParams }) {
let searchParams;
let params;
if (serverProvidedParams !== null) {
searchParams = serverProvidedParams.searchParams;
params = serverProvidedParams.params;
} else {
// When Cache Components is enabled, the server does not pass the params as
// props; they are parsed on the client and passed via context.
const layoutRouterContext = (0, _react.use)(_approutercontextsharedruntime.LayoutRouterContext);
params = layoutRouterContext !== null ? layoutRouterContext.parentParams : {};
// This is an intentional behavior change: when Cache Components is enabled,
// client segments receive the "canonical" search params, not the
// rewritten ones. Users should either call useSearchParams directly or pass
// the rewritten ones in from a Server Component.
// TODO: Log a deprecation error when this object is accessed
searchParams = (0, _routeparams.urlSearchParamsToParsedUrlQuery)((0, _react.use)(_hooksclientcontextsharedruntime.SearchParamsContext));
}
const clientSearchParams = (0, _clientboundaryparams.createClientSearchParams)(searchParams);
const clientParams = (0, _clientboundaryparams.createClientParams)(params);
return /*#__PURE__*/ (0, _jsxruntime.jsx)(Component, {
params: clientParams,
searchParams: clientSearchParams
});
}
if ((typeof exports.default === 'function' || (typeof exports.default === 'object' && exports.default !== null)) && typeof exports.default.__esModule === 'undefined') {
Object.defineProperty(exports.default, '__esModule', { value: true });
Object.assign(exports.default, exports);
module.exports = exports.default;
}
//# sourceMappingURL=client-page.js.map