@cedarjs/vite 4.0.0 → 5.0.0-canary.0

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.
Files changed (32) hide show
  1. package/dist/cjs/devFeServer.js +280 -15
  2. package/dist/cjs/lib/registerFwGlobalsAndShims.js +9 -0
  3. package/dist/cjs/plugins/vite-plugin-rsc-ssr-router-import.js +2 -2
  4. package/dist/cjs/plugins/vite-plugin-rsc-transform-server.js +4 -0
  5. package/dist/cjs/rsc/rscRenderer.js +23 -9
  6. package/dist/cjs/rsc/rscRequestHandler.js +6 -6
  7. package/dist/cjs/runFeServer.js +3 -22
  8. package/dist/cjs/streaming/createReactStreamingHandler.js +13 -10
  9. package/dist/cjs/streaming/streamHelpers.js +49 -32
  10. package/dist/cjs/streaming/triggerRouteHooks.js +3 -3
  11. package/dist/devFeServer.js +284 -16
  12. package/dist/lib/registerFwGlobalsAndShims.js +9 -0
  13. package/dist/plugins/vite-plugin-rsc-ssr-router-import.d.ts.map +1 -1
  14. package/dist/plugins/vite-plugin-rsc-ssr-router-import.js +2 -2
  15. package/dist/plugins/vite-plugin-rsc-transform-server.d.ts.map +1 -1
  16. package/dist/plugins/vite-plugin-rsc-transform-server.js +4 -0
  17. package/dist/rsc/rscRenderer.d.ts.map +1 -1
  18. package/dist/rsc/rscRenderer.js +19 -5
  19. package/dist/rsc/rscRequestHandler.d.ts +2 -2
  20. package/dist/rsc/rscRequestHandler.d.ts.map +1 -1
  21. package/dist/rsc/rscRequestHandler.js +4 -4
  22. package/dist/runFeServer.js +2 -21
  23. package/dist/streaming/createReactStreamingHandler.d.ts +1 -1
  24. package/dist/streaming/createReactStreamingHandler.d.ts.map +1 -1
  25. package/dist/streaming/createReactStreamingHandler.js +13 -10
  26. package/dist/streaming/streamHelpers.d.ts +2 -2
  27. package/dist/streaming/streamHelpers.d.ts.map +1 -1
  28. package/dist/streaming/streamHelpers.js +49 -31
  29. package/dist/streaming/triggerRouteHooks.d.ts +2 -2
  30. package/dist/streaming/triggerRouteHooks.d.ts.map +1 -1
  31. package/dist/streaming/triggerRouteHooks.js +3 -3
  32. package/package.json +11 -11
@@ -3,8 +3,8 @@ import type Router from 'find-my-way';
3
3
  import type { ViteDevServer } from 'vite';
4
4
  interface CreateRscRequestHandlerOptions {
5
5
  getMiddlewareRouter: () => Promise<Router.Instance<any>>;
6
- viteDevServer?: ViteDevServer;
6
+ viteSsrDevServer?: ViteDevServer;
7
7
  }
8
- export declare function createRscRequestHandler(options: CreateRscRequestHandlerOptions): (req: ExpressRequest, res: ExpressResponse, next: () => void) => Promise<void>;
8
+ export declare function createRscRequestHandler(options: CreateRscRequestHandlerOptions): Promise<(req: ExpressRequest, res: ExpressResponse, next: () => void) => Promise<void>>;
9
9
  export {};
10
10
  //# sourceMappingURL=rscRequestHandler.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"rscRequestHandler.d.ts","sourceRoot":"","sources":["../../src/rsc/rscRequestHandler.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,OAAO,IAAI,cAAc,EACzB,QAAQ,IAAI,eAAe,EAC5B,MAAM,SAAS,CAAA;AAChB,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAErC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,MAAM,CAAA;AAgBzC,UAAU,8BAA8B;IACtC,mBAAmB,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAA;IACxD,aAAa,CAAC,EAAE,aAAa,CAAA;CAC9B;AAED,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,8BAA8B,IAMrC,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,MAAM,MAAM,IAAI,mBAqHnB"}
