@wular/pnext 0.1.5 → 0.1.7
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/bin/pnext +9 -2
- package/dist/server/_chunks/aliases-j47a10ce.js +44 -0
- package/dist/server/_chunks/analyze-arswqe6s.js +445 -0
- package/dist/server/_chunks/boot-af0mv3dy.js +36 -0
- package/dist/server/_chunks/build-spy3dxp4.js +84 -0
- package/dist/server/_chunks/build-t9h0hec3.js +3550 -0
- package/dist/server/_chunks/build-tier-m7yvqz61.js +2472 -0
- package/dist/server/_chunks/compile-53j02j27.js +22 -0
- package/dist/server/_chunks/config-1yzwexq6.js +27 -0
- package/dist/server/_chunks/config-n2z7yxps.js +22 -0
- package/dist/server/_chunks/create-meec9hs6.js +134 -0
- package/dist/server/_chunks/dev-fjmqg6en.js +220 -0
- package/dist/server/_chunks/esbuild-yyktfrtt.js +15 -0
- package/dist/server/_chunks/generate-n9sh6hzt.js +21 -0
- package/dist/server/_chunks/index-0374j2b9.js +66 -0
- package/dist/server/_chunks/index-06nyqntx.js +213 -0
- package/dist/server/_chunks/index-1011cscr.js +5263 -0
- package/dist/server/_chunks/index-11sfk4hb.js +170 -0
- package/dist/server/_chunks/index-20ppawv7.js +297 -0
- package/dist/server/_chunks/index-2dv4y4wd.js +1065 -0
- package/dist/server/_chunks/index-2vz0wzdn.js +59 -0
- package/dist/server/_chunks/index-2wfv4kvx.js +182 -0
- package/dist/server/_chunks/index-357na4a8.js +109 -0
- package/dist/server/_chunks/index-3b3at80h.js +109 -0
- package/dist/server/_chunks/index-3tf1xjsp.js +6166 -0
- package/dist/server/_chunks/index-3xbr4eyv.js +105 -0
- package/dist/server/_chunks/index-4399bvd2.js +18 -0
- package/dist/server/_chunks/index-4hgjrqh7.js +851 -0
- package/dist/server/_chunks/index-4q2gbfwk.js +2530 -0
- package/dist/server/_chunks/index-4t92hdxd.js +172 -0
- package/dist/server/_chunks/index-4zzebszd.js +10 -0
- package/dist/server/_chunks/index-5gyr4emz.js +107 -0
- package/dist/server/_chunks/index-5hr4062s.js +70 -0
- package/dist/server/_chunks/index-68m3mwbd.js +84 -0
- package/dist/server/_chunks/index-6b009mt0.js +56 -0
- package/dist/server/_chunks/index-6e4fqv30.js +588 -0
- package/dist/server/_chunks/index-6gex3pfa.js +15 -0
- package/dist/server/_chunks/index-6kp9r0d9.js +11 -0
- package/dist/server/_chunks/index-6q7zvrap.js +134 -0
- package/dist/server/_chunks/index-73z4esab.js +38 -0
- package/dist/server/_chunks/index-79ngvam8.js +60 -0
- package/dist/server/_chunks/index-7wc9n8be.js +25 -0
- package/dist/server/_chunks/index-8k7pfejn.js +1599 -0
- package/dist/server/_chunks/index-8kcxdfya.js +206 -0
- package/dist/server/_chunks/index-91x12ykq.js +274 -0
- package/dist/server/_chunks/index-9ch50vtq.js +18 -0
- package/dist/server/_chunks/index-9hx2641q.js +28 -0
- package/dist/server/_chunks/index-9n2914ww.js +535 -0
- package/dist/server/_chunks/index-9ych9ma8.js +207 -0
- package/dist/server/_chunks/index-b6wtkdp4.js +24 -0
- package/dist/server/_chunks/index-bcws5eh2.js +35 -0
- package/dist/server/_chunks/index-c0g2wf3z.js +92 -0
- package/dist/server/_chunks/index-cf4rvxv6.js +95 -0
- package/dist/server/_chunks/index-cjgqs13g.js +65 -0
- package/dist/server/_chunks/index-ckkdpht5.js +41 -0
- package/dist/server/_chunks/index-cyfednwb.js +87 -0
- package/dist/server/_chunks/index-danncfhy.js +311 -0
- package/dist/server/_chunks/index-dg0f05zs.js +199 -0
- package/dist/server/_chunks/index-e3a6yx84.js +18 -0
- package/dist/server/_chunks/index-e88tyv35.js +45 -0
- package/dist/server/_chunks/index-eajaspjk.js +1253 -0
- package/dist/server/_chunks/index-eeaanp2e.js +483 -0
- package/dist/server/_chunks/index-egykcqg3.js +101 -0
- package/dist/server/_chunks/index-en7n9f7m.js +22 -0
- package/dist/server/_chunks/index-ezgj0tr1.js +88 -0
- package/dist/server/_chunks/index-fkp000p1.js +590 -0
- package/dist/server/_chunks/index-fn1chkkd.js +214 -0
- package/dist/server/_chunks/index-fp8r0sqs.js +64 -0
- package/dist/server/_chunks/index-ggk2j965.js +9432 -0
- package/dist/server/_chunks/index-grta8ap3.js +238 -0
- package/dist/server/_chunks/index-h2a70tg4.js +7 -0
- package/dist/server/_chunks/index-h4xy648y.js +51 -0
- package/dist/server/_chunks/index-hkdfj58q.js +92 -0
- package/dist/server/_chunks/index-j2zrcp1k.js +66 -0
- package/dist/server/_chunks/index-jcsjq3d1.js +20 -0
- package/dist/server/_chunks/index-jepjvcrf.js +198 -0
- package/dist/server/_chunks/index-jks0x0a1.js +14 -0
- package/dist/server/_chunks/index-jx7bqvw1.js +57 -0
- package/dist/server/_chunks/index-k1g3epw0.js +1299 -0
- package/dist/server/_chunks/index-knp0s912.js +7 -0
- package/dist/server/_chunks/index-kq8kpzye.js +472 -0
- package/dist/server/_chunks/index-kqyy1d4f.js +50 -0
- package/dist/server/_chunks/index-kresp2n8.js +445 -0
- package/dist/server/_chunks/index-ms9v9tnx.js +31 -0
- package/dist/server/_chunks/index-n4hxpng2.js +11 -0
- package/dist/server/_chunks/index-ncnes8c6.js +17 -0
- package/dist/server/_chunks/index-nqh3xhdc.js +57 -0
- package/dist/server/_chunks/index-nyrba2kr.js +4130 -0
- package/dist/server/_chunks/index-p77b4kcx.js +296 -0
- package/dist/server/_chunks/index-pym1cezq.js +39 -0
- package/dist/server/_chunks/index-q738kkhj.js +100 -0
- package/dist/server/_chunks/index-qjj6gddn.js +54 -0
- package/dist/server/_chunks/index-qm6kmhqs.js +110 -0
- package/dist/server/_chunks/index-qn4z5s3c.js +819 -0
- package/dist/server/_chunks/index-qpwsgt3a.js +158 -0
- package/dist/server/_chunks/index-r97ptz1q.js +97 -0
- package/dist/server/_chunks/index-ras0sdab.js +26 -0
- package/dist/server/_chunks/index-rcs322t1.js +19 -0
- package/dist/server/_chunks/index-rn8dyr1f.js +126 -0
- package/dist/server/_chunks/index-rt9qq1va.js +4 -0
- package/dist/server/_chunks/index-rthrsed5.js +356 -0
- package/dist/server/_chunks/index-sctcgyvv.js +185 -0
- package/dist/server/_chunks/index-sjpckxqn.js +213 -0
- package/dist/server/_chunks/index-sq3kvz3g.js +200 -0
- package/dist/server/_chunks/index-stbk3jhn.js +31 -0
- package/dist/server/_chunks/index-sv8m6789.js +266 -0
- package/dist/server/_chunks/index-tgcakdxc.js +125 -0
- package/dist/server/_chunks/index-tgsfjmep.js +74 -0
- package/dist/server/_chunks/index-tq0pc7eg.js +154 -0
- package/dist/server/_chunks/index-tq1f96v7.js +51 -0
- package/dist/server/_chunks/index-tqn2qnnn.js +241 -0
- package/dist/server/_chunks/index-tvqkq6e6.js +128 -0
- package/dist/server/_chunks/index-v1ags1na.js +132 -0
- package/dist/server/_chunks/index-vvmmknm1.js +1431 -0
- package/dist/server/_chunks/index-vvq7rqtn.js +329 -0
- package/dist/server/_chunks/index-vz0km5qk.js +33 -0
- package/dist/server/_chunks/index-w6h8m6vp.js +138 -0
- package/dist/server/_chunks/index-web361b8.js +138 -0
- package/dist/server/_chunks/index-wpfhfbs4.js +194 -0
- package/dist/server/_chunks/index-x0y005nh.js +283 -0
- package/dist/server/_chunks/index-x3yn4ywm.js +22 -0
- package/dist/server/_chunks/index-x93hv0sc.js +271 -0
- package/dist/server/_chunks/index-xvj80c3a.js +30 -0
- package/dist/server/_chunks/index-xywjg2vc.js +100 -0
- package/dist/server/_chunks/index-y2jr2n72.js +152 -0
- package/dist/server/_chunks/index-y36a0ybw.js +57 -0
- package/dist/server/_chunks/index-ye9hmsvf.js +47 -0
- package/dist/server/_chunks/index-yhxkxghe.js +56 -0
- package/dist/server/_chunks/index-ym67zqxp.js +130 -0
- package/dist/server/_chunks/index-ytjvpbm2.js +736 -0
- package/dist/server/_chunks/index-yz54pxrh.js +960 -0
- package/dist/server/_chunks/index-z4z9zv3b.js +733 -0
- package/dist/server/_chunks/index-z84ab1w0.js +1270 -0
- package/dist/server/_chunks/index-z88qv16t.js +11 -0
- package/dist/server/_chunks/index-zqpqyg8p.js +666 -0
- package/dist/server/_chunks/loader-7yw0j98z.js +78 -0
- package/dist/server/_chunks/modules-jn8bmbn8.js +74 -0
- package/dist/server/_chunks/pipeline-yy9jhydf.js +832 -0
- package/dist/server/_chunks/production-jar9ztm3.js +44 -0
- package/dist/server/_chunks/proxy-config-j84dgksn.js +21 -0
- package/dist/server/_chunks/proxy-w1d0wmsn.js +33 -0
- package/dist/server/_chunks/router-k1reahfn.js +498 -0
- package/dist/server/_chunks/routes-2s277fc6.js +64 -0
- package/dist/server/_chunks/run-pvd8bs1t.js +696 -0
- package/dist/server/_chunks/server-mt4a994c.js +1835 -0
- package/dist/server/_chunks/tsconfig-defaults-1nb3308g.js +20 -0
- package/dist/server/_chunks/typegen-0qr0459b.js +35 -0
- package/dist/server/api/client-cache.js +14 -0
- package/dist/server/cli/index.js +378 -0
- package/dist/server/cli/start.js +137 -0
- package/dist/server/client/reference.js +16 -0
- package/dist/server/compat/next/cache.js +56 -0
- package/dist/server/compat/next/canonical-url.js +13 -0
- package/dist/server/compat/next/client-cache.js +57 -0
- package/dist/server/compat/next/client-navigation.js +232 -0
- package/dist/server/compat/next/client-only.js +1 -0
- package/dist/server/compat/next/client-script.js +178 -0
- package/dist/server/compat/next/client-server.js +34 -0
- package/dist/server/compat/next/config-headers.js +32 -0
- package/dist/server/compat/next/config-loader.js +25 -0
- package/dist/server/compat/next/config.js +10 -0
- package/dist/server/compat/next/constants.js +18 -0
- package/dist/server/compat/next/custom-server.js +10 -0
- package/dist/server/compat/next/dist/client/components/app-router-headers.js +48 -0
- package/dist/server/compat/next/dist/server/web/spec-extension/revalidate.js +27 -0
- package/dist/server/compat/next/dist/server/web/spec-extension/unstable-cache.js +25 -0
- package/dist/server/compat/next/dist/server/web/spec-extension/unstable-no-store.js +25 -0
- package/dist/server/compat/next/dynamic.js +32 -0
- package/dist/server/compat/next/error.js +112 -0
- package/dist/server/compat/next/font/cache.js +14 -0
- package/dist/server/compat/next/font/google.js +3 -0
- package/dist/server/compat/next/font/index.js +1 -0
- package/dist/server/compat/next/font/local.js +22 -0
- package/dist/server/compat/next/font/runtime-client.js +33 -0
- package/dist/server/compat/next/font/runtime.js +41 -0
- package/dist/server/compat/next/font/shared.js +22 -0
- package/dist/server/compat/next/form.js +129 -0
- package/dist/server/compat/next/head.js +10 -0
- package/dist/server/compat/next/headers.js +30 -0
- package/dist/server/compat/next/image/client.js +11 -0
- package/dist/server/compat/next/image/config.js +18 -0
- package/dist/server/compat/next/image/optimizer.js +25 -0
- package/dist/server/compat/next/image/patterns.js +12 -0
- package/dist/server/compat/next/image/props.js +16 -0
- package/dist/server/compat/next/image/shared.js +86 -0
- package/dist/server/compat/next/image/static-metadata.js +32 -0
- package/dist/server/compat/next/image/validate.js +8 -0
- package/dist/server/compat/next/image.js +59 -0
- package/dist/server/compat/next/index.js +1 -0
- package/dist/server/compat/next/legacy-image.js +78 -0
- package/dist/server/compat/next/legacy-request-apis.js +24 -0
- package/dist/server/compat/next/link-transform.js +14 -0
- package/dist/server/compat/next/link.js +14 -0
- package/dist/server/compat/next/navigation.js +190 -0
- package/dist/server/compat/next/offline.js +45 -0
- package/dist/server/compat/next/og.js +8 -0
- package/dist/server/compat/next/preferred-region.js +8 -0
- package/dist/server/compat/next/redirects.js +30 -0
- package/dist/server/compat/next/resource-hints.js +30 -0
- package/dist/server/compat/next/rewrites.js +41 -0
- package/dist/server/compat/next/root-params.js +121 -0
- package/dist/server/compat/next/route-state.js +23 -0
- package/dist/server/compat/next/router.js +103 -0
- package/dist/server/compat/next/script.js +37 -0
- package/dist/server/compat/next/server-only.js +1 -0
- package/dist/server/compat/next/server.js +131 -0
- package/dist/server/compat/next/svgr.js +14 -0
- package/dist/server/compat/next/telemetry.js +10 -0
- package/dist/server/compat/next/usage.js +13 -0
- package/dist/server/compat/next/user-agent.js +12 -0
- package/dist/server/compat/next/web-vitals.js +35 -0
- package/dist/server/compat/react/action-state.js +11 -0
- package/dist/server/compat/react/client-lite.js +83 -0
- package/dist/server/compat/react/client.js +131 -0
- package/dist/server/compat/react/compiler-runtime.js +42 -0
- package/dist/server/compat/react/dom-client.js +106 -0
- package/dist/server/compat/react/dom-react-server.js +37 -0
- package/dist/server/compat/react/dom-server.js +40 -0
- package/dist/server/compat/react/dom.js +52 -0
- package/dist/server/compat/react/hooks-extra.js +12 -0
- package/dist/server/compat/react/internals.js +14 -0
- package/dist/server/compat/react/parity.js +11 -0
- package/dist/server/compat/react/preact.js +113 -0
- package/dist/server/compat/react/react-server.js +133 -0
- package/dist/server/compat/react/router-shim.js +8 -0
- package/dist/server/compat/react/server-component-use.js +14 -0
- package/dist/server/compat/react/server-inserted-html.js +14 -0
- package/dist/server/compat/react/server.js +194 -0
- package/dist/server/compat/react/style-values.js +10 -0
- package/dist/server/compat/react/use.js +10 -0
- package/dist/server/compat/react/view-transition.js +12 -0
- package/dist/server/generation.json +1 -0
- package/package.json +4 -1
- package/src/api/dynamic.tsx +2 -0
- package/src/api/server.ts +24 -6
- package/src/cli/adapters/vercel-warm.ts +315 -61
- package/src/cli/adapters/vercel.ts +348 -71
- package/src/cli/build.ts +58 -33
- package/src/cli/index.ts +23 -10
- package/src/cli/serve/entry.ts +21 -159
- package/src/cli/serve/immutable.ts +31 -0
- package/src/cli/serve/pipeline.ts +82 -84
- package/src/cli/start.ts +3 -1
- package/src/client/chunk-fold.ts +19 -6
- package/src/client/react-tier.ts +3 -2
- package/src/client/reference-stub.ts +21 -2
- package/src/compat/actions/client-plugin.ts +4 -2
- package/src/compat/actions/config.ts +6 -5
- package/src/compat/actions/extensions.ts +2 -3
- package/src/compat/aliases.ts +8 -1
- package/src/compat/bundler/config.ts +88 -0
- package/src/compat/bundler/optimize-package-imports.ts +86 -26
- package/src/compat/bundler/relay-transform.ts +15 -3
- package/src/compat/cache-control.ts +16 -8
- package/src/compat/css/modules.ts +18 -5
- package/src/compat/lifecycle/error-funnel.ts +1 -1
- package/src/compat/lifecycle/instrumentation.ts +117 -24
- package/src/compat/lifecycle/testmode.ts +3 -2
- package/src/compat/next/config-loader.ts +137 -13
- package/src/compat/next/font/runtime.ts +22 -2
- package/src/compat/next/og.ts +3 -3
- package/src/compat/next/usage.ts +3 -2
- package/src/compat/pages/api.ts +83 -14
- package/src/compat/pages/router.ts +30 -14
- package/src/compat/register/bundler.ts +3 -1
- package/src/compat/register/middleware.ts +1 -1
- package/src/compat/register/otel.ts +5 -9
- package/src/compat/register/render.ts +3 -1
- package/src/compat/register/use-cache.ts +3 -1
- package/src/compat/release.ts +46 -0
- package/src/compat/segment/serve.ts +1 -1
- package/src/compat/validation/validate.ts +10 -7
- package/src/config.ts +51 -7
- package/src/css/assets.ts +213 -0
- package/src/css/build.ts +174 -238
- package/src/dev/server.ts +27 -8
- package/src/extensions.ts +4 -0
- package/src/render/hooks.ts +13 -0
- package/src/render/renderer.ts +52 -32
- package/src/request/context.ts +9 -0
- package/src/resolve/dynamic.ts +3 -1
- package/src/resolve/imports.ts +12 -52
- package/src/resolve/package-json.ts +56 -0
- package/src/resolve/scan-facts.ts +65 -0
- package/src/routing/href.ts +10 -3
- package/src/routing/match.ts +287 -0
- package/src/routing/metadata-files.ts +19 -5
- package/src/routing/proxy-config.ts +137 -0
- package/src/routing/proxy.ts +35 -134
- package/src/routing/routes.ts +22 -281
- package/src/runtime/fingerprint.ts +23 -8
- package/src/runtime/load.ts +170 -0
- package/src/runtime/loader.ts +215 -43
- package/src/runtime/module-cache.ts +13 -0
- package/src/runtime/modules.ts +370 -81
- package/src/runtime/prebundle.ts +81 -0
- package/src/runtime/production.ts +391 -0
- package/src/runtime/release-graph.ts +334 -0
- package/src/runtime/vendor-build.ts +724 -13
- package/src/runtime/vendor.ts +16 -3
- package/src/types.ts +2 -0
- package/src/utils/fs.ts +89 -3
|
@@ -0,0 +1,445 @@
|
|
|
1
|
+
// @bun
|
|
2
|
+
import {
|
|
3
|
+
PostponeError,
|
|
4
|
+
isPostpone
|
|
5
|
+
} from "./index-e3a6yx84.js";
|
|
6
|
+
|
|
7
|
+
// src/render/ppr.ts
|
|
8
|
+
import { AsyncLocalStorage } from "async_hooks";
|
|
9
|
+
var PRERENDER_STORAGE = Symbol.for("pnext.prerenderStorage");
|
|
10
|
+
var prerenderStorage = globalThis[PRERENDER_STORAGE] ??= new AsyncLocalStorage;
|
|
11
|
+
var CSR_BAILOUT_STORAGE = Symbol.for("pnext.csrBailoutStorage");
|
|
12
|
+
var csrBailoutStorage = globalThis[CSR_BAILOUT_STORAGE] ??= new AsyncLocalStorage;
|
|
13
|
+
var prerenderDynamicTrackerStorage = new AsyncLocalStorage;
|
|
14
|
+
async function trackPrerenderDynamic(callback) {
|
|
15
|
+
const tracker = { dynamic: false };
|
|
16
|
+
const value = await prerenderDynamicTrackerStorage.run(tracker, callback);
|
|
17
|
+
return { value, dynamic: tracker.dynamic };
|
|
18
|
+
}
|
|
19
|
+
function markPrerenderDynamic() {
|
|
20
|
+
const tracker = prerenderDynamicTrackerStorage.getStore();
|
|
21
|
+
if (tracker)
|
|
22
|
+
tracker.dynamic = true;
|
|
23
|
+
}
|
|
24
|
+
var SHELL_SOURCES = Symbol.for("pnext.shellDynamicSources");
|
|
25
|
+
function shellSourceState() {
|
|
26
|
+
const root = globalThis;
|
|
27
|
+
return root[SHELL_SOURCES] ??= {
|
|
28
|
+
active: false,
|
|
29
|
+
cacheIO: false,
|
|
30
|
+
nonParamsRequest: false
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
function beginShellSourceTracking() {
|
|
34
|
+
const state = shellSourceState();
|
|
35
|
+
state.active = true;
|
|
36
|
+
state.cacheIO = false;
|
|
37
|
+
state.nonParamsRequest = false;
|
|
38
|
+
}
|
|
39
|
+
function endShellSourceTracking() {
|
|
40
|
+
const state = shellSourceState();
|
|
41
|
+
const result = { cacheIO: state.cacheIO, nonParamsRequest: state.nonParamsRequest };
|
|
42
|
+
state.active = false;
|
|
43
|
+
return result;
|
|
44
|
+
}
|
|
45
|
+
function recordShellRequestApi(api) {
|
|
46
|
+
const state = shellSourceState();
|
|
47
|
+
if (state.active && api !== "params")
|
|
48
|
+
state.nonParamsRequest = true;
|
|
49
|
+
}
|
|
50
|
+
function recordShellCacheIO() {
|
|
51
|
+
const state = shellSourceState();
|
|
52
|
+
if (state.active)
|
|
53
|
+
state.cacheIO = true;
|
|
54
|
+
}
|
|
55
|
+
function runInPrerender(callback, options = {}) {
|
|
56
|
+
const controller = new AbortController;
|
|
57
|
+
activePrerenderControllers().add(controller);
|
|
58
|
+
const scope = {
|
|
59
|
+
signal: controller.signal,
|
|
60
|
+
abort: () => controller.abort(),
|
|
61
|
+
...options.runtimePrefetch ? { runtimePrefetch: true, awaitedRuntimeApi: false } : {},
|
|
62
|
+
...options.prefetchShell ? { prefetchShell: true } : {},
|
|
63
|
+
...options.taskBoundary ? { taskBoundary: true } : {}
|
|
64
|
+
};
|
|
65
|
+
return prerenderStorage.run(scope, callback);
|
|
66
|
+
}
|
|
67
|
+
var ACTIVE_PRERENDER_CONTROLLERS = Symbol.for("pnext.activePrerenderControllers");
|
|
68
|
+
function activePrerenderControllers() {
|
|
69
|
+
const root = globalThis;
|
|
70
|
+
return root[ACTIVE_PRERENDER_CONTROLLERS] ??= new Set;
|
|
71
|
+
}
|
|
72
|
+
function abortActivePrerenderScopes() {
|
|
73
|
+
const controllers = activePrerenderControllers();
|
|
74
|
+
for (const controller of controllers)
|
|
75
|
+
controller.abort();
|
|
76
|
+
controllers.clear();
|
|
77
|
+
}
|
|
78
|
+
function isPrerendering() {
|
|
79
|
+
return prerenderStorage.getStore() !== undefined;
|
|
80
|
+
}
|
|
81
|
+
function runWithCsrBailout(callback) {
|
|
82
|
+
return csrBailoutStorage.run(true, callback);
|
|
83
|
+
}
|
|
84
|
+
function isCsrBailoutPrerender() {
|
|
85
|
+
return csrBailoutStorage.getStore() === true;
|
|
86
|
+
}
|
|
87
|
+
function isRuntimePrefetchPrerender() {
|
|
88
|
+
return prerenderStorage.getStore()?.runtimePrefetch === true;
|
|
89
|
+
}
|
|
90
|
+
function currentPrerenderScope() {
|
|
91
|
+
return prerenderStorage.getStore();
|
|
92
|
+
}
|
|
93
|
+
function completePrerender(scope) {
|
|
94
|
+
if (!scope)
|
|
95
|
+
return;
|
|
96
|
+
scope.abort();
|
|
97
|
+
}
|
|
98
|
+
var taskPostponeSymbol = Symbol.for("pnext.taskPostpone");
|
|
99
|
+
function isTaskPostpone(error) {
|
|
100
|
+
return isPostpone(error) && taskPostponeSymbol in error;
|
|
101
|
+
}
|
|
102
|
+
function taskPostponeError() {
|
|
103
|
+
const error = new PostponeError("task");
|
|
104
|
+
Object.defineProperty(error, taskPostponeSymbol, { value: true });
|
|
105
|
+
return error;
|
|
106
|
+
}
|
|
107
|
+
function isTaskBoundaryPrerender() {
|
|
108
|
+
return prerenderStorage.getStore()?.taskBoundary === true;
|
|
109
|
+
}
|
|
110
|
+
var taskBoundaryArmedStorage = new AsyncLocalStorage;
|
|
111
|
+
var taskBoundarySuspendedStorage = new AsyncLocalStorage;
|
|
112
|
+
function runWithTaskBoundaryArmed(callback) {
|
|
113
|
+
return taskBoundaryArmedStorage.run(true, callback);
|
|
114
|
+
}
|
|
115
|
+
function runWithTaskBoundarySuspended(callback) {
|
|
116
|
+
return taskBoundarySuspendedStorage.run(true, callback);
|
|
117
|
+
}
|
|
118
|
+
var useCacheWrapperSymbol = Symbol.for("pnext.compat.useCacheWrapper");
|
|
119
|
+
var useCacheMemoWrappedSymbol = Symbol.for("pnext.compat.useCacheMemoWrapped");
|
|
120
|
+
function isCachedComponent(component) {
|
|
121
|
+
if (typeof component !== "function")
|
|
122
|
+
return false;
|
|
123
|
+
const tagged = component;
|
|
124
|
+
return tagged[useCacheWrapperSymbol] === true || tagged[useCacheMemoWrappedSymbol] === true;
|
|
125
|
+
}
|
|
126
|
+
function awaitAtTaskBoundary(value) {
|
|
127
|
+
if (!isTaskBoundaryPrerender())
|
|
128
|
+
return value;
|
|
129
|
+
if (taskBoundaryArmedStorage.getStore() !== true)
|
|
130
|
+
return value;
|
|
131
|
+
if (taskBoundarySuspendedStorage.getStore() === true)
|
|
132
|
+
return value;
|
|
133
|
+
if (typeof value?.then !== "function")
|
|
134
|
+
return value;
|
|
135
|
+
const deadline = taskDeadline();
|
|
136
|
+
return Promise.race([value, deadline.promise]).finally(deadline.cancel);
|
|
137
|
+
}
|
|
138
|
+
var MAX_CACHE_FILL_DEFERRALS = 50;
|
|
139
|
+
var CACHE_FILL_STATE = Symbol.for("pnext.prerenderCacheFills");
|
|
140
|
+
function cacheFillState() {
|
|
141
|
+
const root = globalThis;
|
|
142
|
+
return root[CACHE_FILL_STATE] ??= { pending: 0, waiters: [] };
|
|
143
|
+
}
|
|
144
|
+
function trackPrerenderCacheFill(fill) {
|
|
145
|
+
recordShellCacheIO();
|
|
146
|
+
const state = cacheFillState();
|
|
147
|
+
state.pending += 1;
|
|
148
|
+
const settled = () => {
|
|
149
|
+
state.pending -= 1;
|
|
150
|
+
if (state.pending > 0)
|
|
151
|
+
return;
|
|
152
|
+
const waiters = state.waiters;
|
|
153
|
+
state.waiters = [];
|
|
154
|
+
for (const waiter of waiters)
|
|
155
|
+
waiter();
|
|
156
|
+
};
|
|
157
|
+
fill.then(settled, settled);
|
|
158
|
+
return fill;
|
|
159
|
+
}
|
|
160
|
+
var MICROTASK_DRAIN_TURNS = 1000;
|
|
161
|
+
function taskDeadline() {
|
|
162
|
+
let cancelled = false;
|
|
163
|
+
const promise = new Promise((_resolve, reject) => {
|
|
164
|
+
let deferrals = 0;
|
|
165
|
+
const drain = (remaining) => {
|
|
166
|
+
if (cancelled)
|
|
167
|
+
return;
|
|
168
|
+
if (remaining === 0) {
|
|
169
|
+
const state = cacheFillState();
|
|
170
|
+
if (state.pending > 0 && deferrals < MAX_CACHE_FILL_DEFERRALS) {
|
|
171
|
+
deferrals += 1;
|
|
172
|
+
state.waiters.push(() => drain(MICROTASK_DRAIN_TURNS));
|
|
173
|
+
return;
|
|
174
|
+
}
|
|
175
|
+
reject(taskPostponeError());
|
|
176
|
+
return;
|
|
177
|
+
}
|
|
178
|
+
const next = () => void Promise.resolve().then(() => drain(remaining - 1));
|
|
179
|
+
if (typeof process?.nextTick === "function")
|
|
180
|
+
process.nextTick(next);
|
|
181
|
+
else
|
|
182
|
+
next();
|
|
183
|
+
};
|
|
184
|
+
drain(MICROTASK_DRAIN_TURNS);
|
|
185
|
+
});
|
|
186
|
+
promise.catch(() => {
|
|
187
|
+
return;
|
|
188
|
+
});
|
|
189
|
+
return {
|
|
190
|
+
promise,
|
|
191
|
+
cancel: () => {
|
|
192
|
+
cancelled = true;
|
|
193
|
+
}
|
|
194
|
+
};
|
|
195
|
+
}
|
|
196
|
+
function prerenderCompleteError(api) {
|
|
197
|
+
const message = `During prerendering, \`${api}\` rejects when the prerender is complete.`;
|
|
198
|
+
const error = new Error(message);
|
|
199
|
+
Object.defineProperty(error, Symbol.for("nodejs.util.inspect.custom"), {
|
|
200
|
+
value: () => {
|
|
201
|
+
const stackTail = (error.stack ?? "").split(`
|
|
202
|
+
`).slice(1).join(`
|
|
203
|
+
`);
|
|
204
|
+
return stackTail ? `Error: ${message}
|
|
205
|
+
${stackTail}` : `Error: ${message}`;
|
|
206
|
+
},
|
|
207
|
+
enumerable: false,
|
|
208
|
+
configurable: true
|
|
209
|
+
});
|
|
210
|
+
return error;
|
|
211
|
+
}
|
|
212
|
+
var HANGING_PROMISE = Symbol.for("pnext.hangingPromise");
|
|
213
|
+
function isHangingPromise(value) {
|
|
214
|
+
return typeof value === "object" && value !== null && value[HANGING_PROMISE] === true;
|
|
215
|
+
}
|
|
216
|
+
function hangingPromise(api) {
|
|
217
|
+
const scope = prerenderStorage.getStore();
|
|
218
|
+
if (!scope) {
|
|
219
|
+
const stray = Promise.reject(new PostponeError(api));
|
|
220
|
+
stray.catch(() => {
|
|
221
|
+
return;
|
|
222
|
+
});
|
|
223
|
+
return stray;
|
|
224
|
+
}
|
|
225
|
+
let settle;
|
|
226
|
+
const promise = new Promise((_resolve, reject) => {
|
|
227
|
+
settle = (error) => reject(error);
|
|
228
|
+
});
|
|
229
|
+
const rejectAwaited = () => settle?.(new PostponeError(api));
|
|
230
|
+
if (scope.signal.aborted) {
|
|
231
|
+
settle?.(prerenderCompleteError(api));
|
|
232
|
+
} else {
|
|
233
|
+
scope.signal.addEventListener("abort", () => settle?.(prerenderCompleteError(api)), {
|
|
234
|
+
once: true
|
|
235
|
+
});
|
|
236
|
+
}
|
|
237
|
+
promise.catch(() => {
|
|
238
|
+
return;
|
|
239
|
+
});
|
|
240
|
+
return new Proxy(promise, {
|
|
241
|
+
get(target, property) {
|
|
242
|
+
if (property === HANGING_PROMISE)
|
|
243
|
+
return true;
|
|
244
|
+
if (property === "then") {
|
|
245
|
+
return (...args) => {
|
|
246
|
+
if (typeof args[0] === "function")
|
|
247
|
+
rejectAwaited();
|
|
248
|
+
markPrerenderDynamic();
|
|
249
|
+
recordShellRequestApi(api);
|
|
250
|
+
return target.then(...args);
|
|
251
|
+
};
|
|
252
|
+
}
|
|
253
|
+
if (property === "catch") {
|
|
254
|
+
return (...args) => {
|
|
255
|
+
markPrerenderDynamic();
|
|
256
|
+
recordShellRequestApi(api);
|
|
257
|
+
return target.catch(...args);
|
|
258
|
+
};
|
|
259
|
+
}
|
|
260
|
+
if (property === "finally") {
|
|
261
|
+
return (...args) => {
|
|
262
|
+
markPrerenderDynamic();
|
|
263
|
+
recordShellRequestApi(api);
|
|
264
|
+
return target.finally(...args);
|
|
265
|
+
};
|
|
266
|
+
}
|
|
267
|
+
const value = Reflect.get(target, property, target);
|
|
268
|
+
return value;
|
|
269
|
+
}
|
|
270
|
+
});
|
|
271
|
+
}
|
|
272
|
+
var CACHE_COMPONENTS = Symbol.for("pnext.cacheComponents");
|
|
273
|
+
function setCacheComponents(enabled) {
|
|
274
|
+
globalThis[CACHE_COMPONENTS] = enabled;
|
|
275
|
+
}
|
|
276
|
+
function cacheComponents() {
|
|
277
|
+
return globalThis[CACHE_COMPONENTS] === true;
|
|
278
|
+
}
|
|
279
|
+
var REAL_NOW = Symbol.for("pnext.realNow");
|
|
280
|
+
function realNow() {
|
|
281
|
+
const stored = globalThis[REAL_NOW];
|
|
282
|
+
return typeof stored === "function" ? stored() : Date.now();
|
|
283
|
+
}
|
|
284
|
+
var USE_CACHE_SCOPE_STORAGE = Symbol.for("pnext.compat.useCacheScopeStorage");
|
|
285
|
+
function insideUseCacheScope() {
|
|
286
|
+
const storage = globalThis[USE_CACHE_SCOPE_STORAGE];
|
|
287
|
+
return storage?.getStore() !== undefined;
|
|
288
|
+
}
|
|
289
|
+
async function runWithPrerenderDeterminism(fn) {
|
|
290
|
+
if (!cacheComponents())
|
|
291
|
+
return fn();
|
|
292
|
+
const deterministicTime = 1;
|
|
293
|
+
const realRandom = Math.random;
|
|
294
|
+
const RealDate = Date;
|
|
295
|
+
globalThis[REAL_NOW] = RealDate.now.bind(RealDate);
|
|
296
|
+
let counter = 0;
|
|
297
|
+
Math.random = () => {
|
|
298
|
+
counter = counter * 1103515245 + 12345 & 2147483647;
|
|
299
|
+
return counter % 1e6 / 1e6;
|
|
300
|
+
};
|
|
301
|
+
const PatchedDate = function(...args) {
|
|
302
|
+
if (!new.target)
|
|
303
|
+
return new RealDate(deterministicTime).toString();
|
|
304
|
+
if (args.length === 0)
|
|
305
|
+
return new RealDate(deterministicTime);
|
|
306
|
+
return Reflect.construct(RealDate, args);
|
|
307
|
+
};
|
|
308
|
+
Object.setPrototypeOf(PatchedDate, RealDate);
|
|
309
|
+
Object.defineProperty(PatchedDate, "prototype", { value: RealDate.prototype });
|
|
310
|
+
PatchedDate.now = () => deterministicTime;
|
|
311
|
+
Date = PatchedDate;
|
|
312
|
+
try {
|
|
313
|
+
return await fn();
|
|
314
|
+
} finally {
|
|
315
|
+
Math.random = realRandom;
|
|
316
|
+
Date = RealDate;
|
|
317
|
+
}
|
|
318
|
+
}
|
|
319
|
+
function markRuntimeApiOnAwait(promise) {
|
|
320
|
+
const scope = prerenderStorage.getStore();
|
|
321
|
+
if (scope?.runtimePrefetch !== true)
|
|
322
|
+
return promise;
|
|
323
|
+
return new Proxy(promise, {
|
|
324
|
+
get(target, property) {
|
|
325
|
+
if (property === "then") {
|
|
326
|
+
return (...args) => {
|
|
327
|
+
if (typeof args[0] === "function")
|
|
328
|
+
scope.awaitedRuntimeApi = true;
|
|
329
|
+
return target.then(...args);
|
|
330
|
+
};
|
|
331
|
+
}
|
|
332
|
+
return Reflect.get(target, property, target);
|
|
333
|
+
}
|
|
334
|
+
});
|
|
335
|
+
}
|
|
336
|
+
function abortOnSynchronousPlatformIOAccess() {
|
|
337
|
+
const scope = prerenderStorage.getStore();
|
|
338
|
+
if (scope?.runtimePrefetch !== true || scope.awaitedRuntimeApi !== true)
|
|
339
|
+
return;
|
|
340
|
+
if (insideUseCacheScope())
|
|
341
|
+
return;
|
|
342
|
+
throw new PostponeError("sync IO");
|
|
343
|
+
}
|
|
344
|
+
function patchMethod(owner, key, value) {
|
|
345
|
+
const hadOwn = Object.prototype.hasOwnProperty.call(owner, key);
|
|
346
|
+
const descriptor = Object.getOwnPropertyDescriptor(owner, key);
|
|
347
|
+
try {
|
|
348
|
+
Object.defineProperty(owner, key, {
|
|
349
|
+
value,
|
|
350
|
+
configurable: true,
|
|
351
|
+
writable: true,
|
|
352
|
+
enumerable: descriptor?.enumerable ?? false
|
|
353
|
+
});
|
|
354
|
+
} catch {
|
|
355
|
+
return () => {
|
|
356
|
+
return;
|
|
357
|
+
};
|
|
358
|
+
}
|
|
359
|
+
return () => {
|
|
360
|
+
try {
|
|
361
|
+
if (hadOwn && descriptor)
|
|
362
|
+
Object.defineProperty(owner, key, descriptor);
|
|
363
|
+
else
|
|
364
|
+
delete owner[key];
|
|
365
|
+
} catch {}
|
|
366
|
+
};
|
|
367
|
+
}
|
|
368
|
+
var SYNC_IO_SHIMS = Symbol.for("pnext.runtimePrefetchSyncIoShims");
|
|
369
|
+
function syncIoShimState() {
|
|
370
|
+
const root = globalThis;
|
|
371
|
+
return root[SYNC_IO_SHIMS] ??= { depth: 0, restore: [] };
|
|
372
|
+
}
|
|
373
|
+
function installSyncIoShims() {
|
|
374
|
+
const state = syncIoShimState();
|
|
375
|
+
if (++state.depth > 1)
|
|
376
|
+
return;
|
|
377
|
+
const root = globalThis;
|
|
378
|
+
const RealDate = Date;
|
|
379
|
+
const realRandom = Math.random;
|
|
380
|
+
const previousRealNow = root[REAL_NOW];
|
|
381
|
+
root[REAL_NOW] = RealDate.now.bind(RealDate);
|
|
382
|
+
const PatchedDate = function(...args) {
|
|
383
|
+
if (!new.target) {
|
|
384
|
+
abortOnSynchronousPlatformIOAccess();
|
|
385
|
+
return new RealDate().toString();
|
|
386
|
+
}
|
|
387
|
+
if (args.length === 0) {
|
|
388
|
+
abortOnSynchronousPlatformIOAccess();
|
|
389
|
+
return new RealDate;
|
|
390
|
+
}
|
|
391
|
+
return Reflect.construct(RealDate, args);
|
|
392
|
+
};
|
|
393
|
+
Object.setPrototypeOf(PatchedDate, RealDate);
|
|
394
|
+
Object.defineProperty(PatchedDate, "prototype", { value: RealDate.prototype });
|
|
395
|
+
PatchedDate.now = () => {
|
|
396
|
+
abortOnSynchronousPlatformIOAccess();
|
|
397
|
+
return RealDate.now();
|
|
398
|
+
};
|
|
399
|
+
Date = PatchedDate;
|
|
400
|
+
Math.random = () => {
|
|
401
|
+
abortOnSynchronousPlatformIOAccess();
|
|
402
|
+
return realRandom();
|
|
403
|
+
};
|
|
404
|
+
state.restore.push(() => {
|
|
405
|
+
Date = RealDate;
|
|
406
|
+
Math.random = realRandom;
|
|
407
|
+
root[REAL_NOW] = previousRealNow;
|
|
408
|
+
});
|
|
409
|
+
const perf = globalThis.performance;
|
|
410
|
+
if (perf) {
|
|
411
|
+
const realPerfNow = perf.now.bind(perf);
|
|
412
|
+
state.restore.push(patchMethod(perf, "now", () => {
|
|
413
|
+
abortOnSynchronousPlatformIOAccess();
|
|
414
|
+
return realPerfNow();
|
|
415
|
+
}));
|
|
416
|
+
}
|
|
417
|
+
const webCrypto = globalThis.crypto;
|
|
418
|
+
if (typeof webCrypto?.getRandomValues === "function") {
|
|
419
|
+
const realGetRandomValues = webCrypto.getRandomValues.bind(webCrypto);
|
|
420
|
+
state.restore.push(patchMethod(webCrypto, "getRandomValues", (array) => {
|
|
421
|
+
abortOnSynchronousPlatformIOAccess();
|
|
422
|
+
return realGetRandomValues(array);
|
|
423
|
+
}));
|
|
424
|
+
}
|
|
425
|
+
}
|
|
426
|
+
function restoreSyncIoShims() {
|
|
427
|
+
const state = syncIoShimState();
|
|
428
|
+
if (--state.depth > 0)
|
|
429
|
+
return;
|
|
430
|
+
state.depth = 0;
|
|
431
|
+
const restore = state.restore;
|
|
432
|
+
state.restore = [];
|
|
433
|
+
for (const undo of restore)
|
|
434
|
+
undo();
|
|
435
|
+
}
|
|
436
|
+
async function runWithRuntimePrefetchSyncIoAbort(fn) {
|
|
437
|
+
installSyncIoShims();
|
|
438
|
+
try {
|
|
439
|
+
return await fn();
|
|
440
|
+
} finally {
|
|
441
|
+
restoreSyncIoShims();
|
|
442
|
+
}
|
|
443
|
+
}
|
|
444
|
+
|
|
445
|
+
export { trackPrerenderDynamic, beginShellSourceTracking, endShellSourceTracking, runInPrerender, abortActivePrerenderScopes, isPrerendering, runWithCsrBailout, isCsrBailoutPrerender, isRuntimePrefetchPrerender, currentPrerenderScope, completePrerender, isTaskPostpone, isTaskBoundaryPrerender, runWithTaskBoundaryArmed, runWithTaskBoundarySuspended, isCachedComponent, awaitAtTaskBoundary, trackPrerenderCacheFill, isHangingPromise, hangingPromise, setCacheComponents, cacheComponents, realNow, runWithPrerenderDeterminism, markRuntimeApiOnAwait, runWithRuntimePrefetchSyncIoAbort };
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
// @bun
|
|
2
|
+
// src/compat/client/base-path.ts
|
|
3
|
+
function basePath() {
|
|
4
|
+
if (typeof window !== "undefined")
|
|
5
|
+
return window.__PNEXT_BASE_PATH__ ?? "";
|
|
6
|
+
return globalThis.__PNEXT_BASE_PATH__ ?? "";
|
|
7
|
+
}
|
|
8
|
+
function addBasePath(path) {
|
|
9
|
+
const base = basePath();
|
|
10
|
+
if (!base)
|
|
11
|
+
return path;
|
|
12
|
+
if (!path.startsWith("/") || path.startsWith("//"))
|
|
13
|
+
return path;
|
|
14
|
+
if (path === "/")
|
|
15
|
+
return base;
|
|
16
|
+
if (path === base || path.startsWith(`${base}/`))
|
|
17
|
+
return path;
|
|
18
|
+
return `${base}${path}`;
|
|
19
|
+
}
|
|
20
|
+
function stripBasePath(path) {
|
|
21
|
+
const base = basePath();
|
|
22
|
+
if (!base)
|
|
23
|
+
return path;
|
|
24
|
+
if (path === base)
|
|
25
|
+
return "/";
|
|
26
|
+
if (path.startsWith(`${base}/`))
|
|
27
|
+
return path.slice(base.length);
|
|
28
|
+
return path;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
export { addBasePath, stripBasePath };
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
// @bun
|
|
2
|
+
import {
|
|
3
|
+
loadNextConfig
|
|
4
|
+
} from "./index-6e4fqv30.js";
|
|
5
|
+
import {
|
|
6
|
+
registerConfigSource
|
|
7
|
+
} from "./index-x93hv0sc.js";
|
|
8
|
+
|
|
9
|
+
// src/compat/register/config.ts
|
|
10
|
+
function registerConfigSource2() {
|
|
11
|
+
registerConfigSource(async (root, options) => {
|
|
12
|
+
const { overrides } = await loadNextConfig(root, options);
|
|
13
|
+
return overrides;
|
|
14
|
+
});
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
export { registerConfigSource2 as registerConfigSource };
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
// @bun
|
|
2
|
+
// src/compat/react/server-inserted-html.ts
|
|
3
|
+
import { h, Fragment } from "preact";
|
|
4
|
+
import renderToString from "preact-render-to-string";
|
|
5
|
+
var collectorKey = Symbol.for("pnext.serverInsertedHTML");
|
|
6
|
+
var SCOPE_GETTER_KEY = Symbol.for("pnext.serverInsertedHTMLScope");
|
|
7
|
+
function setServerInsertedHTMLScope(getter) {
|
|
8
|
+
globalThis[SCOPE_GETTER_KEY] = getter;
|
|
9
|
+
}
|
|
10
|
+
function requestScope() {
|
|
11
|
+
const getter = globalThis[SCOPE_GETTER_KEY];
|
|
12
|
+
return getter?.();
|
|
13
|
+
}
|
|
14
|
+
function collector() {
|
|
15
|
+
const scope = requestScope();
|
|
16
|
+
if (scope) {
|
|
17
|
+
return {
|
|
18
|
+
callbacks: scope[collectorKey] ??= [],
|
|
19
|
+
scoped: true
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
const holder = globalThis;
|
|
23
|
+
holder.__PNEXT_SERVER_INSERTED_HTML__ ??= [];
|
|
24
|
+
return { callbacks: holder.__PNEXT_SERVER_INSERTED_HTML__, scoped: false };
|
|
25
|
+
}
|
|
26
|
+
var isServer = typeof document === "undefined";
|
|
27
|
+
function useServerInsertedHTML(callback) {
|
|
28
|
+
if (!isServer)
|
|
29
|
+
return;
|
|
30
|
+
collector().callbacks.push(callback);
|
|
31
|
+
}
|
|
32
|
+
function renderServerInsertedHTML() {
|
|
33
|
+
const { callbacks, scoped } = collector();
|
|
34
|
+
if (!scoped)
|
|
35
|
+
globalThis.__PNEXT_SERVER_INSERTED_HTML__ = [];
|
|
36
|
+
if (callbacks.length === 0)
|
|
37
|
+
return "";
|
|
38
|
+
const parts = [];
|
|
39
|
+
for (const callback of callbacks) {
|
|
40
|
+
try {
|
|
41
|
+
const node = callback();
|
|
42
|
+
if (node == null || node === false)
|
|
43
|
+
continue;
|
|
44
|
+
parts.push(renderToString(h(Fragment, null, node)));
|
|
45
|
+
} catch {}
|
|
46
|
+
}
|
|
47
|
+
return parts.join("");
|
|
48
|
+
}
|
|
49
|
+
function clearServerInsertedHTML() {
|
|
50
|
+
const scope = requestScope();
|
|
51
|
+
if (scope)
|
|
52
|
+
scope[collectorKey] = [];
|
|
53
|
+
else
|
|
54
|
+
globalThis.__PNEXT_SERVER_INSERTED_HTML__ = [];
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
export { setServerInsertedHTMLScope, useServerInsertedHTML, renderServerInsertedHTML, clearServerInsertedHTML };
|