@alignable/bifrost 0.1.0-rc.0 → 0.1.1
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/{chunk-73ZTZZ2B.js → chunk-5SP2QGEH.js} +2 -4
- package/dist/{chunk-73ZTZZ2B.js.map → chunk-5SP2QGEH.js.map} +1 -1
- package/dist/{chunk-SAMMNBO4.js → chunk-XMNZZA6S.js} +2 -2
- package/dist/{chunk-SAMMNBO4.js.map → chunk-XMNZZA6S.js.map} +1 -1
- package/dist/renderer/+config.js +2 -2
- package/dist/renderer/+config.js.map +1 -1
- package/dist/renderer/{+config.d.ts → _config.d.ts} +5 -0
- package/dist/renderer/_error/Page.d.ts +3 -1
- package/dist/renderer/bifrost/onRenderHtml.d.ts +2 -2
- package/dist/renderer/bifrost/onRenderHtml.js +1 -1
- package/dist/renderer/onBeforeRoute.d.ts +2 -9
- package/dist/renderer/onBeforeRoute.js +3 -5
- package/dist/renderer/onBeforeRoute.js.map +1 -1
- package/dist/renderer/onRenderHtml.d.ts +7 -7
- package/dist/renderer/onRenderHtml.js +12 -10
- package/dist/renderer/onRenderHtml.js.map +1 -1
- package/dist/renderer/useNavigation.d.ts +1 -1
- package/dist/renderer/usePageContext.d.ts +1 -1
- package/dist/renderer/wrapped/onRenderHtml.d.ts +5 -3
- package/dist/renderer/wrapped/onRenderHtml.js +1 -1
- package/package.json +13 -13
|
@@ -66,13 +66,11 @@ async function bifrostOnRenderHtml(pageContext) {
|
|
|
66
66
|
</html>`;
|
|
67
67
|
return {
|
|
68
68
|
documentHtml,
|
|
69
|
-
pageContext: {
|
|
70
|
-
// We can add some `pageContext` here, which is useful if we want to do page redirection https://vike.com/page-redirection
|
|
71
|
-
}
|
|
69
|
+
pageContext: {}
|
|
72
70
|
};
|
|
73
71
|
}
|
|
74
72
|
|
|
75
73
|
export {
|
|
76
74
|
bifrostOnRenderHtml
|
|
77
75
|
};
|
|
78
|
-
//# sourceMappingURL=chunk-
|
|
76
|
+
//# sourceMappingURL=chunk-5SP2QGEH.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../renderer/bifrost/onRenderHtml.tsx"],"sourcesContent":["import React from \"react\";\nimport ReactDOMServer from \"react-dom/server\";\nimport { escapeInject, dangerouslySkipEscape } from \"vike/server\";\nimport { PageShell } from \"../../lib/PageShell\";\nimport { PageContextNoProxyServer } from \"../../types/internal\";\nimport { documentPropsToReact } from \"../utils/buildHead\";\nimport { getPageContextOrConfig } from \"../utils/getConfigOrPageContext\";\n\nexport async function bifrostOnRenderHtml(\n pageContext: PageContextNoProxyServer\n) {\n const { Page, pageProps, redirectTo } = pageContext;\n if (redirectTo) {\n return {\n pageContext: {\n redirectTo,\n },\n };\n }\n const { Layout } = pageContext.config;\n const layoutProps = getPageContextOrConfig(pageContext, \"layoutProps\") || {};\n\n if (!Page)\n throw new Error(\"Server-side render() hook expects Page to be exported\");\n if (!Layout)\n throw new Error(\"Server-side render() hook expects Layout to be exported\");\n\n const pageHtml = ReactDOMServer.renderToString(\n <PageShell pageContext={pageContext}>\n <Layout {...layoutProps}>\n <Page {...pageProps} />\n </Layout>\n </PageShell>\n );\n\n const headHtml = ReactDOMServer.renderToString(\n documentPropsToReact(\n getPageContextOrConfig(pageContext, \"documentProps\") || {}\n )\n );\n\n const bodyAttrs = getPageContextOrConfig(pageContext, \"bodyAttrs\") || [];\n\n const { favicon } = pageContext.config;\n const faviconTag = !favicon\n ? \"\"\n : escapeInject`<link rel=\"icon\" href=\"${favicon}\" />`;\n\n const documentHtml = escapeInject`<!DOCTYPE html>\n <html lang=\"en\">\n <head>\n ${faviconTag}\n ${dangerouslySkipEscape(headHtml)}\n ${dangerouslySkipEscape(\n (pageContext.config.scripts || []).flatMap((s) => s).join(\"\")\n )}\n ${dangerouslySkipEscape(\n (pageContext.config.dynamicScripts || [])\n .map((s) => s(pageContext))\n .join(\"\")\n )}\n ${dangerouslySkipEscape(`<script>\n window.Turbolinks = {controller:{restorationIdentifier: ''}};\n addEventListener(\"DOMContentLoaded\", () => {\n const event = new Event(\"turbolinks:load\", { bubbles: true, cancelable: true });\n event.data = {url: window.location.href};\n document.dispatchEvent(event); \n })\n </script>`)}\n </head>\n <body ${dangerouslySkipEscape(\n bodyAttrs.map(({ name, value }) => `${name}=\"${value}\"`).join(\" \")\n )}>\n <div id=\"page-view\">${dangerouslySkipEscape(pageHtml)}</div>\n </body>\n </html>`;\n\n return {\n documentHtml,\n pageContext: {
|
|
1
|
+
{"version":3,"sources":["../renderer/bifrost/onRenderHtml.tsx"],"sourcesContent":["import React from \"react\";\nimport ReactDOMServer from \"react-dom/server\";\nimport { escapeInject, dangerouslySkipEscape } from \"vike/server\";\nimport { PageShell } from \"../../lib/PageShell\";\nimport { PageContextNoProxyServer } from \"../../types/internal\";\nimport { documentPropsToReact } from \"../utils/buildHead\";\nimport { getPageContextOrConfig } from \"../utils/getConfigOrPageContext\";\n\nexport async function bifrostOnRenderHtml(\n pageContext: PageContextNoProxyServer\n) {\n const { Page, pageProps, redirectTo } = pageContext;\n if (redirectTo) {\n return {\n pageContext: {\n redirectTo,\n },\n };\n }\n const { Layout } = pageContext.config;\n const layoutProps = getPageContextOrConfig(pageContext, \"layoutProps\") || {};\n\n if (!Page)\n throw new Error(\"Server-side render() hook expects Page to be exported\");\n if (!Layout)\n throw new Error(\"Server-side render() hook expects Layout to be exported\");\n\n const pageHtml = ReactDOMServer.renderToString(\n <PageShell pageContext={pageContext}>\n <Layout {...layoutProps}>\n <Page {...pageProps} />\n </Layout>\n </PageShell>\n );\n\n const headHtml = ReactDOMServer.renderToString(\n documentPropsToReact(\n getPageContextOrConfig(pageContext, \"documentProps\") || {}\n )\n );\n\n const bodyAttrs = getPageContextOrConfig(pageContext, \"bodyAttrs\") || [];\n\n const { favicon } = pageContext.config;\n const faviconTag = !favicon\n ? \"\"\n : escapeInject`<link rel=\"icon\" href=\"${favicon}\" />`;\n\n const documentHtml = escapeInject`<!DOCTYPE html>\n <html lang=\"en\">\n <head>\n ${faviconTag}\n ${dangerouslySkipEscape(headHtml)}\n ${dangerouslySkipEscape(\n (pageContext.config.scripts || []).flatMap((s) => s).join(\"\")\n )}\n ${dangerouslySkipEscape(\n (pageContext.config.dynamicScripts || [])\n .map((s) => s(pageContext))\n .join(\"\")\n )}\n ${dangerouslySkipEscape(`<script>\n window.Turbolinks = {controller:{restorationIdentifier: ''}};\n addEventListener(\"DOMContentLoaded\", () => {\n const event = new Event(\"turbolinks:load\", { bubbles: true, cancelable: true });\n event.data = {url: window.location.href};\n document.dispatchEvent(event); \n })\n </script>`)}\n </head>\n <body ${dangerouslySkipEscape(\n bodyAttrs.map(({ name, value }) => `${name}=\"${value}\"`).join(\" \")\n )}>\n <div id=\"page-view\">${dangerouslySkipEscape(pageHtml)}</div>\n </body>\n </html>`;\n\n return {\n documentHtml,\n pageContext: {},\n };\n}\n"],"mappings":";;;;;;;;;;;AAAA,OAAO,WAAW;AAClB,OAAO,oBAAoB;AAC3B,SAAS,cAAc,6BAA6B;AAMpD,eAAsB,oBACpB,aACA;AACA,QAAM,EAAE,MAAM,WAAW,WAAW,IAAI;AACxC,MAAI,YAAY;AACd,WAAO;AAAA,MACL,aAAa;AAAA,QACX;AAAA,MACF;AAAA,IACF;AAAA,EACF;AACA,QAAM,EAAE,OAAO,IAAI,YAAY;AAC/B,QAAM,cAAc,uBAAuB,aAAa,aAAa,KAAK,CAAC;AAE3E,MAAI,CAAC;AACH,UAAM,IAAI,MAAM,uDAAuD;AACzE,MAAI,CAAC;AACH,UAAM,IAAI,MAAM,yDAAyD;AAE3E,QAAM,WAAW,eAAe;AAAA,IAC9B,oCAAC,aAAU,eACT,oCAAC,UAAQ,GAAG,eACV,oCAAC,QAAM,GAAG,WAAW,CACvB,CACF;AAAA,EACF;AAEA,QAAM,WAAW,eAAe;AAAA,IAC9B;AAAA,MACE,uBAAuB,aAAa,eAAe,KAAK,CAAC;AAAA,IAC3D;AAAA,EACF;AAEA,QAAM,YAAY,uBAAuB,aAAa,WAAW,KAAK,CAAC;AAEvE,QAAM,EAAE,QAAQ,IAAI,YAAY;AAChC,QAAM,aAAa,CAAC,UAChB,KACA,sCAAsC,OAAO;AAEjD,QAAM,eAAe;AAAA;AAAA;AAAA,QAGf,UAAU;AAAA,QACV,sBAAsB,QAAQ,CAAC;AAAA,QAC/B;AAAA,KACC,YAAY,OAAO,WAAW,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE;AAAA,EAC9D,CAAC;AAAA,QACC;AAAA,KACC,YAAY,OAAO,kBAAkB,CAAC,GACpC,IAAI,CAAC,MAAM,EAAE,WAAW,CAAC,EACzB,KAAK,EAAE;AAAA,EACZ,CAAC;AAAA,QACC,sBAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gBAOd,CAAC;AAAA;AAAA,cAEH;AAAA,IACN,UAAU,IAAI,CAAC,EAAE,MAAM,MAAM,MAAM,GAAG,IAAI,KAAK,KAAK,GAAG,EAAE,KAAK,GAAG;AAAA,EACnE,CAAC;AAAA,8BACuB,sBAAsB,QAAQ,CAAC;AAAA;AAAA;AAI3D,SAAO;AAAA,IACL;AAAA,IACA,aAAa,CAAC;AAAA,EAChB;AACF;","names":[]}
|
|
@@ -65,11 +65,11 @@ async function wrappedOnRenderHtml(pageContext) {
|
|
|
65
65
|
pageContext: { layout, layoutProps }
|
|
66
66
|
};
|
|
67
67
|
} else {
|
|
68
|
-
return {};
|
|
68
|
+
return { documentHtml: dangerouslySkipEscape("") };
|
|
69
69
|
}
|
|
70
70
|
}
|
|
71
71
|
|
|
72
72
|
export {
|
|
73
73
|
wrappedOnRenderHtml
|
|
74
74
|
};
|
|
75
|
-
//# sourceMappingURL=chunk-
|
|
75
|
+
//# sourceMappingURL=chunk-XMNZZA6S.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../renderer/wrapped/onRenderHtml.tsx"],"sourcesContent":["import React from \"react\";\nimport ReactDOMServer from \"react-dom/server\";\nimport { dangerouslySkipEscape, escapeInject } from \"vike/server\";\nimport { PageContextProxyServer } from \"../../types/internal.js\";\nimport { PageShell } from \"../../lib/PageShell.js\";\nimport jsdom from \"jsdom\";\nimport { getElementAttributes } from \"../../lib/getElementAttributes.js\";\n\nexport async function wrappedOnRenderHtml(pageContext: PageContextProxyServer) {\n if (pageContext.wrappedServerOnly) {\n const { html, layoutProps, layout } = pageContext.wrappedServerOnly;\n\n const { layoutMap } = pageContext.config;\n if (!layoutMap) {\n throw new Error(\"layoutMap needs to be defined in config\");\n }\n const Layout = layoutMap[layout];\n if (!Layout) {\n // passthru\n return { documentHtml: html, pageContext: {} };\n }\n\n const dom = new jsdom.JSDOM(html);\n const doc = dom.window.document;\n const bodyEl = doc.querySelector(\"body\");\n const head = doc.querySelector(\"head\");\n if (!bodyEl || !head) {\n throw new Error(\"Proxy failed\");\n }\n\n const pageHtml = ReactDOMServer.renderToString(\n <PageShell pageContext={pageContext}>\n <Layout {...layoutProps}>\n <div\n id=\"proxied-body\"\n dangerouslySetInnerHTML={{ __html: bodyEl.innerHTML }}\n />\n </Layout>\n </PageShell>\n );\n\n const documentHtml = escapeInject`\n <!DOCTYPE html>\n <html>\n <head>\n ${\n // We need to fire turbolinks:load exactly on DCL, so it must be a blocking head script to catch DCL event.\n // Vite loads scripts with type=\"module\" so the rest of our code will show up too late.\n // TODO: figure out how to bundle this better. at least read from a .js file\n dangerouslySkipEscape(`<script>\n window.Turbolinks = {controller:{restorationIdentifier: ''},supported:true};\n addEventListener(\"DOMContentLoaded\", () => {\n const event = new Event(\"turbolinks:load\", { bubbles: true, cancelable: true });\n event.data = {url: window.location.href};\n document.dispatchEvent(event); \n })\n </script>`)\n }\n ${dangerouslySkipEscape(head.innerHTML)}\n </head>\n <body ${dangerouslySkipEscape(\n Object.entries(getElementAttributes(bodyEl))\n .map(([name, value]) => `${name}=\"${value}\"`)\n .join(\" \")\n )}>\n <div id=\"page-view\">${dangerouslySkipEscape(pageHtml)}</div>\n </body>\n </html>`;\n\n return {\n documentHtml,\n pageContext: { layout, layoutProps },\n };\n } else {\n // do nothing: Just exists to signal fastify server that no routes matched and we should proxy\n return {};\n }\n}\n"],"mappings":";;;;;;;;AAAA,OAAO,WAAW;AAClB,OAAO,oBAAoB;AAC3B,SAAS,uBAAuB,oBAAoB;AAGpD,OAAO,WAAW;AAGlB,eAAsB,oBAAoB,aAAqC;AAC7E,MAAI,YAAY,mBAAmB;AACjC,UAAM,EAAE,MAAM,aAAa,OAAO,IAAI,YAAY;AAElD,UAAM,EAAE,UAAU,IAAI,YAAY;AAClC,QAAI,CAAC,WAAW;AACd,YAAM,IAAI,MAAM,yCAAyC;AAAA,IAC3D;AACA,UAAM,SAAS,UAAU,MAAM;AAC/B,QAAI,CAAC,QAAQ;AAEX,aAAO,EAAE,cAAc,MAAM,aAAa,CAAC,EAAE;AAAA,IAC/C;AAEA,UAAM,MAAM,IAAI,MAAM,MAAM,IAAI;AAChC,UAAM,MAAM,IAAI,OAAO;AACvB,UAAM,SAAS,IAAI,cAAc,MAAM;AACvC,UAAM,OAAO,IAAI,cAAc,MAAM;AACrC,QAAI,CAAC,UAAU,CAAC,MAAM;AACpB,YAAM,IAAI,MAAM,cAAc;AAAA,IAChC;AAEA,UAAM,WAAW,eAAe;AAAA,MAC9B,oCAAC,aAAU,eACT,oCAAC,UAAQ,GAAG,eACV;AAAA,QAAC;AAAA;AAAA,UACC,IAAG;AAAA,UACH,yBAAyB,EAAE,QAAQ,OAAO,UAAU;AAAA;AAAA,MACtD,CACF,CACF;AAAA,IACF;AAEA,UAAM,eAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQb,sBAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAOd,CACV;AAAA,YACE,sBAAsB,KAAK,SAAS,CAAC;AAAA;AAAA,gBAEjC;AAAA,MACN,OAAO,QAAQ,qBAAqB,MAAM,CAAC,EACxC,IAAI,CAAC,CAAC,MAAM,KAAK,MAAM,GAAG,IAAI,KAAK,KAAK,GAAG,EAC3C,KAAK,GAAG;AAAA,IACb,CAAC;AAAA,gCACuB,sBAAsB,QAAQ,CAAC;AAAA;AAAA;AAI3D,WAAO;AAAA,MACL;AAAA,MACA,aAAa,EAAE,QAAQ,YAAY;AAAA,IACrC;AAAA,EACF,OAAO;AAEL,WAAO,
|
|
1
|
+
{"version":3,"sources":["../renderer/wrapped/onRenderHtml.tsx"],"sourcesContent":["import React from \"react\";\nimport ReactDOMServer from \"react-dom/server\";\nimport { dangerouslySkipEscape, escapeInject } from \"vike/server\";\nimport { PageContextProxyServer } from \"../../types/internal.js\";\nimport { PageShell } from \"../../lib/PageShell.js\";\nimport jsdom from \"jsdom\";\nimport { getElementAttributes } from \"../../lib/getElementAttributes.js\";\n\nexport async function wrappedOnRenderHtml(pageContext: PageContextProxyServer) {\n if (pageContext.wrappedServerOnly) {\n const { html, layoutProps, layout } = pageContext.wrappedServerOnly;\n\n const { layoutMap } = pageContext.config;\n if (!layoutMap) {\n throw new Error(\"layoutMap needs to be defined in config\");\n }\n const Layout = layoutMap[layout];\n if (!Layout) {\n // passthru\n return { documentHtml: html, pageContext: {} };\n }\n\n const dom = new jsdom.JSDOM(html);\n const doc = dom.window.document;\n const bodyEl = doc.querySelector(\"body\");\n const head = doc.querySelector(\"head\");\n if (!bodyEl || !head) {\n throw new Error(\"Proxy failed\");\n }\n\n const pageHtml = ReactDOMServer.renderToString(\n <PageShell pageContext={pageContext}>\n <Layout {...layoutProps}>\n <div\n id=\"proxied-body\"\n dangerouslySetInnerHTML={{ __html: bodyEl.innerHTML }}\n />\n </Layout>\n </PageShell>\n );\n\n const documentHtml = escapeInject`\n <!DOCTYPE html>\n <html>\n <head>\n ${\n // We need to fire turbolinks:load exactly on DCL, so it must be a blocking head script to catch DCL event.\n // Vite loads scripts with type=\"module\" so the rest of our code will show up too late.\n // TODO: figure out how to bundle this better. at least read from a .js file\n dangerouslySkipEscape(`<script>\n window.Turbolinks = {controller:{restorationIdentifier: ''},supported:true};\n addEventListener(\"DOMContentLoaded\", () => {\n const event = new Event(\"turbolinks:load\", { bubbles: true, cancelable: true });\n event.data = {url: window.location.href};\n document.dispatchEvent(event); \n })\n </script>`)\n }\n ${dangerouslySkipEscape(head.innerHTML)}\n </head>\n <body ${dangerouslySkipEscape(\n Object.entries(getElementAttributes(bodyEl))\n .map(([name, value]) => `${name}=\"${value}\"`)\n .join(\" \")\n )}>\n <div id=\"page-view\">${dangerouslySkipEscape(pageHtml)}</div>\n </body>\n </html>`;\n\n return {\n documentHtml,\n pageContext: { layout, layoutProps },\n };\n } else {\n // do nothing: Just exists to signal fastify server that no routes matched and we should proxy\n return { documentHtml: dangerouslySkipEscape(\"\") };\n }\n}\n"],"mappings":";;;;;;;;AAAA,OAAO,WAAW;AAClB,OAAO,oBAAoB;AAC3B,SAAS,uBAAuB,oBAAoB;AAGpD,OAAO,WAAW;AAGlB,eAAsB,oBAAoB,aAAqC;AAC7E,MAAI,YAAY,mBAAmB;AACjC,UAAM,EAAE,MAAM,aAAa,OAAO,IAAI,YAAY;AAElD,UAAM,EAAE,UAAU,IAAI,YAAY;AAClC,QAAI,CAAC,WAAW;AACd,YAAM,IAAI,MAAM,yCAAyC;AAAA,IAC3D;AACA,UAAM,SAAS,UAAU,MAAM;AAC/B,QAAI,CAAC,QAAQ;AAEX,aAAO,EAAE,cAAc,MAAM,aAAa,CAAC,EAAE;AAAA,IAC/C;AAEA,UAAM,MAAM,IAAI,MAAM,MAAM,IAAI;AAChC,UAAM,MAAM,IAAI,OAAO;AACvB,UAAM,SAAS,IAAI,cAAc,MAAM;AACvC,UAAM,OAAO,IAAI,cAAc,MAAM;AACrC,QAAI,CAAC,UAAU,CAAC,MAAM;AACpB,YAAM,IAAI,MAAM,cAAc;AAAA,IAChC;AAEA,UAAM,WAAW,eAAe;AAAA,MAC9B,oCAAC,aAAU,eACT,oCAAC,UAAQ,GAAG,eACV;AAAA,QAAC;AAAA;AAAA,UACC,IAAG;AAAA,UACH,yBAAyB,EAAE,QAAQ,OAAO,UAAU;AAAA;AAAA,MACtD,CACF,CACF;AAAA,IACF;AAEA,UAAM,eAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQb,sBAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAOd,CACV;AAAA,YACE,sBAAsB,KAAK,SAAS,CAAC;AAAA;AAAA,gBAEjC;AAAA,MACN,OAAO,QAAQ,qBAAqB,MAAM,CAAC,EACxC,IAAI,CAAC,CAAC,MAAM,KAAK,MAAM,GAAG,IAAI,KAAK,KAAK,GAAG,EAC3C,KAAK,GAAG;AAAA,IACb,CAAC;AAAA,gCACuB,sBAAsB,QAAQ,CAAC;AAAA;AAAA;AAI3D,WAAO;AAAA,MACL;AAAA,MACA,aAAa,EAAE,QAAQ,YAAY;AAAA,IACrC;AAAA,EACF,OAAO;AAEL,WAAO,EAAE,cAAc,sBAAsB,EAAE,EAAE;AAAA,EACnD;AACF;","names":[]}
|
package/dist/renderer/+config.js
CHANGED
|
@@ -9,7 +9,7 @@ import {
|
|
|
9
9
|
var config_default = {
|
|
10
10
|
name: "@alignable/bifrost",
|
|
11
11
|
require: {
|
|
12
|
-
vike: ">=0.4.
|
|
12
|
+
vike: ">=0.4.244"
|
|
13
13
|
},
|
|
14
14
|
clientHooks: true,
|
|
15
15
|
onBeforeRoute: "import:@alignable/bifrost/renderer/onBeforeRoute:default",
|
|
@@ -35,7 +35,7 @@ var config_default = {
|
|
|
35
35
|
}
|
|
36
36
|
};
|
|
37
37
|
case "passthru":
|
|
38
|
-
return {};
|
|
38
|
+
return { clientRouting: false };
|
|
39
39
|
default:
|
|
40
40
|
throw new Error(
|
|
41
41
|
`${configDefinedAt} should be one of: false, "wrapped", "passthru"`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../renderer/+config.ts"],"sourcesContent":["import { type Config } from \"vike/types\";\nimport { bifrostConfig } from \"./configs/bifrost\";\nimport { wrappedConfig } from \"./configs/wrapped\";\n\nexport default {\n name: \"@alignable/bifrost\",\n require: {\n vike: \">=0.4.
|
|
1
|
+
{"version":3,"sources":["../../renderer/+config.ts"],"sourcesContent":["import { type Config } from \"vike/types\";\nimport { bifrostConfig } from \"./configs/bifrost\";\nimport { wrappedConfig } from \"./configs/wrapped\";\n\nexport default {\n name: \"@alignable/bifrost\",\n require: {\n vike: \">=0.4.244\",\n },\n clientHooks: true,\n\n onBeforeRoute: \"import:@alignable/bifrost/renderer/onBeforeRoute:default\",\n onRenderClient: \"import:@alignable/bifrost/renderer/onRenderClient:default\",\n onRenderHtml: \"import:@alignable/bifrost/renderer/onRenderHtml:default\",\n passToClient: [...bifrostConfig.passToClient, ...wrappedConfig.passToClient],\n clientRouting: true,\n hydrationCanBeAborted: true,\n\n meta: {\n ...bifrostConfig.meta,\n ...wrappedConfig.meta,\n onClientInit: { env: { client: true }, global: true },\n\n proxyMode: {\n env: { server: true, client: true, config: true },\n effect({ configDefinedAt, configValue }) {\n switch (configValue) {\n case false:\n return {};\n case \"wrapped\":\n return {\n meta: {\n onBeforeRender: { env: { client: true, server: false } },\n },\n };\n case \"passthru\":\n // tell Vike to hit the server for all passthru pages (which will get load balanced to legacy backend)\n return { clientRouting: false };\n default:\n throw new Error(\n `${configDefinedAt} should be one of: false, \"wrapped\", \"passthru\"`\n );\n }\n },\n },\n },\n} satisfies Config;\n"],"mappings":";;;;;;;;AAIA,IAAO,iBAAQ;AAAA,EACb,MAAM;AAAA,EACN,SAAS;AAAA,IACP,MAAM;AAAA,EACR;AAAA,EACA,aAAa;AAAA,EAEb,eAAe;AAAA,EACf,gBAAgB;AAAA,EAChB,cAAc;AAAA,EACd,cAAc,CAAC,GAAG,cAAc,cAAc,GAAG,cAAc,YAAY;AAAA,EAC3E,eAAe;AAAA,EACf,uBAAuB;AAAA,EAEvB,MAAM;AAAA,IACJ,GAAG,cAAc;AAAA,IACjB,GAAG,cAAc;AAAA,IACjB,cAAc,EAAE,KAAK,EAAE,QAAQ,KAAK,GAAG,QAAQ,KAAK;AAAA,IAEpD,WAAW;AAAA,MACT,KAAK,EAAE,QAAQ,MAAM,QAAQ,MAAM,QAAQ,KAAK;AAAA,MAChD,OAAO,EAAE,iBAAiB,YAAY,GAAG;AACvC,gBAAQ,aAAa;AAAA,UACnB,KAAK;AACH,mBAAO,CAAC;AAAA,UACV,KAAK;AACH,mBAAO;AAAA,cACL,MAAM;AAAA,gBACJ,gBAAgB,EAAE,KAAK,EAAE,QAAQ,MAAM,QAAQ,MAAM,EAAE;AAAA,cACzD;AAAA,YACF;AAAA,UACF,KAAK;AAEH,mBAAO,EAAE,eAAe,MAAM;AAAA,UAChC;AACE,kBAAM,IAAI;AAAA,cACR,GAAG,eAAe;AAAA,YACpB;AAAA,QACJ;AAAA,MACF;AAAA,IACF;AAAA,EACF;AACF;","names":[]}
|
|
@@ -28,6 +28,7 @@ declare const _default: {
|
|
|
28
28
|
configDefinedAt: `Config ${string} defined at ${string}`;
|
|
29
29
|
}): {
|
|
30
30
|
meta?: undefined;
|
|
31
|
+
clientRouting?: undefined;
|
|
31
32
|
} | {
|
|
32
33
|
meta: {
|
|
33
34
|
onBeforeRender: {
|
|
@@ -37,6 +38,10 @@ declare const _default: {
|
|
|
37
38
|
};
|
|
38
39
|
};
|
|
39
40
|
};
|
|
41
|
+
clientRouting?: undefined;
|
|
42
|
+
} | {
|
|
43
|
+
clientRouting: false;
|
|
44
|
+
meta?: undefined;
|
|
40
45
|
};
|
|
41
46
|
};
|
|
42
47
|
layoutMap: {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as vike_dist_esm_node_runtime_renderPage_html_renderHtml from 'vike/dist/esm/node/runtime/renderPage/html/renderHtml';
|
|
2
2
|
import { h as PageContextNoProxyServer } from '../../internal-837e7a40.js';
|
|
3
3
|
import 'react';
|
|
4
4
|
import 'vike/types';
|
|
@@ -11,7 +11,7 @@ declare function bifrostOnRenderHtml(pageContext: PageContextNoProxyServer): Pro
|
|
|
11
11
|
};
|
|
12
12
|
documentHtml?: undefined;
|
|
13
13
|
} | {
|
|
14
|
-
documentHtml:
|
|
14
|
+
documentHtml: vike_dist_esm_node_runtime_renderPage_html_renderHtml.TemplateWrapped;
|
|
15
15
|
pageContext: {
|
|
16
16
|
redirectTo?: undefined;
|
|
17
17
|
};
|
|
@@ -1,24 +1,17 @@
|
|
|
1
1
|
import { e as Snapshot } from '../internal-837e7a40.js';
|
|
2
|
+
import { PageContext } from 'vike/types';
|
|
2
3
|
import 'react';
|
|
3
|
-
import 'vike/types';
|
|
4
4
|
import './configs/bifrost.js';
|
|
5
5
|
import './configs/wrapped.js';
|
|
6
6
|
|
|
7
|
-
declare const onBeforeRoute: () => {
|
|
7
|
+
declare const onBeforeRoute: (pageContext: PageContext) => {
|
|
8
8
|
pageContext: {
|
|
9
9
|
snapshot: Snapshot;
|
|
10
|
-
isBackwardNavigation?: undefined;
|
|
11
10
|
};
|
|
12
11
|
} | {
|
|
13
12
|
pageContext: {
|
|
14
|
-
isBackwardNavigation: boolean;
|
|
15
13
|
snapshot?: undefined;
|
|
16
14
|
};
|
|
17
|
-
} | {
|
|
18
|
-
pageContext: {
|
|
19
|
-
snapshot?: undefined;
|
|
20
|
-
isBackwardNavigation?: undefined;
|
|
21
|
-
};
|
|
22
15
|
};
|
|
23
16
|
|
|
24
17
|
export { onBeforeRoute as default };
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
// renderer/onBeforeRoute.ts
|
|
2
|
-
var onBeforeRoute = () => {
|
|
2
|
+
var onBeforeRoute = (pageContext) => {
|
|
3
3
|
if (typeof window !== "undefined") {
|
|
4
4
|
const Turbolinks = window.Turbolinks;
|
|
5
5
|
const currentVisit = Turbolinks.controller.currentVisit;
|
|
6
|
-
if (
|
|
6
|
+
if (pageContext.isBackwardNavigation) {
|
|
7
7
|
const snapshot = Turbolinks.controller.getCachedSnapshotForLocation(
|
|
8
8
|
window.location.href
|
|
9
9
|
);
|
|
@@ -18,9 +18,7 @@ var onBeforeRoute = () => {
|
|
|
18
18
|
}
|
|
19
19
|
};
|
|
20
20
|
} else {
|
|
21
|
-
return {
|
|
22
|
-
pageContext: { isBackwardNavigation: true }
|
|
23
|
-
};
|
|
21
|
+
return { pageContext: {} };
|
|
24
22
|
}
|
|
25
23
|
}
|
|
26
24
|
}
|
|
@@ -1 +1 @@
|
|
|
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 (
|
|
1
|
+
{"version":3,"sources":["../../renderer/onBeforeRoute.ts"],"sourcesContent":["// do NOT import turbolinks in this file. It is used on server side.\n\nimport { PageContext } from \"vike/types\";\n\nconst onBeforeRoute = (pageContext: PageContext) => {\n if (typeof window !== \"undefined\") {\n const Turbolinks = window.Turbolinks;\n\n const currentVisit = Turbolinks.controller.currentVisit;\n if (pageContext.isBackwardNavigation) {\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 },\n };\n } else {\n return { pageContext: {} };\n }\n }\n }\n return { pageContext: {} };\n};\n\nexport default onBeforeRoute;\n"],"mappings":";AAIA,IAAM,gBAAgB,CAAC,gBAA6B;AAClD,MAAI,OAAO,WAAW,aAAa;AACjC,UAAM,aAAa,OAAO;AAE1B,UAAM,eAAe,WAAW,WAAW;AAC3C,QAAI,YAAY,sBAAsB;AACpC,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,UACF;AAAA,QACF;AAAA,MACF,OAAO;AACL,eAAO,EAAE,aAAa,CAAC,EAAE;AAAA,MAC3B;AAAA,IACF;AAAA,EACF;AACA,SAAO,EAAE,aAAa,CAAC,EAAE;AAC3B;AAEA,IAAO,wBAAQ;","names":[]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { h as PageContextNoProxyServer, i as PageContextProxyServer, a as AugmentMe } from '../internal-837e7a40.js';
|
|
2
|
-
import * as
|
|
2
|
+
import * as vike_dist_esm_node_runtime_renderPage_html_renderHtml_js from 'vike/dist/esm/node/runtime/renderPage/html/renderHtml.js';
|
|
3
3
|
import 'react';
|
|
4
4
|
import 'vike/types';
|
|
5
5
|
import './configs/bifrost.js';
|
|
@@ -11,7 +11,7 @@ declare function onRenderHtml(pageContext: PageContextNoProxyServer | PageContex
|
|
|
11
11
|
};
|
|
12
12
|
documentHtml?: undefined;
|
|
13
13
|
} | {
|
|
14
|
-
documentHtml:
|
|
14
|
+
documentHtml: vike_dist_esm_node_runtime_renderPage_html_renderHtml_js.TemplateWrapped;
|
|
15
15
|
pageContext: {
|
|
16
16
|
redirectTo?: undefined;
|
|
17
17
|
};
|
|
@@ -22,16 +22,16 @@ declare function onRenderHtml(pageContext: PageContextNoProxyServer | PageContex
|
|
|
22
22
|
layoutProps?: undefined;
|
|
23
23
|
};
|
|
24
24
|
} | {
|
|
25
|
-
documentHtml:
|
|
25
|
+
documentHtml: vike_dist_esm_node_runtime_renderPage_html_renderHtml_js.TemplateWrapped;
|
|
26
26
|
pageContext: {
|
|
27
27
|
layout: string;
|
|
28
28
|
layoutProps: AugmentMe.LayoutProps;
|
|
29
29
|
};
|
|
30
30
|
} | {
|
|
31
|
-
documentHtml
|
|
31
|
+
documentHtml: {
|
|
32
|
+
_escaped: string;
|
|
33
|
+
};
|
|
32
34
|
pageContext?: undefined;
|
|
33
|
-
}
|
|
34
|
-
pageContext: {};
|
|
35
|
-
} | undefined>;
|
|
35
|
+
}>;
|
|
36
36
|
|
|
37
37
|
export { onRenderHtml as default };
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
2
|
wrappedOnRenderHtml
|
|
3
|
-
} from "../chunk-
|
|
3
|
+
} from "../chunk-XMNZZA6S.js";
|
|
4
4
|
import {
|
|
5
5
|
bifrostOnRenderHtml
|
|
6
|
-
} from "../chunk-
|
|
6
|
+
} from "../chunk-5SP2QGEH.js";
|
|
7
7
|
import "../chunk-RQ34EW7E.js";
|
|
8
8
|
import "../chunk-JHLK62FM.js";
|
|
9
9
|
import "../chunk-VYXAWOXV.js";
|
|
@@ -13,15 +13,17 @@ import "../chunk-IYGONC4I.js";
|
|
|
13
13
|
import "../chunk-EYYCKU6F.js";
|
|
14
14
|
|
|
15
15
|
// renderer/onRenderHtml.tsx
|
|
16
|
+
import { dangerouslySkipEscape } from "vike/server";
|
|
16
17
|
async function onRenderHtml(pageContext) {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
18
|
+
switch (pageContext.config.proxyMode) {
|
|
19
|
+
case "wrapped":
|
|
20
|
+
return await wrappedOnRenderHtml(pageContext);
|
|
21
|
+
case "passthru":
|
|
22
|
+
return {
|
|
23
|
+
documentHtml: dangerouslySkipEscape("")
|
|
24
|
+
};
|
|
25
|
+
default:
|
|
26
|
+
return await bifrostOnRenderHtml(pageContext);
|
|
25
27
|
}
|
|
26
28
|
}
|
|
27
29
|
export {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../renderer/onRenderHtml.tsx"],"sourcesContent":["import {\n PageContextNoProxyServer,\n PageContextProxyServer,\n} from \"../types/internal.js\";\nimport { bifrostOnRenderHtml } from \"./bifrost/onRenderHtml
|
|
1
|
+
{"version":3,"sources":["../../renderer/onRenderHtml.tsx"],"sourcesContent":["import { dangerouslySkipEscape } from \"vike/server\";\nimport {\n PageContextNoProxyServer,\n PageContextProxyServer,\n} from \"../types/internal.js\";\nimport { bifrostOnRenderHtml } from \"./bifrost/onRenderHtml\";\nimport { wrappedOnRenderHtml } from \"./wrapped/onRenderHtml\";\n\nexport default async function onRenderHtml(\n pageContext: PageContextNoProxyServer | PageContextProxyServer\n) {\n switch (pageContext.config.proxyMode) {\n case \"wrapped\":\n return await wrappedOnRenderHtml(pageContext as PageContextProxyServer);\n case \"passthru\":\n return {\n documentHtml: dangerouslySkipEscape(\"\"),\n };\n default:\n return await bifrostOnRenderHtml(pageContext as PageContextNoProxyServer);\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;AAAA,SAAS,6BAA6B;AAQtC,eAAO,aACL,aACA;AACA,UAAQ,YAAY,OAAO,WAAW;AAAA,IACpC,KAAK;AACH,aAAO,MAAM,oBAAoB,WAAqC;AAAA,IACxE,KAAK;AACH,aAAO;AAAA,QACL,cAAc,sBAAsB,EAAE;AAAA,MACxC;AAAA,IACF;AACE,aAAO,MAAM,oBAAoB,WAAuC;AAAA,EAC5E;AACF;","names":[]}
|
|
@@ -7,7 +7,7 @@ import './configs/wrapped.js';
|
|
|
7
7
|
declare function PageContextProvider({ pageContext, children, }: {
|
|
8
8
|
pageContext: PageContext;
|
|
9
9
|
children: React.ReactNode;
|
|
10
|
-
}): JSX.Element;
|
|
10
|
+
}): React.JSX.Element;
|
|
11
11
|
/** Access the pageContext from any React component */
|
|
12
12
|
declare function usePageContext(): PageContext;
|
|
13
13
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { i as PageContextProxyServer, a as AugmentMe } from '../../internal-837e7a40.js';
|
|
2
|
-
import * as
|
|
2
|
+
import * as vike_dist_esm_node_runtime_renderPage_html_renderHtml_js from 'vike/dist/esm/node/runtime/renderPage/html/renderHtml.js';
|
|
3
3
|
import 'react';
|
|
4
4
|
import 'vike/types';
|
|
5
5
|
import '../configs/bifrost.js';
|
|
@@ -12,13 +12,15 @@ declare function wrappedOnRenderHtml(pageContext: PageContextProxyServer): Promi
|
|
|
12
12
|
layoutProps?: undefined;
|
|
13
13
|
};
|
|
14
14
|
} | {
|
|
15
|
-
documentHtml:
|
|
15
|
+
documentHtml: vike_dist_esm_node_runtime_renderPage_html_renderHtml_js.TemplateWrapped;
|
|
16
16
|
pageContext: {
|
|
17
17
|
layout: string;
|
|
18
18
|
layoutProps: AugmentMe.LayoutProps;
|
|
19
19
|
};
|
|
20
20
|
} | {
|
|
21
|
-
documentHtml
|
|
21
|
+
documentHtml: {
|
|
22
|
+
_escaped: string;
|
|
23
|
+
};
|
|
22
24
|
pageContext?: undefined;
|
|
23
25
|
}>;
|
|
24
26
|
|
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.1.
|
|
4
|
+
"version": "0.1.1",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"types": "./dist/index.d.ts",
|
|
7
7
|
"exports": {
|
|
@@ -38,9 +38,9 @@
|
|
|
38
38
|
}
|
|
39
39
|
},
|
|
40
40
|
"scripts": {
|
|
41
|
-
"dev": "",
|
|
41
|
+
"dev": "tsup --watch",
|
|
42
42
|
"release": "release-me patch",
|
|
43
|
-
"build": "tsup
|
|
43
|
+
"build": "tsup",
|
|
44
44
|
"tsc": "tsc"
|
|
45
45
|
},
|
|
46
46
|
"files": [
|
|
@@ -49,28 +49,28 @@
|
|
|
49
49
|
"dependencies": {
|
|
50
50
|
"cross-env": "^7.0.3",
|
|
51
51
|
"jsdom": "^22.1.0",
|
|
52
|
-
"react": "^18.x.x",
|
|
53
|
-
"react-dom": "^18.x.x",
|
|
54
52
|
"tough-cookie": "^4.1.2",
|
|
55
53
|
"uuid": "^9.0.0",
|
|
56
|
-
"vike": "0.4.
|
|
54
|
+
"vike": "0.4.244"
|
|
57
55
|
},
|
|
58
56
|
"peerDependencies": {
|
|
59
57
|
"jsdom": "^22.1.0",
|
|
60
|
-
"react": "
|
|
61
|
-
"react-dom": "
|
|
58
|
+
"react": ">=18",
|
|
59
|
+
"react-dom": ">=18",
|
|
62
60
|
"typescript": ">=4.7",
|
|
63
|
-
"vike": "0.4.
|
|
61
|
+
"vike": "0.4.244"
|
|
64
62
|
},
|
|
65
63
|
"devDependencies": {
|
|
66
64
|
"@types/jsdom": "^21.1.2",
|
|
67
65
|
"@types/node": "^18.11.9",
|
|
68
|
-
"@types/react": "^18.0
|
|
69
|
-
"@types/react-dom": "^18.0
|
|
70
|
-
"@vitejs/plugin-react": "^
|
|
66
|
+
"@types/react": "^18.2.0",
|
|
67
|
+
"@types/react-dom": "^18.2.0",
|
|
68
|
+
"@vitejs/plugin-react": "^4.7.0",
|
|
71
69
|
"tsup": "^7.1.0",
|
|
72
70
|
"turbolinks": "5.3.0-beta.1",
|
|
73
71
|
"typescript": "^5.0.4",
|
|
74
|
-
"
|
|
72
|
+
"react": "^18.2.0",
|
|
73
|
+
"react-dom": "^18.2.0",
|
|
74
|
+
"vite": "^6.3.5"
|
|
75
75
|
}
|
|
76
76
|
}
|