1
+ {"version":3,"file":"rscRequestHandler.d.ts","sourceRoot":"","sources":["../../src/rsc/rscRequestHandler.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,OAAO,IAAI,cAAc,EACzB,QAAQ,IAAI,eAAe,EAC5B,MAAM,SAAS,CAAA;AAChB,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAErC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,MAAM,CAAA;AAazC,UAAU,8BAA8B;IACtC,mBAAmB,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAA;IACxD,gBAAgB,CAAC,EAAE,aAAa,CAAA;CACjC;AAED,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,8BAA8B,iBAShC,cAAc,OACd,eAAe,QACd,MAAM,IAAI,oBAqHnB"}
@@ -8,10 +8,10 @@ import {
8
8
  } from "../bundled/react-server-dom-webpack.server.js";
9
9
  import { hasStatusCode } from "../lib/StatusError.js";
10
10
  import { invoke } from "../middleware/invokeMiddleware.js";
11
- import { renderRscToStream } from "./rscRenderer.js";
12
- import { sendRscFlightToStudio } from "./rscStudioHandlers.js";
13
11
  const BASE_PATH = "/rw-rsc/";
14
- function createRscRequestHandler(options) {
12
+ async function createRscRequestHandler(options) {
13
+ const { renderRscToStream } = await import("./rscRenderer.js");
14
+ const { sendRscFlightToStudio } = await import("./rscStudioHandlers.js");
15
15
  return async (req, res, next) => {
16
16
  console.log("BASE_PATH", BASE_PATH);
17
17
  console.log("req.originalUrl", req.originalUrl, "req.url", req.url);
@@ -26,7 +26,7 @@ function createRscRequestHandler(options) {
26
26
  matchedMw?.handler,
27
27
  {
28
28
  params: matchedMw?.params,
29
- viteDevServer: options.viteDevServer
29
+ viteSsrDevServer: options.viteSsrDevServer
30
30
  }
31
31
  );
32
32
  const webRes = mwResponse.toResponse();
@@ -4,13 +4,13 @@ import { createServerAdapter } from "@whatwg-node/server";
4
4
  import { config as loadDotEnv } from "dotenv-defaults";
5
5
  import express from "express";
6
6
  import { createProxyMiddleware } from "http-proxy-middleware";
7
- import WebSocket, { WebSocketServer } from "ws";
8
7
  import { getConfig, getPaths } from "@cedarjs/project-config";
9
8
  import { getRscStylesheetLinkGenerator } from "@cedarjs/router/rscCss";
10
9
  import { createPerRequestMap, createServerStorage } from "@cedarjs/server-store";
11
10
  import { registerFwGlobalsAndShims } from "./lib/registerFwGlobalsAndShims.js";
12
11
  import { invoke } from "./middleware/invokeMiddleware.js";
13
12
  import { createMiddlewareRouter } from "./middleware/register.js";
13
+ import { createWebSocketServer } from "./rsc/rscWebSocketServer.js";
14
14
  import { createReactStreamingHandler } from "./streaming/createReactStreamingHandler.js";
15
15
  import { convertExpressHeaders, getFullUrl } from "./utils.js";
16
16
  loadDotEnv({
@@ -85,7 +85,7 @@ async function runFeServer() {
85
85
  const { createRscRequestHandler } = await import("./rsc/rscRequestHandler.js");
86
86
  app.use(
87
87
  "/rw-rsc",
88
- createRscRequestHandler({
88
+ await createRscRequestHandler({
89
89
  getMiddlewareRouter: async () => middlewareRouter
90
90
  })
91
91
  );
@@ -105,25 +105,6 @@ async function runFeServer() {
105
105
  `Started production FE server on http://localhost:${rwConfig.web.port}`
106
106
  );
107
107
  }
108
- function createWebSocketServer() {
109
- const wsServer = new WebSocketServer({ port: 18998 });
110
- wsServer.on("connection", (ws) => {
111
- console.log("A new client connected.");
112
- ws.on("message", (data) => {
113
- const message = data.toString();
114
- console.log("runFeServer.ts: Received message:");
115
- console.log(message.slice(0, 120) + "...");
116
- wsServer.clients.forEach((client) => {
117
- if (client.readyState === WebSocket.OPEN) {
118
- client.send(message);
119
- }
120
- });
121
- });
122
- ws.on("close", () => {
123
- console.log("A client disconnected.");
124
- });
125
- });
126
- }
127
108
  runFeServer();
128
109
  export {
129
110
  runFeServer
@@ -7,6 +7,6 @@ interface CreateReactStreamingHandlerOptions {
7
7
  getStylesheetLinks: (route?: RWRouteManifestItem | RouteSpec) => string[];
8
8
  getMiddlewareRouter: () => Promise<Router.Instance<any>>;
9
9
  }
10
- export declare const createReactStreamingHandler: ({ routes, clientEntryPath, getStylesheetLinks, getMiddlewareRouter, }: CreateReactStreamingHandlerOptions, viteDevServer?: ViteDevServer) => Promise<(req: Request) => Promise<Response>>;
10
+ export declare const createReactStreamingHandler: ({ routes, clientEntryPath, getStylesheetLinks, getMiddlewareRouter, }: CreateReactStreamingHandlerOptions, viteSsrDevServer?: ViteDevServer) => Promise<(req: Request) => Promise<Response>>;
11
11
  export {};
12
12
  //# sourceMappingURL=createReactStreamingHandler.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"createReactStreamingHandler.d.ts","sourceRoot":"","sources":["../../src/streaming/createReactStreamingHandler.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAGrC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,MAAM,CAAA;AAIzC,OAAO,KAAK,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAA;AAoBvE,UAAU,kCAAkC;IAC1C,MAAM,EAAE,mBAAmB,EAAE,CAAA;IAC7B,eAAe,EAAE,MAAM,CAAA;IACvB,kBAAkB,EAAE,CAAC,KAAK,CAAC,EAAE,mBAAmB,GAAG,SAAS,KAAK,MAAM,EAAE,CAAA;IACzE,mBAAmB,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAA;CACzD;AAOD,eAAO,MAAM,2BAA2B,GACtC,uEAKG,kCAAkC,EACrC,gBAAgB,aAAa,mBAuBV,OAAO,uBA8I3B,CAAA"}
1
+ {"version":3,"file":"createReactStreamingHandler.d.ts","sourceRoot":"","sources":["../../src/streaming/createReactStreamingHandler.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAGrC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,MAAM,CAAA;AAIzC,OAAO,KAAK,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAA;AAoBvE,UAAU,kCAAkC;IAC1C,MAAM,EAAE,mBAAmB,EAAE,CAAA;IAC7B,eAAe,EAAE,MAAM,CAAA;IACvB,kBAAkB,EAAE,CAAC,KAAK,CAAC,EAAE,mBAAmB,GAAG,SAAS,KAAK,MAAM,EAAE,CAAA;IACzE,mBAAmB,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAA;CACzD;AAOD,eAAO,MAAM,2BAA2B,GACtC,uEAKG,kCAAkC,EACrC,mBAAmB,aAAa,mBAuBb,OAAO,uBAiJ3B,CAAA"}
@@ -23,10 +23,10 @@ const createReactStreamingHandler = async ({
23
23
  clientEntryPath,
24
24
  getStylesheetLinks,
25
25
  getMiddlewareRouter
26
- }, viteDevServer) => {
26
+ }, viteSsrDevServer) => {
27
27
  const rwPaths = getPaths();
28
28
  const rwConfig = getConfig();
29
- const isProd = !viteDevServer;
29
+ const isProd = !viteSsrDevServer;
30
30
  const middlewareRouter = await getMiddlewareRouter();
31
31
  let entryServerImport;
32
32
  let fallbackDocumentImport;
@@ -70,7 +70,7 @@ const createReactStreamingHandler = async ({
70
70
  route: currentRoute,
71
71
  cssPaths: cssLinks,
72
72
  params: matchedMw?.params,
73
- viteDevServer
73
+ viteSsrDevServer
74
74
  }
75
75
  );
76
76
  if (mwResponse.isRedirect() || mwResponse.body) {
@@ -89,8 +89,8 @@ const createReactStreamingHandler = async ({
89
89
  });
90
90
  }
91
91
  if (!isProd) {
92
- entryServerImport = await ssrLoadEntryServer(viteDevServer);
93
- fallbackDocumentImport = await viteDevServer.ssrLoadModule(
92
+ entryServerImport = await ssrLoadEntryServer(viteSsrDevServer);
93
+ fallbackDocumentImport = await viteSsrDevServer.ssrLoadModule(
94
94
  rwPaths.web.document
95
95
  );
96
96
  }
@@ -107,10 +107,12 @@ const createReactStreamingHandler = async ({
107
107
  req,
108
108
  parsedParams
109
109
  },
110
- viteDevServer
110
+ viteSsrDevServer
111
111
  });
112
112
  metaTags = routeHookOutput.meta;
113
- const jsBundles = [viteDevServer ? clientEntryPath : "/" + clientEntryPath];
113
+ const jsBundles = [
114
+ viteSsrDevServer ? clientEntryPath : "/" + clientEntryPath
115
+ ];
114
116
  if (currentRoute.bundle) {
115
117
  jsBundles.push("/" + currentRoute.bundle);
116
118
  }
@@ -130,12 +132,13 @@ const createReactStreamingHandler = async ({
130
132
  {
131
133
  waitForAllReady: isSeoCrawler,
132
134
  onError: (err) => {
133
- if (!isProd && viteDevServer) {
134
- viteDevServer.ssrFixStacktrace(err);
135
+ if (!isProd && viteSsrDevServer) {
136
+ viteSsrDevServer.ssrFixStacktrace(err);
135
137
  }
136
138
  console.error(err);
137
139
  }
138
- }
140
+ },
141
+ viteSsrDevServer
139
142
  );
140
143
  return reactResponse;
141
144
  };
@@ -1,4 +1,5 @@
1
1
  import type React from 'react';
2
+ import type { ViteDevServer } from 'vite';
2
3
  import type { ServerAuthState } from '@cedarjs/auth/dist/AuthProvider/ServerAuthProvider.js';
3
4
  import type { TagDescriptor } from '@cedarjs/web';
4
5
  import type { MiddlewareResponse } from '@cedarjs/web/middleware';
@@ -17,7 +18,6 @@ interface StreamOptions {
17
18
  waitForAllReady?: boolean;
18
19
  onError?: (err: Error) => void;
19
20
  }
20
- export declare function reactRenderToStreamResponse(mwRes: MiddlewareResponse, renderOptions: RenderToStreamArgs, streamOptions: StreamOptions): Promise<Response>;
21
- export declare function importModule(mod: 'rd-server' | '__cedarjs__react' | '__cedarjs__location' | '__cedarjs__server_auth_provider' | '__cedarjs__server_inject'): Promise<any>;
21
+ export declare function reactRenderToStreamResponse(mwRes: MiddlewareResponse, renderOptions: RenderToStreamArgs, streamOptions: StreamOptions, viteDevServer?: ViteDevServer): Promise<Response>;
22
22
  export {};
23
23
  //# sourceMappingURL=streamHelpers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"streamHelpers.d.ts","sourceRoot":"","sources":["../../src/streaming/streamHelpers.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAQ9B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uDAAuD,CAAA;AAI5F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AACjD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAGjE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAYlD,UAAU,kBAAkB;IAC1B,WAAW,EAAE,eAAe,CAAA;IAC5B,gBAAgB,EAAE,KAAK,CAAC,iBAAiB,CAAA;IACzC,UAAU,EAAE,GAAG,CAAA;IACf,QAAQ,EAAE,aAAa,EAAE,CAAA;IACzB,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClB,MAAM,EAAE,OAAO,CAAA;IACf,SAAS,CAAC,EAAE,MAAM,EAAE,CAAA;IACpB,SAAS,EAAE,eAAe,CAAA;CAC3B;AAED,UAAU,aAAa;IACrB,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,IAAI,CAAA;CAC/B;AA2BD,wBAAsB,2BAA2B,CAC/C,KAAK,EAAE,kBAAkB,EACzB,aAAa,EAAE,kBAAkB,EACjC,aAAa,EAAE,aAAa,qBAgM7B;AA2BD,wBAAsB,YAAY,CAChC,GAAG,EACC,WAAW,GACX,kBAAkB,GAClB,qBAAqB,GACrB,iCAAiC,GACjC,0BAA0B,gBA6B/B"}
1
+ {"version":3,"file":"streamHelpers.d.ts","sourceRoot":"","sources":["../../src/streaming/streamHelpers.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAO9B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,MAAM,CAAA;AAEzC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uDAAuD,CAAA;AAI5F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AACjD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAGjE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAYlD,UAAU,kBAAkB;IAC1B,WAAW,EAAE,eAAe,CAAA;IAC5B,gBAAgB,EAAE,KAAK,CAAC,iBAAiB,CAAA;IACzC,UAAU,EAAE,GAAG,CAAA;IACf,QAAQ,EAAE,aAAa,EAAE,CAAA;IACzB,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClB,MAAM,EAAE,OAAO,CAAA;IACf,SAAS,CAAC,EAAE,MAAM,EAAE,CAAA;IACpB,SAAS,EAAE,eAAe,CAAA;CAC3B;AAED,UAAU,aAAa;IACrB,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,IAAI,CAAA;CAC/B;AA2BD,wBAAsB,2BAA2B,CAC/C,KAAK,EAAE,kBAAkB,EACzB,aAAa,EAAE,kBAAkB,EACjC,aAAa,EAAE,aAAa,EAC5B,aAAa,CAAC,EAAE,aAAa,qBAgM9B"}
@@ -27,7 +27,7 @@ globalThis.__webpack_require__ ||= (id) => {
27
27
  return globalThis.__rw_module_cache__.get(id)
28
28
  };
29
29
  `;
30
- async function reactRenderToStreamResponse(mwRes, renderOptions, streamOptions) {
30
+ async function reactRenderToStreamResponse(mwRes, renderOptions, streamOptions, viteDevServer) {
31
31
  const { waitForAllReady = false } = streamOptions;
32
32
  const {
33
33
  ServerEntry,
@@ -49,13 +49,13 @@ async function reactRenderToStreamResponse(mwRes, renderOptions, streamOptions)
49
49
  meta: metaTags
50
50
  });
51
51
  const rscEnabled = getConfig().experimental?.rsc?.enabled;
52
- const { createElement } = rscEnabled ? await importModule("__cedarjs__react") : await import("react");
52
+ const { createElement } = rscEnabled ? await importModule("__cedarjs__react", !!viteDevServer) : await import("react");
53
53
  const {
54
54
  createInjector,
55
55
  ServerHtmlProvider,
56
56
  ServerInjectedHtml
57
- } = rscEnabled ? await importModule("__cedarjs__server_inject") : await import("@cedarjs/web/serverInject");
58
- const { renderToString } = rscEnabled ? await importModule("rd-server") : await import("react-dom/server");
57
+ } = rscEnabled ? await importModule("__cedarjs__server_inject", !!viteDevServer) : await import("@cedarjs/web/serverInject");
58
+ const { renderToString } = rscEnabled ? await importModule("rd-server", !!viteDevServer) : await import("react-dom/server");
59
59
  const { injectionState, injectToPage } = createInjector();
60
60
  const bufferTransform = createBufferedTransformStream();
61
61
  const serverInjectionTransform = createServerInjectionTransform({
@@ -70,8 +70,8 @@ async function reactRenderToStreamResponse(mwRes, renderOptions, streamOptions)
70
70
  controller.abort();
71
71
  }, 1e4);
72
72
  const timeoutTransform = createTimeoutTransform(timeoutHandle);
73
- const { ServerAuthProvider } = rscEnabled ? await importModule("__cedarjs__server_auth_provider") : await import("@cedarjs/auth/dist/AuthProvider/ServerAuthProvider.js");
74
- const { LocationProvider } = rscEnabled ? await importModule("__cedarjs__location") : await import("@cedarjs/router/location");
73
+ const { ServerAuthProvider } = rscEnabled ? await importModule("__cedarjs__server_auth_provider", !!viteDevServer) : await import("@cedarjs/auth/dist/AuthProvider/ServerAuthProvider.js");
74
+ const { LocationProvider } = rscEnabled ? await importModule("__cedarjs__location", !!viteDevServer) : await import("@cedarjs/router/location");
75
75
  const renderRoot = (url) => {
76
76
  return createElement(
77
77
  ServerAuthProvider,
@@ -103,7 +103,7 @@ async function reactRenderToStreamResponse(mwRes, renderOptions, streamOptions)
103
103
  ),
104
104
  bootstrapModules: jsBundles
105
105
  };
106
- const { renderToReadableStream } = rscEnabled ? await importModule("rd-server") : await import("react-dom/server.edge");
106
+ const { renderToReadableStream } = rscEnabled ? await importModule("rd-server", !!viteDevServer) : await import("react-dom/server.edge");
107
107
  try {
108
108
  let didErrorOutsideShell = false;
109
109
  const renderToStreamOptions = {
@@ -162,33 +162,51 @@ function applyStreamTransforms(reactStream, transformsToApply) {
162
162
  }
163
163
  return outputStream;
164
164
  }
165
- async function importModule(mod) {
166
- const distSsr = getPaths().web.distSsr;
167
- const rdServerPath = makeFilePath(path.join(distSsr, "rd-server.mjs"));
168
- const reactPath = makeFilePath(path.join(distSsr, "__cedarjs__react.mjs"));
169
- const locationPath = makeFilePath(
170
- path.join(distSsr, "__cedarjs__location.mjs")
171
- );
172
- const ServerAuthProviderPath = makeFilePath(
173
- path.join(distSsr, "__cedarjs__server_auth_provider.mjs")
174
- );
175
- const ServerInjectPath = makeFilePath(
176
- path.join(distSsr, "__cedarjs__server_inject.mjs")
177
- );
178
- if (mod === "rd-server") {
179
- return (await import(rdServerPath)).default;
180
- } else if (mod === "__cedarjs__react") {
181
- return (await import(reactPath)).default;
182
- } else if (mod === "__cedarjs__location") {
183
- return await import(locationPath);
184
- } else if (mod === "__cedarjs__server_auth_provider") {
185
- return await import(ServerAuthProviderPath);
186
- } else if (mod === "__cedarjs__server_inject") {
187
- return await import(ServerInjectPath);
165
+ async function importModule(mod, isDev) {
166
+ if (isDev) {
167
+ if (mod === "rd-server") {
168
+ const loadedMod = await import("react-dom/server.edge");
169
+ return loadedMod.default;
170
+ } else if (mod === "__cedarjs__react") {
171
+ const loadedMod = await import("react");
172
+ return loadedMod.default;
173
+ } else if (mod === "__cedarjs__location") {
174
+ const loadedMod = await import("@cedarjs/router/location");
175
+ return loadedMod;
176
+ } else if (mod === "__cedarjs__server_auth_provider") {
177
+ const loadedMod = await import("@cedarjs/auth/dist/AuthProvider/ServerAuthProvider.js");
178
+ return loadedMod;
179
+ } else if (mod === "__cedarjs__server_inject") {
180
+ const loadedMod = await import("@cedarjs/web/serverInject");
181
+ return loadedMod;
182
+ }
183
+ } else {
184
+ const distSsr = getPaths().web.distSsr;
185
+ const rdServerPath = makeFilePath(path.join(distSsr, "rd-server.mjs"));
186
+ const reactPath = makeFilePath(path.join(distSsr, "__cedarjs__react.mjs"));
187
+ const locationPath = makeFilePath(
188
+ path.join(distSsr, "__cedarjs__location.mjs")
189
+ );
190
+ const serverAuthProviderPath = makeFilePath(
191
+ path.join(distSsr, "__cedarjs__server_auth_provider.mjs")
192
+ );
193
+ const serverInjectPath = makeFilePath(
194
+ path.join(distSsr, "__cedarjs__server_inject.mjs")
195
+ );
196
+ if (mod === "rd-server") {
197
+ return (await import(rdServerPath)).default;
198
+ } else if (mod === "__cedarjs__react") {
199
+ return (await import(reactPath)).default;
200
+ } else if (mod === "__cedarjs__location") {
201
+ return await import(locationPath);
202
+ } else if (mod === "__cedarjs__server_auth_provider") {
203
+ return await import(serverAuthProviderPath);
204
+ } else if (mod === "__cedarjs__server_inject") {
205
+ return await import(serverInjectPath);
206
+ }
188
207
  }
189
208
  throw new Error("Unknown module " + mod);
190
209
  }
191
210
  export {
192
- importModule,
193
211
  reactRenderToStreamResponse
194
212
  };
@@ -18,9 +18,9 @@ interface LoadAndRunRouteHooks {
18
18
  req: Request;
19
19
  parsedParams?: Record<string, any>;
20
20
  };
21
- viteDevServer?: ViteDevServer;
21
+ viteSsrDevServer?: ViteDevServer;
22
22
  previousOutput?: RouteHookOutput;
23
23
  }
24
- export declare const loadAndRunRouteHooks: ({ paths, reqMeta, viteDevServer, previousOutput, }: LoadAndRunRouteHooks) => Promise<RouteHookOutput>;
24
+ export declare const loadAndRunRouteHooks: ({ paths, reqMeta, viteSsrDevServer, previousOutput, }: LoadAndRunRouteHooks) => Promise<RouteHookOutput>;
25
25
  export {};
26
26
  //# sourceMappingURL=triggerRouteHooks.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"triggerRouteHooks.d.ts","sourceRoot":"","sources":["../../src/streaming/triggerRouteHooks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,MAAM,CAAA;AAGzC,OAAO,KAAK,EACV,QAAQ,EAER,eAAe,EACf,aAAa,EACd,MAAM,cAAc,CAAA;AAErB,UAAU,UAAU;IAClB,IAAI,CAAC,EAAE,QAAQ,CAAA;CAChB;AAED,UAAU,sBAAsB;IAC9B,UAAU,EAAE,UAAU,CAAA;IACtB,GAAG,EAAE,OAAO,CAAA;IACZ,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAClC,cAAc,CAAC,EAAE,eAAe,CAAA;CACjC;AAED,eAAO,MAAM,iBAAiB,GAAU,oDAKrC,sBAAsB;;EA4BxB,CAAA;AAED,UAAU,oBAAoB;IAC5B,KAAK,EAAE,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,EAAE,CAAA;IACpC,OAAO,EAAE;QACP,GAAG,EAAE,OAAO,CAAA;QACZ,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;KACnC,CAAA;IACD,aAAa,CAAC,EAAE,aAAa,CAAA;IAC7B,cAAc,CAAC,EAAE,eAAe,CAAA;CACjC;AAMD,eAAO,MAAM,oBAAoB,GAAU,oDAKxC,oBAAoB,KAAG,OAAO,CAAC,eAAe,CAyChD,CAAA"}
1
+ {"version":3,"file":"triggerRouteHooks.d.ts","sourceRoot":"","sources":["../../src/streaming/triggerRouteHooks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,MAAM,CAAA;AAGzC,OAAO,KAAK,EACV,QAAQ,EAER,eAAe,EACf,aAAa,EACd,MAAM,cAAc,CAAA;AAErB,UAAU,UAAU;IAClB,IAAI,CAAC,EAAE,QAAQ,CAAA;CAChB;AAED,UAAU,sBAAsB;IAC9B,UAAU,EAAE,UAAU,CAAA;IACtB,GAAG,EAAE,OAAO,CAAA;IACZ,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAClC,cAAc,CAAC,EAAE,eAAe,CAAA;CACjC;AAED,eAAO,MAAM,iBAAiB,GAAU,oDAKrC,sBAAsB;;EA4BxB,CAAA;AAED,UAAU,oBAAoB;IAC5B,KAAK,EAAE,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,EAAE,CAAA;IACpC,OAAO,EAAE;QACP,GAAG,EAAE,OAAO,CAAA;QACZ,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;KACnC,CAAA;IACD,gBAAgB,CAAC,EAAE,aAAa,CAAA;IAChC,cAAc,CAAC,EAAE,eAAe,CAAA;CACjC;AAMD,eAAO,MAAM,oBAAoB,GAAU,uDAKxC,oBAAoB,KAAG,OAAO,CAAC,eAAe,CA2ChD,CAAA"}
@@ -31,11 +31,11 @@ const defaultRouteHookOutput = {
31
31
  const loadAndRunRouteHooks = async ({
32
32
  paths = [],
33
33
  reqMeta,
34
- viteDevServer,
34
+ viteSsrDevServer,
35
35
  previousOutput = defaultRouteHookOutput
36
36
  }) => {
37
37
  const loadModule = async (path) => {
38
- return viteDevServer ? viteDevServer.ssrLoadModule(path) : import(path);
38
+ return viteSsrDevServer ? viteSsrDevServer.ssrLoadModule(path) : import(path);
39
39
  };
40
40
  let currentRouteHooks;
41
41
  let rhOutput = defaultRouteHookOutput;
@@ -55,7 +55,7 @@ const loadAndRunRouteHooks = async ({
55
55
  paths,
56
56
  reqMeta,
57
57
  previousOutput: rhOutput,
58
- viteDevServer
58
+ viteSsrDevServer
59
59
  });
60
60
  } else {
61
61
  return rhOutput;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cedarjs/vite",
3
- "version": "4.0.0",
3
+ "version": "5.0.0-canary.0+0428bd91ab",
4
4
  "description": "Vite configuration package for CedarJS",
5
5
  "repository": {
6
6
  "type": "git",
@@ -64,14 +64,14 @@
64
64
  "@babel/generator": "7.29.1",
65
65
  "@babel/parser": "7.29.2",
66
66
  "@babel/traverse": "7.29.0",
67
- "@cedarjs/auth": "4.0.0",
68
- "@cedarjs/babel-config": "4.0.0",
69
- "@cedarjs/cookie-jar": "4.0.0",
70
- "@cedarjs/internal": "4.0.0",
71
- "@cedarjs/project-config": "4.0.0",
72
- "@cedarjs/server-store": "4.0.0",
73
- "@cedarjs/testing": "4.0.0",
74
- "@cedarjs/web": "4.0.0",
67
+ "@cedarjs/auth": "5.0.0-canary.1",
68
+ "@cedarjs/babel-config": "5.0.0-canary.1",
69
+ "@cedarjs/cookie-jar": "5.0.0-canary.1",
70
+ "@cedarjs/internal": "5.0.0-canary.1",
71
+ "@cedarjs/project-config": "5.0.0-canary.1",
72
+ "@cedarjs/server-store": "5.0.0-canary.1",
73
+ "@cedarjs/testing": "5.0.0-canary.1",
74
+ "@cedarjs/web": "5.0.0-canary.1",
75
75
  "@swc/core": "1.15.24",
76
76
  "@vitejs/plugin-react": "4.7.0",
77
77
  "@whatwg-node/fetch": "0.10.13",
@@ -86,7 +86,7 @@
86
86
  "find-my-way": "8.2.2",
87
87
  "http-proxy-middleware": "3.0.5",
88
88
  "isbot": "5.1.37",
89
- "react": "18.3.1",
89
+ "react": "19.2.3",
90
90
  "react-server-dom-webpack": "19.2.4",
91
91
  "rimraf": "6.1.3",
92
92
  "vite": "7.3.2",
@@ -118,5 +118,5 @@
118
118
  "publishConfig": {
119
119
  "access": "public"
120
120
  },
121
- "gitHead": "b73014711894261b601a749b8caa2ae3bb1bec07"
121
+ "gitHead": "0428bd91ab99f03f58990e119d30f1ef9db8b8c5"
122
122
  }