@alignable/bifrost 0.0.29 → 0.0.31
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +12 -8
- package/dist/index.js +8 -0
- package/dist/index.js.map +1 -1
- package/dist/{internal-c8c22383.d.ts → internal-b4ad8d6b.d.ts} +6 -4
- package/dist/proxy/pages/onBeforeRender.d.ts +1 -1
- package/dist/proxy/pages/onRenderClient.d.ts +1 -1
- package/dist/proxy/pages/onRenderHtml.d.ts +1 -1
- package/dist/proxy/pages/restorationVisit/onRenderClient.d.ts +1 -1
- package/dist/renderer/+config.js +2 -1
- package/dist/renderer/+config.js.map +1 -1
- package/dist/renderer/getConfigOrPageContext.d.ts +1 -1
- package/dist/renderer/onBeforeRoute.d.ts +15 -2
- package/dist/renderer/onBeforeRoute.js +29 -23
- package/dist/renderer/onBeforeRoute.js.map +1 -1
- package/dist/renderer/onRenderClient.d.ts +1 -1
- package/dist/renderer/onRenderClient.js +4 -0
- package/dist/renderer/onRenderClient.js.map +1 -1
- package/dist/renderer/onRenderHtml.d.ts +1 -1
- package/dist/renderer/usePageContext.d.ts +1 -1
- package/dist/renderer/utils/buildHead.d.ts +1 -1
- package/package.json +3 -3
package/dist/index.d.ts
CHANGED
|
@@ -1,15 +1,19 @@
|
|
|
1
|
-
|
|
2
|
-
import {
|
|
3
|
-
|
|
1
|
+
export { Config, GuardAsync, GuardSync, Meta, OnBeforePrerenderStartAsync, OnBeforePrerenderStartSync, OnBeforeRenderAsync, OnBeforeRenderSync, OnBeforeRouteAsync, OnBeforeRouteSync, OnHydrationEndAsync, OnHydrationEndSync, OnPageTransitionEndAsync, OnPageTransitionEndSync, OnPageTransitionStartAsync, OnPageTransitionStartSync, OnPrerenderStartAsync, OnPrerenderStartSync, OnRenderClientAsync, OnRenderClientSync, OnRenderHtmlAsync, OnRenderHtmlSync, RouteAsync, RouteSync } from 'vike/types';
|
|
2
|
+
import { navigate as navigate$1 } from 'vike/client/router';
|
|
3
|
+
import { A as ApplicationFacingPageContext, a as AugmentMe } from './internal-b4ad8d6b.js';
|
|
4
|
+
export { N as BifrostConfig, P as BifrostProxyConfig, D as DocumentProps, b as LayoutComponent, L as LayoutMap, c as PageContext } from './internal-b4ad8d6b.js';
|
|
4
5
|
export { PageContextProvider, usePageContext } from './renderer/usePageContext.js';
|
|
5
6
|
import 'react';
|
|
6
7
|
import './proxy/pages/_config.js';
|
|
7
8
|
import './renderer/_config.js';
|
|
8
9
|
import './controller-16e58bbd.js';
|
|
9
10
|
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
11
|
+
declare const navigate: typeof navigate$1;
|
|
12
|
+
declare global {
|
|
13
|
+
namespace Vike {
|
|
14
|
+
interface PageContext extends ApplicationFacingPageContext, AugmentMe.PageContextInit {
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
}
|
|
14
18
|
|
|
15
|
-
export { AugmentMe,
|
|
19
|
+
export { AugmentMe, navigate };
|
package/dist/index.js
CHANGED
|
@@ -3,8 +3,16 @@ import {
|
|
|
3
3
|
usePageContext
|
|
4
4
|
} from "./chunk-IYGONC4I.js";
|
|
5
5
|
import "./chunk-EYYCKU6F.js";
|
|
6
|
+
|
|
7
|
+
// index.ts
|
|
8
|
+
var navigate = async (url, opts) => {
|
|
9
|
+
window.Turbolinks.visit(url, {
|
|
10
|
+
action: opts?.overwriteLastHistoryEntry ? "replace" : "advance"
|
|
11
|
+
});
|
|
12
|
+
};
|
|
6
13
|
export {
|
|
7
14
|
PageContextProvider,
|
|
15
|
+
navigate,
|
|
8
16
|
usePageContext
|
|
9
17
|
};
|
|
10
18
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
1
|
+
{"version":3,"sources":["../index.ts"],"sourcesContent":["export type {\n Config,\n Meta,\n GuardAsync,\n GuardSync,\n OnBeforePrerenderStartAsync,\n OnBeforePrerenderStartSync,\n OnBeforeRenderAsync,\n OnBeforeRenderSync,\n OnBeforeRouteAsync,\n OnBeforeRouteSync,\n OnHydrationEndAsync,\n OnHydrationEndSync,\n OnPageTransitionEndAsync,\n OnPageTransitionEndSync,\n OnPageTransitionStartAsync,\n OnPageTransitionStartSync,\n OnPrerenderStartAsync,\n OnPrerenderStartSync,\n OnRenderClientAsync,\n OnRenderClientSync,\n OnRenderHtmlAsync,\n OnRenderHtmlSync,\n RouteAsync,\n RouteSync,\n} from \"vike/types\";\nimport { navigate as vikeNavigate } from \"vike/client/router\";\nimport { ApplicationFacingPageContext, AugmentMe } from \"./types/internal.js\";\n\nexport type {\n DocumentProps,\n LayoutMap,\n NoProxyConfig as BifrostConfig,\n ProxyConfig as BifrostProxyConfig,\n LayoutComponent,\n AugmentMe,\n PageContext,\n} from \"./types/internal\";\nexport {\n usePageContext,\n PageContextProvider,\n} from \"./renderer/usePageContext.js\";\n\nexport const navigate: typeof vikeNavigate = async (url, opts) => {\n window.Turbolinks.visit(url, {\n action: opts?.overwriteLastHistoryEntry ? \"replace\" : \"advance\",\n });\n};\n\ndeclare global {\n namespace Vike {\n interface PageContext\n extends ApplicationFacingPageContext,\n AugmentMe.PageContextInit {}\n }\n}\n"],"mappings":";;;;;;;AA2CO,IAAM,WAAgC,OAAO,KAAK,SAAS;AAChE,SAAO,WAAW,MAAM,KAAK;AAAA,IAC3B,QAAQ,MAAM,4BAA4B,YAAY;AAAA,EACxD,CAAC;AACH;","names":[]}
|
|
@@ -79,16 +79,18 @@ type NoProxyConfig = ConfigConstructor<typeof _default$1, {
|
|
|
79
79
|
}>;
|
|
80
80
|
type PageProps = Record<string, unknown>;
|
|
81
81
|
type Page = React.ComponentType<PageProps>;
|
|
82
|
-
|
|
82
|
+
interface ApplicationFacingPageContext {
|
|
83
83
|
pageProps: PageProps;
|
|
84
|
-
redirectTo?: string;
|
|
85
84
|
documentProps?: DocumentProps;
|
|
86
85
|
layoutProps: AugmentMe.LayoutProps;
|
|
86
|
+
}
|
|
87
|
+
interface PageContextNoProxyCommon extends ApplicationFacingPageContext {
|
|
88
|
+
redirectTo?: string;
|
|
87
89
|
config: NoProxyConfig;
|
|
88
|
-
}
|
|
90
|
+
}
|
|
89
91
|
type PageContextNoProxyServer = PageContextBuiltInServer<Page> & PageContextNoProxyCommon;
|
|
90
92
|
type PageContextNoProxyClient = PageContextBuiltInClientWithClientRouting<Page> & PageContextNoProxyCommon;
|
|
91
93
|
type PageContextNoProxy = PageContextNoProxyServer | PageContextNoProxyClient;
|
|
92
94
|
type PageContext = PageContextNoProxy | PageContextProxy | PageContextProxyRestorationVisit;
|
|
93
95
|
|
|
94
|
-
export {
|
|
96
|
+
export { ApplicationFacingPageContext as A, DocumentProps as D, LayoutMap as L, NoProxyConfig as N, ProxyConfig as P, AugmentMe as a, LayoutComponent as b, PageContext as c, PageContextNoProxy as d, PageContextNoProxyClient as e, PageContextNoProxyServer as f, PageContextProxyInit as g, PageContextProxyClient as h, PageContextProxyServer as i, PageContextProxyRestorationVisit as j };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as vike_dist_esm_node_runtime_html_renderHtml_js from 'vike/dist/esm/node/runtime/html/renderHtml.js';
|
|
2
|
-
import {
|
|
2
|
+
import { i as PageContextProxyServer } from '../../internal-b4ad8d6b.js';
|
|
3
3
|
import 'react';
|
|
4
4
|
import 'vike/types';
|
|
5
5
|
import './_config.js';
|
package/dist/renderer/+config.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../renderer/+config.ts"],"sourcesContent":["import { type Config } from \"vike/types\";\n\nconst passToClient = [\n \"layoutProps\",\n \"pageProps\",\n \"redirectTo\",\n \"documentProps\",\n \"scripts\",\n];\nexport default {\n passToClient,\n onRenderClient: \"import:@alignable/bifrost/renderer/onRenderClient\",\n onRenderHtml: \"import:@alignable/bifrost/renderer/onRenderHtml\",\n onBeforeRoute: \"import:@alignable/bifrost/renderer/onBeforeRoute\",\n clientRouting: true,\n hydrationCanBeAborted: true,\n meta: {\n Layout: { env: \"server-and-client\" },\n layoutProps: { env: \"server-and-client\" },\n documentProps: { env: \"server-and-client\" },\n scripts: { env: \"server-and-client\" },\n favicon: { env: \"server-only\" },\n onClientInit: { env: \"client-only\" },\n },\n} satisfies Config;\n"],"mappings":";AAEA,IAAM,eAAe;AAAA,EACnB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AACA,IAAO,iBAAQ;AAAA,EACb;AAAA,EACA,gBAAgB;AAAA,EAChB,cAAc;AAAA,EACd,eAAe;AAAA,EACf,eAAe;AAAA,EACf,uBAAuB;AAAA,EACvB,MAAM;AAAA,IACJ,QAAQ,EAAE,KAAK,oBAAoB;AAAA,IACnC,aAAa,EAAE,KAAK,oBAAoB;AAAA,IACxC,eAAe,EAAE,KAAK,oBAAoB;AAAA,IAC1C,SAAS,EAAE,KAAK,oBAAoB;AAAA,IACpC,SAAS,EAAE,KAAK,cAAc;AAAA,IAC9B,cAAc,EAAE,KAAK,cAAc;AAAA,EACrC;AACF;","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../renderer/+config.ts"],"sourcesContent":["import { type Config } from \"vike/types\";\n\nconst passToClient = [\n \"layoutProps\",\n \"pageProps\",\n \"redirectTo\",\n \"documentProps\",\n \"scripts\",\n \"is404\",\n];\nexport default {\n passToClient,\n onRenderClient: \"import:@alignable/bifrost/renderer/onRenderClient\",\n onRenderHtml: \"import:@alignable/bifrost/renderer/onRenderHtml\",\n onBeforeRoute: \"import:@alignable/bifrost/renderer/onBeforeRoute\",\n clientRouting: true,\n hydrationCanBeAborted: true,\n meta: {\n Layout: { env: \"server-and-client\" },\n layoutProps: { env: \"server-and-client\" },\n documentProps: { env: \"server-and-client\" },\n scripts: { env: \"server-and-client\" },\n favicon: { env: \"server-only\" },\n onClientInit: { env: \"client-only\" },\n },\n} satisfies Config;\n"],"mappings":";AAEA,IAAM,eAAe;AAAA,EACnB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AACA,IAAO,iBAAQ;AAAA,EACb;AAAA,EACA,gBAAgB;AAAA,EAChB,cAAc;AAAA,EACd,eAAe;AAAA,EACf,eAAe;AAAA,EACf,uBAAuB;AAAA,EACvB,MAAM;AAAA,IACJ,QAAQ,EAAE,KAAK,oBAAoB;AAAA,IACnC,aAAa,EAAE,KAAK,oBAAoB;AAAA,IACxC,eAAe,EAAE,KAAK,oBAAoB;AAAA,IAC1C,SAAS,EAAE,KAAK,oBAAoB;AAAA,IACpC,SAAS,EAAE,KAAK,cAAc;AAAA,IAC9B,cAAc,EAAE,KAAK,cAAc;AAAA,EACrC;AACF;","names":[]}
|
|
@@ -1,10 +1,23 @@
|
|
|
1
1
|
import { S as Snapshot } from '../controller-16e58bbd.js';
|
|
2
2
|
|
|
3
|
-
declare
|
|
3
|
+
declare const onBeforeRoute: () => {
|
|
4
4
|
pageContext: {
|
|
5
5
|
snapshot: Snapshot;
|
|
6
|
+
isBackwardNavigation: boolean;
|
|
6
7
|
_pageId: string;
|
|
7
8
|
};
|
|
8
|
-
} |
|
|
9
|
+
} | {
|
|
10
|
+
pageContext: {
|
|
11
|
+
isBackwardNavigation: boolean;
|
|
12
|
+
snapshot?: undefined;
|
|
13
|
+
_pageId?: undefined;
|
|
14
|
+
};
|
|
15
|
+
} | {
|
|
16
|
+
pageContext: {
|
|
17
|
+
snapshot?: undefined;
|
|
18
|
+
isBackwardNavigation?: undefined;
|
|
19
|
+
_pageId?: undefined;
|
|
20
|
+
};
|
|
21
|
+
};
|
|
9
22
|
|
|
10
23
|
export { onBeforeRoute as default };
|
|
@@ -1,29 +1,35 @@
|
|
|
1
1
|
// renderer/onBeforeRoute.ts
|
|
2
|
-
|
|
3
|
-
if (typeof window
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
2
|
+
var onBeforeRoute = () => {
|
|
3
|
+
if (typeof window !== "undefined") {
|
|
4
|
+
const Turbolinks = window.Turbolinks;
|
|
5
|
+
const currentVisit = Turbolinks.controller.currentVisit;
|
|
6
|
+
if (!currentVisit || currentVisit.state === "completed") {
|
|
7
|
+
const snapshot = Turbolinks.controller.getCachedSnapshotForLocation(
|
|
8
|
+
window.location.href
|
|
9
|
+
);
|
|
10
|
+
Turbolinks.controller.historyPoppedToLocationWithRestorationIdentifier(
|
|
11
|
+
window.location.href,
|
|
12
|
+
""
|
|
13
|
+
);
|
|
14
|
+
if (!!snapshot) {
|
|
15
|
+
return {
|
|
16
|
+
pageContext: {
|
|
17
|
+
snapshot,
|
|
18
|
+
isBackwardNavigation: true,
|
|
19
|
+
_pageId: "/proxy/pages/restorationVisit"
|
|
20
|
+
}
|
|
21
|
+
};
|
|
22
|
+
} else {
|
|
23
|
+
return {
|
|
24
|
+
pageContext: { isBackwardNavigation: true }
|
|
25
|
+
};
|
|
26
|
+
}
|
|
22
27
|
}
|
|
23
28
|
}
|
|
24
|
-
return
|
|
25
|
-
}
|
|
29
|
+
return { pageContext: {} };
|
|
30
|
+
};
|
|
31
|
+
var onBeforeRoute_default = onBeforeRoute;
|
|
26
32
|
export {
|
|
27
|
-
|
|
33
|
+
onBeforeRoute_default as default
|
|
28
34
|
};
|
|
29
35
|
//# sourceMappingURL=onBeforeRoute.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../renderer/onBeforeRoute.ts"],"sourcesContent":["// do NOT import turbolinks in this file. It is used on server side.\n\
|
|
1
|
+
{"version":3,"sources":["../../renderer/onBeforeRoute.ts"],"sourcesContent":["// do NOT import turbolinks in this file. It is used on server side.\n\nconst onBeforeRoute = () => {\n if (typeof window !== \"undefined\") {\n const Turbolinks = window.Turbolinks;\n\n const currentVisit = Turbolinks.controller.currentVisit;\n if (!currentVisit || currentVisit.state === \"completed\") {\n // old/nonexistent currentVisit means VPS is doing history navigation. Ideally we might turn off VPS' onpopstate listener.\n const snapshot = Turbolinks.controller.getCachedSnapshotForLocation(\n window.location.href\n );\n Turbolinks.controller.historyPoppedToLocationWithRestorationIdentifier(\n window.location.href,\n \"\"\n );\n\n if (!!snapshot) {\n return {\n pageContext: {\n snapshot,\n isBackwardNavigation: true,\n _pageId: \"/proxy/pages/restorationVisit\",\n },\n };\n } else {\n return {\n pageContext: { isBackwardNavigation: true },\n };\n }\n }\n }\n return { pageContext: {} };\n};\n\nexport default onBeforeRoute;\n"],"mappings":";AAEA,IAAM,gBAAgB,MAAM;AAC1B,MAAI,OAAO,WAAW,aAAa;AACjC,UAAM,aAAa,OAAO;AAE1B,UAAM,eAAe,WAAW,WAAW;AAC3C,QAAI,CAAC,gBAAgB,aAAa,UAAU,aAAa;AAEvD,YAAM,WAAW,WAAW,WAAW;AAAA,QACrC,OAAO,SAAS;AAAA,MAClB;AACA,iBAAW,WAAW;AAAA,QACpB,OAAO,SAAS;AAAA,QAChB;AAAA,MACF;AAEA,UAAI,CAAC,CAAC,UAAU;AACd,eAAO;AAAA,UACL,aAAa;AAAA,YACX;AAAA,YACA,sBAAsB;AAAA,YACtB,SAAS;AAAA,UACX;AAAA,QACF;AAAA,MACF,OAAO;AACL,eAAO;AAAA,UACL,aAAa,EAAE,sBAAsB,KAAK;AAAA,QAC5C;AAAA,MACF;AAAA,IACF;AAAA,EACF;AACA,SAAO,EAAE,aAAa,CAAC,EAAE;AAC3B;AAEA,IAAO,wBAAQ;","names":[]}
|
|
@@ -29,6 +29,10 @@ async function onRenderClient(pageContext) {
|
|
|
29
29
|
Turbolinks.visit(pageContext.redirectTo);
|
|
30
30
|
return;
|
|
31
31
|
}
|
|
32
|
+
if (pageContext.isBackwardNavigation && pageContext.is404) {
|
|
33
|
+
Turbolinks.controller.viewInvalidated();
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
32
36
|
const { Page, pageProps } = pageContext;
|
|
33
37
|
const { Layout = PassThruLayout } = pageContext.config;
|
|
34
38
|
const layoutProps = getPageContextOrConfig(pageContext, "layoutProps") || {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../renderer/onRenderClient.tsx"],"sourcesContent":["import React, { PropsWithChildren } from \"react\";\nimport { renderReact } from \"../lib/renderReact.js\";\nimport { PageContextNoProxyClient } from \"../types/internal.js\";\nimport { PageShell } from \"../lib/PageShell.js\";\nimport { Turbolinks } from \"../lib/turbolinks/index.js\";\nimport { documentPropsToReact } from \"./utils/buildHead.js\";\nimport { getPageContextOrConfig } from \"./getConfigOrPageContext.js\";\nimport { createRoot } from \"react-dom/client\";\nimport { runClientInit } from \"../lib/runClientInit.js\";\n\nTurbolinks.start();\n\nconst PassThruLayout: React.ComponentType<PropsWithChildren> = ({\n children,\n}) => <>{children}</>;\n\nexport default async function onRenderClient(\n pageContext: PageContextNoProxyClient\n) {\n if (pageContext.redirectTo) {\n Turbolinks.visit(pageContext.redirectTo);\n return;\n }\n\n const { Page, pageProps } = pageContext;\n const { Layout = PassThruLayout } = pageContext.config;\n const layoutProps = getPageContextOrConfig(pageContext, \"layoutProps\") || {};\n\n if (!Page)\n throw new Error(\"Client-side render() hook expects Page to be exported\");\n\n const page = (\n <PageShell pageContext={pageContext}>\n <Layout {...layoutProps}>\n <Page {...pageProps} />\n </Layout>\n </PageShell>\n );\n if (pageContext.isHydration) {\n // During hydration of initial ssr, body is in dom, not page props (to avoid double-send)\n await runClientInit(pageContext.configEntries);\n renderReact(page, pageContext.isHydration);\n } else {\n const head = document.createElement(\"head\");\n createRoot(head).render(\n documentPropsToReact(\n getPageContextOrConfig(pageContext, \"documentProps\") || {}\n )\n );\n pageContext.config.scripts?.forEach((s) => {\n head.insertAdjacentHTML(\"beforeend\", s);\n });\n\n requestAnimationFrame(() => {\n Turbolinks._vpsOnRenderClient(head, false, false, () => {\n // clear anything on body\n document.body\n .getAttributeNames()\n .forEach((n) => document.body.removeAttribute(n));\n renderReact(page, pageContext.isHydration);\n });\n });\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,OAAO,WAAkC;AAOzC,SAAS,kBAAkB;AAG3B,WAAW,MAAM;AAEjB,IAAM,iBAAyD,CAAC;AAAA,EAC9D;AACF,MAAM,0DAAG,QAAS;AAElB,eAAO,eACL,aACA;AACA,MAAI,YAAY,YAAY;AAC1B,eAAW,MAAM,YAAY,UAAU;AACvC;AAAA,EACF;AAEA,QAAM,EAAE,MAAM,UAAU,IAAI;AAC5B,QAAM,EAAE,SAAS,eAAe,IAAI,YAAY;AAChD,QAAM,cAAc,uBAAuB,aAAa,aAAa,KAAK,CAAC;AAE3E,MAAI,CAAC;AACH,UAAM,IAAI,MAAM,uDAAuD;AAEzE,QAAM,OACJ,oCAAC,aAAU,eACT,oCAAC,UAAQ,GAAG,eACV,oCAAC,QAAM,GAAG,WAAW,CACvB,CACF;AAEF,MAAI,YAAY,aAAa;AAE3B,UAAM,cAAc,YAAY,aAAa;AAC7C,gBAAY,MAAM,YAAY,WAAW;AAAA,EAC3C,OAAO;AACL,UAAM,OAAO,SAAS,cAAc,MAAM;AAC1C,eAAW,IAAI,EAAE;AAAA,MACf;AAAA,QACE,uBAAuB,aAAa,eAAe,KAAK,CAAC;AAAA,MAC3D;AAAA,IACF;AACA,gBAAY,OAAO,SAAS,QAAQ,CAAC,MAAM;AACzC,WAAK,mBAAmB,aAAa,CAAC;AAAA,IACxC,CAAC;AAED,0BAAsB,MAAM;AAC1B,iBAAW,mBAAmB,MAAM,OAAO,OAAO,MAAM;AAEtD,iBAAS,KACN,kBAAkB,EAClB,QAAQ,CAAC,MAAM,SAAS,KAAK,gBAAgB,CAAC,CAAC;AAClD,oBAAY,MAAM,YAAY,WAAW;AAAA,MAC3C,CAAC;AAAA,IACH,CAAC;AAAA,EACH;AACF;","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../renderer/onRenderClient.tsx"],"sourcesContent":["import React, { PropsWithChildren } from \"react\";\nimport { renderReact } from \"../lib/renderReact.js\";\nimport { PageContextNoProxyClient } from \"../types/internal.js\";\nimport { PageShell } from \"../lib/PageShell.js\";\nimport { Turbolinks } from \"../lib/turbolinks/index.js\";\nimport { documentPropsToReact } from \"./utils/buildHead.js\";\nimport { getPageContextOrConfig } from \"./getConfigOrPageContext.js\";\nimport { createRoot } from \"react-dom/client\";\nimport { runClientInit } from \"../lib/runClientInit.js\";\n\nTurbolinks.start();\n\nconst PassThruLayout: React.ComponentType<PropsWithChildren> = ({\n children,\n}) => <>{children}</>;\n\nexport default async function onRenderClient(\n pageContext: PageContextNoProxyClient\n) {\n if (pageContext.redirectTo) {\n Turbolinks.visit(pageContext.redirectTo);\n return;\n }\n\n // Back button leading to 404 means we hit a page bifrost can't handle in the browser history.\n // Reload allows us to revert to passthru proxy and/or let ALB handle\n if (pageContext.isBackwardNavigation && pageContext.is404) {\n Turbolinks.controller.viewInvalidated();\n return;\n }\n\n const { Page, pageProps } = pageContext;\n const { Layout = PassThruLayout } = pageContext.config;\n const layoutProps = getPageContextOrConfig(pageContext, \"layoutProps\") || {};\n\n if (!Page)\n throw new Error(\"Client-side render() hook expects Page to be exported\");\n\n const page = (\n <PageShell pageContext={pageContext}>\n <Layout {...layoutProps}>\n <Page {...pageProps} />\n </Layout>\n </PageShell>\n );\n if (pageContext.isHydration) {\n // During hydration of initial ssr, body is in dom, not page props (to avoid double-send)\n await runClientInit(pageContext.configEntries);\n renderReact(page, pageContext.isHydration);\n } else {\n const head = document.createElement(\"head\");\n createRoot(head).render(\n documentPropsToReact(\n getPageContextOrConfig(pageContext, \"documentProps\") || {}\n )\n );\n pageContext.config.scripts?.forEach((s) => {\n head.insertAdjacentHTML(\"beforeend\", s);\n });\n\n requestAnimationFrame(() => {\n Turbolinks._vpsOnRenderClient(head, false, false, () => {\n // clear anything on body\n document.body\n .getAttributeNames()\n .forEach((n) => document.body.removeAttribute(n));\n renderReact(page, pageContext.isHydration);\n });\n });\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,OAAO,WAAkC;AAOzC,SAAS,kBAAkB;AAG3B,WAAW,MAAM;AAEjB,IAAM,iBAAyD,CAAC;AAAA,EAC9D;AACF,MAAM,0DAAG,QAAS;AAElB,eAAO,eACL,aACA;AACA,MAAI,YAAY,YAAY;AAC1B,eAAW,MAAM,YAAY,UAAU;AACvC;AAAA,EACF;AAIA,MAAI,YAAY,wBAAwB,YAAY,OAAO;AACzD,eAAW,WAAW,gBAAgB;AACtC;AAAA,EACF;AAEA,QAAM,EAAE,MAAM,UAAU,IAAI;AAC5B,QAAM,EAAE,SAAS,eAAe,IAAI,YAAY;AAChD,QAAM,cAAc,uBAAuB,aAAa,aAAa,KAAK,CAAC;AAE3E,MAAI,CAAC;AACH,UAAM,IAAI,MAAM,uDAAuD;AAEzE,QAAM,OACJ,oCAAC,aAAU,eACT,oCAAC,UAAQ,GAAG,eACV,oCAAC,QAAM,GAAG,WAAW,CACvB,CACF;AAEF,MAAI,YAAY,aAAa;AAE3B,UAAM,cAAc,YAAY,aAAa;AAC7C,gBAAY,MAAM,YAAY,WAAW;AAAA,EAC3C,OAAO;AACL,UAAM,OAAO,SAAS,cAAc,MAAM;AAC1C,eAAW,IAAI,EAAE;AAAA,MACf;AAAA,QACE,uBAAuB,aAAa,eAAe,KAAK,CAAC;AAAA,MAC3D;AAAA,IACF;AACA,gBAAY,OAAO,SAAS,QAAQ,CAAC,MAAM;AACzC,WAAK,mBAAmB,aAAa,CAAC;AAAA,IACxC,CAAC;AAED,0BAAsB,MAAM;AAC1B,iBAAW,mBAAmB,MAAM,OAAO,OAAO,MAAM;AAEtD,iBAAS,KACN,kBAAkB,EAClB,QAAQ,CAAC,MAAM,SAAS,KAAK,gBAAgB,CAAC,CAAC;AAClD,oBAAY,MAAM,YAAY,WAAW;AAAA,MAC3C,CAAC;AAAA,IACH,CAAC;AAAA,EACH;AACF;","names":[]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as vike_dist_esm_node_runtime_html_renderHtml_js from 'vike/dist/esm/node/runtime/html/renderHtml.js';
|
|
2
|
-
import {
|
|
2
|
+
import { f as PageContextNoProxyServer } from '../internal-b4ad8d6b.js';
|
|
3
3
|
import 'react';
|
|
4
4
|
import 'vike/types';
|
|
5
5
|
import '../proxy/pages/_config.js';
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@alignable/bifrost",
|
|
3
3
|
"repository": "https://github.com/Alignable/bifrost.git",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.31",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"types": "./dist/index.d.ts",
|
|
7
7
|
"exports": {
|
|
@@ -83,14 +83,14 @@
|
|
|
83
83
|
"react-dom": "^18.x.x",
|
|
84
84
|
"tough-cookie": "^4.1.2",
|
|
85
85
|
"uuid": "^9.0.0",
|
|
86
|
-
"vike": "0.4.144-commit-
|
|
86
|
+
"vike": "0.4.144-commit-6aef8a6"
|
|
87
87
|
},
|
|
88
88
|
"peerDependencies": {
|
|
89
89
|
"jsdom": "^22.1.0",
|
|
90
90
|
"react": "^18.x.x",
|
|
91
91
|
"react-dom": "^18.x.x",
|
|
92
92
|
"typescript": ">=4.7",
|
|
93
|
-
"vike": "0.4.144-commit-
|
|
93
|
+
"vike": "0.4.144-commit-6aef8a6"
|
|
94
94
|
},
|
|
95
95
|
"devDependencies": {
|
|
96
96
|
"@types/jsdom": "^21.1.2",
|