58 lines
2.7 KiB
JavaScript
58 lines
2.7 KiB
JavaScript
"use strict";
|
|
Object.defineProperty(exports, "__esModule", {
|
|
value: true
|
|
});
|
|
Object.defineProperty(exports, "createInitialRouterState", {
|
|
enumerable: true,
|
|
get: function() {
|
|
return createInitialRouterState;
|
|
}
|
|
});
|
|
const _approutercontextsharedruntime = require("../../../shared/lib/app-router-context.shared-runtime");
|
|
const _createhreffromurl = require("./create-href-from-url");
|
|
const _filllazyitemstillleafwithhead = require("./fill-lazy-items-till-leaf-with-head");
|
|
const _computechangedpath = require("./compute-changed-path");
|
|
function createInitialRouterState(param) {
|
|
let { buildId, initialTree, children, initialCanonicalUrl, initialParallelRoutes, isServer, location, initialHead } = param;
|
|
const cache = {
|
|
status: _approutercontextsharedruntime.CacheStates.READY,
|
|
data: null,
|
|
subTreeData: children,
|
|
// The cache gets seeded during the first render. `initialParallelRoutes` ensures the cache from the first render is there during the second render.
|
|
parallelRoutes: isServer ? new Map() : initialParallelRoutes
|
|
};
|
|
// When the cache hasn't been seeded yet we fill the cache with the head.
|
|
if (initialParallelRoutes === null || initialParallelRoutes.size === 0) {
|
|
(0, _filllazyitemstillleafwithhead.fillLazyItemsTillLeafWithHead)(cache, undefined, initialTree, initialHead);
|
|
}
|
|
var // the || operator is intentional, the pathname can be an empty string
|
|
_ref;
|
|
return {
|
|
buildId,
|
|
tree: initialTree,
|
|
cache,
|
|
prefetchCache: new Map(),
|
|
pushRef: {
|
|
pendingPush: false,
|
|
mpaNavigation: false
|
|
},
|
|
focusAndScrollRef: {
|
|
apply: false,
|
|
onlyHashChange: false,
|
|
hashFragment: null,
|
|
segmentPaths: []
|
|
},
|
|
canonicalUrl: // location.href is read as the initial value for canonicalUrl in the browser
|
|
// This is safe to do as canonicalUrl can't be rendered, it's only used to control the history updates in the useEffect further down in this file.
|
|
location ? (0, _createhreffromurl.createHrefFromUrl)(location) : initialCanonicalUrl,
|
|
nextUrl: (_ref = (0, _computechangedpath.extractPathFromFlightRouterState)(initialTree) || (location == null ? void 0 : location.pathname)) != null ? _ref : null
|
|
};
|
|
}
|
|
|
|
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=create-initial-router-state.js.map
|