UNPKG

vike

Version:

The Framework *You* Control - Next.js & Nuxt alternative for unprecedented flexibility and dependability.

28 lines (27 loc) 1.42 kB
export { createPageContextClientSide }; import { createPageContextObject, createPageContextShared } from '../../shared/createPageContextShared.js'; import { getPageContextUrlComputed } from '../../shared/getPageContextUrlComputed.js'; import { getBaseServer } from './getBaseServer.js'; import { getGlobalContextClientInternal } from './globalContext.js'; import { assert, augmentType, isBaseServer, objectAssign } from './utils.js'; async function createPageContextClientSide(urlOriginal) { const globalContext = await getGlobalContextClientInternal(); const baseServer = getBaseServer(); assert(isBaseServer(baseServer)); const pageContextCreated = createPageContextObject(); objectAssign(pageContextCreated, { isClientSide: true, isPrerendering: false, urlOriginal, _globalContext: globalContext, _pageFilesAll: globalContext._pageFilesAll, // TODO/v1-release: remove _urlHandler: null, _urlRewrite: null, _baseServer: baseServer, }); const pageContextUrlComputed = getPageContextUrlComputed(pageContextCreated); objectAssign(pageContextCreated, pageContextUrlComputed); const pageContextAugmented = await createPageContextShared(pageContextCreated, globalContext._pageConfigGlobal, globalContext._vikeConfigPublicGlobal); augmentType(pageContextCreated, pageContextAugmented); return pageContextCreated; }