@analogjs/vite-plugin-nitro 0.2.0-rc.1 → 0.2.0-rc.2

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/README.md CHANGED
@@ -1,10 +1,10 @@
1
1
  # @analogjs/vite-plugin-nitro
2
2
 
3
- A Vite plugin for adding a nitro API server
3
+ A Vite plugin for integrating with [Nitro](https://nitro.unjs.io).
4
4
 
5
5
  ## Install
6
6
 
7
- yarn add @analogjs/vite-plugin-nitro
7
+ npm install @analogjs/vite-plugin-nitro --save-dev
8
8
 
9
9
  ## Setup
10
10
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@analogjs/vite-plugin-nitro",
3
- "version": "0.2.0-rc.1",
3
+ "version": "0.2.0-rc.2",
4
4
  "type": "commonjs",
5
5
  "description": "A Vite plugin for adding a nitro API server",
6
6
  "author": "Brandon Roberts <robertsbt@gmail.com>",
@@ -2,8 +2,8 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.buildServer = void 0;
4
4
  const tslib_1 = require("tslib");
5
- const load_esm_1 = require("@angular-devkit/build-angular/src/utils/load-esm");
6
5
  const post_rendering_hook_1 = require("./hooks/post-rendering-hook");
6
+ const load_esm_1 = require("./utils/load-esm");
7
7
  function buildServer(options, nitroConfig) {
8
8
  var _a;
9
9
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
@@ -14,11 +14,10 @@ function buildServer(options, nitroConfig) {
14
14
  }
15
15
  yield prepare(nitro);
16
16
  yield copyPublicAssets(nitro);
17
- if (options === null || options === void 0 ? void 0 : options.static) {
18
- console.log(`Prerendering static pages...`);
19
- }
17
+ console.log(`Prerendering static pages...`);
20
18
  yield prerender(nitro);
21
19
  if (!(options === null || options === void 0 ? void 0 : options.static)) {
20
+ console.log('Building Server...');
22
21
  yield build(nitro);
23
22
  }
24
23
  yield nitro.close();
@@ -1 +1 @@
1
- {"version":3,"file":"build-server.js","sourceRoot":"","sources":["../../../../../packages/vite-plugin-nitro/src/lib/build-server.ts"],"names":[],"mappings":";;;;AAAA,+EAAiF;AAGjF,qEAAoE;AAEpE,SAAsB,WAAW,CAC/B,OAAiB,EACjB,WAAyB;;;QAEzB,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,GAChE,MAAM,IAAA,wBAAa,EAA6B,WAAW,CAAC,CAAC;QAE/D,MAAM,KAAK,GAAG,MAAM,WAAW,iBAC7B,GAAG,EAAE,KAAK,EACV,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,IAChC,WAAW,EACd,CAAC;QAEH,IAAI,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,0CAAE,kBAAkB,EAAE;YAC1C,IAAA,2CAAqB,EAAC,KAAK,EAAE,OAAO,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;SACpE;QAED,MAAM,OAAO,CAAC,KAAK,CAAC,CAAC;QACrB,MAAM,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAE9B,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,MAAM,EAAE;YACnB,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;SAC7C;QAED,MAAM,SAAS,CAAC,KAAK,CAAC,CAAC;QAEvB,IAAI,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,MAAM,CAAA,EAAE;YACpB,MAAM,KAAK,CAAC,KAAK,CAAC,CAAC;SACpB;QAED,MAAM,KAAK,CAAC,KAAK,EAAE,CAAC;;CACrB;AA/BD,kCA+BC"}
1
+ {"version":3,"file":"build-server.js","sourceRoot":"","sources":["../../../../../packages/vite-plugin-nitro/src/lib/build-server.ts"],"names":[],"mappings":";;;;AAGA,qEAAoE;AACpE,+CAAiD;AAEjD,SAAsB,WAAW,CAC/B,OAAiB,EACjB,WAAyB;;;QAEzB,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,GAChE,MAAM,IAAA,wBAAa,EAA6B,WAAW,CAAC,CAAC;QAE/D,MAAM,KAAK,GAAG,MAAM,WAAW,iBAC7B,GAAG,EAAE,KAAK,EACV,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,IAChC,WAAW,EACd,CAAC;QAEH,IAAI,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,0CAAE,kBAAkB,EAAE;YAC1C,IAAA,2CAAqB,EAAC,KAAK,EAAE,OAAO,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;SACpE;QAED,MAAM,OAAO,CAAC,KAAK,CAAC,CAAC;QACrB,MAAM,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAE9B,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;QAC5C,MAAM,SAAS,CAAC,KAAK,CAAC,CAAC;QAEvB,IAAI,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,MAAM,CAAA,EAAE;YACpB,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;YAClC,MAAM,KAAK,CAAC,KAAK,CAAC,CAAC;SACpB;QAED,MAAM,KAAK,CAAC,KAAK,EAAE,CAAC;;CACrB;AA7BD,kCA6BC"}
@@ -1 +1 @@
1
- {"version":3,"file":"build-ssr.js","sourceRoot":"","sources":["../../../../../packages/vite-plugin-nitro/src/lib/build-ssr.ts"],"names":[],"mappings":";;;;AAAA,+BAAsD;AAEtD,6BAA6B;AAE7B,SAAsB,WAAW,CAAC,MAAkB,EAAE,OAAiB;;QACrE,MAAM,cAAc,GAAG,IAAA,kBAAW,EAAC,MAAM,EAAE;YACzC,KAAK,EAAE;gBACL,GAAG,EAAE,IAAI;gBACT,aAAa,EAAE;oBACb,KAAK,EACH,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW;wBACpB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAK,EAAE,sBAAsB,CAAC;iBACrD;gBACD,MAAM,EAAE,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW,KAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,IAAK,EAAE,KAAK,CAAC;aAC1E;SACF,CAAC,CAAC;QAEH,MAAM,IAAA,YAAK,EAAC,cAAc,CAAC,CAAC;IAC9B,CAAC;CAAA;AAdD,kCAcC"}
1
+ {"version":3,"file":"build-ssr.js","sourceRoot":"","sources":["../../../../../packages/vite-plugin-nitro/src/lib/build-ssr.ts"],"names":[],"mappings":";;;;AAAA,+BAAsD;AACtD,6BAA6B;AAI7B,SAAsB,WAAW,CAAC,MAAkB,EAAE,OAAiB;;QACrE,MAAM,cAAc,GAAG,IAAA,kBAAW,EAAC,MAAM,EAAE;YACzC,KAAK,EAAE;gBACL,GAAG,EAAE,IAAI;gBACT,aAAa,EAAE;oBACb,KAAK,EACH,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW;wBACpB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAK,EAAE,sBAAsB,CAAC;iBACrD;gBACD,MAAM,EAAE,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW,KAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,IAAK,EAAE,KAAK,CAAC;aAC1E;SACF,CAAC,CAAC;QAEH,MAAM,IAAA,YAAK,EAAC,cAAc,CAAC,CAAC;IAC9B,CAAC;CAAA;AAdD,kCAcC"}
@@ -0,0 +1,7 @@
1
+ import { Plugin } from 'vite';
2
+ interface ServerOptions {
3
+ index?: string;
4
+ entryServer?: string;
5
+ }
6
+ export declare function devServerPlugin(options: ServerOptions): Plugin;
7
+ export {};
@@ -0,0 +1,90 @@
1
+ "use strict";
2
+ // SSR dev server, middleware and error page source modified from
3
+ // https://github.com/solidjs/solid-start/blob/main/packages/start/dev/server.js
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.devServerPlugin = void 0;
6
+ const tslib_1 = require("tslib");
7
+ const path = require("path");
8
+ const fs = require("fs");
9
+ function devServerPlugin(options) {
10
+ const entryServer = options.entryServer || 'src/main.server.ts';
11
+ const index = options.index || 'index.html';
12
+ return {
13
+ name: 'analogjs-dev-ssr-plugin',
14
+ config() {
15
+ return {
16
+ resolve: {
17
+ alias: {
18
+ '~analog/entry-server': entryServer,
19
+ },
20
+ },
21
+ };
22
+ },
23
+ configureServer(viteServer) {
24
+ return () => tslib_1.__awaiter(this, void 0, void 0, function* () {
25
+ remove_html_middlewares(viteServer.middlewares);
26
+ viteServer.middlewares.use((req, res) => tslib_1.__awaiter(this, void 0, void 0, function* () {
27
+ let template = fs.readFileSync(path.resolve(viteServer.config.root, index), 'utf-8');
28
+ template = yield viteServer.transformIndexHtml(req.originalUrl, template);
29
+ try {
30
+ const entryServer = (yield viteServer.ssrLoadModule('~analog/entry-server'))['default'];
31
+ const result = yield entryServer(req.originalUrl, template);
32
+ res.end(result);
33
+ }
34
+ catch (e) {
35
+ viteServer && viteServer.ssrFixStacktrace(e);
36
+ res.statusCode = 500;
37
+ res.end(`
38
+ <!DOCTYPE html>
39
+ <html lang="en">
40
+ <head>
41
+ <meta charset="UTF-8" />
42
+ <title>Error</title>
43
+ <script type="module">
44
+ import { ErrorOverlay } from '/@vite/client'
45
+ document.body.appendChild(new ErrorOverlay(${JSON.stringify(prepareError(req, e)).replace(/</g, '\\u003c')}))
46
+ </script>
47
+ </head>
48
+ <body>
49
+ </body>
50
+ </html>
51
+ `);
52
+ }
53
+ }));
54
+ });
55
+ },
56
+ };
57
+ }
58
+ exports.devServerPlugin = devServerPlugin;
59
+ /**
60
+ * Removes Vite internal middleware
61
+ *
62
+ * @param server
63
+ */
64
+ function remove_html_middlewares(server) {
65
+ const html_middlewares = [
66
+ 'viteIndexHtmlMiddleware',
67
+ 'vite404Middleware',
68
+ 'viteSpaFallbackMiddleware',
69
+ ];
70
+ for (let i = server.stack.length - 1; i > 0; i--) {
71
+ // @ts-ignore
72
+ if (html_middlewares.includes(server.stack[i].handle.name)) {
73
+ server.stack.splice(i, 1);
74
+ }
75
+ }
76
+ }
77
+ /**
78
+ * Formats error for SSR message in error overlay
79
+ * @param req
80
+ * @param error
81
+ * @returns
82
+ */
83
+ function prepareError(req, error) {
84
+ const e = error;
85
+ return {
86
+ message: `An error occured while server rendering ${req.url}:\n\n\t${typeof e === 'string' ? e : e.message} `,
87
+ stack: typeof e === 'string' ? '' : e.stack,
88
+ };
89
+ }
90
+ //# sourceMappingURL=dev-server-plugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dev-server-plugin.js","sourceRoot":"","sources":["../../../../../../packages/vite-plugin-nitro/src/lib/plugins/dev-server-plugin.ts"],"names":[],"mappings":";AAAA,iEAAiE;AACjE,gFAAgF;;;;AAGhF,6BAA6B;AAC7B,yBAAyB;AAOzB,SAAgB,eAAe,CAAC,OAAsB;IACpD,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,oBAAoB,CAAC;IAChE,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,YAAY,CAAC;IAE5C,OAAO;QACL,IAAI,EAAE,yBAAyB;QAC/B,MAAM;YACJ,OAAO;gBACL,OAAO,EAAE;oBACP,KAAK,EAAE;wBACL,sBAAsB,EAAE,WAAW;qBACpC;iBACF;aACF,CAAC;QACJ,CAAC;QACD,eAAe,CAAC,UAAU;YACxB,OAAO,GAAS,EAAE;gBAChB,uBAAuB,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;gBAChD,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,CAAO,GAAG,EAAE,GAAG,EAAE,EAAE;oBAC5C,IAAI,QAAQ,GAAG,EAAE,CAAC,YAAY,CAC5B,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,EAC3C,OAAO,CACR,CAAC;oBAEF,QAAQ,GAAG,MAAM,UAAU,CAAC,kBAAkB,CAC5C,GAAG,CAAC,WAAqB,EACzB,QAAQ,CACT,CAAC;oBAEF,IAAI;wBACF,MAAM,WAAW,GAAG,CAClB,MAAM,UAAU,CAAC,aAAa,CAAC,sBAAsB,CAAC,CACvD,CAAC,SAAS,CAAC,CAAC;wBACb,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,GAAG,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;wBAC5D,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;qBACjB;oBAAC,OAAO,CAAC,EAAE;wBACV,UAAU,IAAI,UAAU,CAAC,gBAAgB,CAAC,CAAU,CAAC,CAAC;wBACtD,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC;wBACrB,GAAG,CAAC,GAAG,CAAC;;;;;;;;iEAQ6C,IAAI,CAAC,SAAS,CACzD,YAAY,CAAC,GAAG,EAAE,CAAC,CAAC,CACrB,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC;;;;;;aAMjC,CAAC,CAAC;qBACJ;gBACH,CAAC,CAAA,CAAC,CAAC;YACL,CAAC,CAAA,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC;AA5DD,0CA4DC;AAED;;;;GAIG;AACH,SAAS,uBAAuB,CAAC,MAAoC;IACnE,MAAM,gBAAgB,GAAG;QACvB,yBAAyB;QACzB,mBAAmB;QACnB,2BAA2B;KAC5B,CAAC;IACF,KAAK,IAAI,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;QAChD,aAAa;QACb,IAAI,gBAAgB,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;YAC1D,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;SAC3B;KACF;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAS,YAAY,CAAC,GAA4B,EAAE,KAAc;IAChE,MAAM,CAAC,GAAG,KAAc,CAAC;IACzB,OAAO;QACL,OAAO,EAAE,2CAA2C,GAAG,CAAC,GAAG,UACzD,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAChC,GAAG;QACH,KAAK,EAAE,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK;KAC5C,CAAC;AACJ,CAAC"}
@@ -1,7 +1,7 @@
1
1
  export declare function pageEndpointsPlugin(): {
2
2
  name: string;
3
- transform(code: string, id: string): {
3
+ transform(_code: string, id: string): Promise<{
4
4
  code: string;
5
5
  map: null;
6
- } | undefined;
6
+ } | undefined>;
7
7
  };
@@ -1,18 +1,45 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.pageEndpointsPlugin = void 0;
4
+ const tslib_1 = require("tslib");
4
5
  const vite_1 = require("vite");
6
+ const esbuild_1 = require("esbuild");
5
7
  function pageEndpointsPlugin() {
6
8
  return {
7
9
  name: 'analogjs-vite-plugin-nitro-rollup-page-endpoint',
8
- transform(code, id) {
9
- if (id.includes((0, vite_1.normalizePath)('src/app/pages')) &&
10
- id.endsWith('.server.ts')) {
11
- return {
12
- code: `
10
+ transform(_code, id) {
11
+ var _a, _b, _c;
12
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
13
+ if (id.includes((0, vite_1.normalizePath)('src/app/pages')) &&
14
+ id.endsWith('.server.ts')) {
15
+ const compiled = (0, esbuild_1.buildSync)({
16
+ stdin: {
17
+ contents: _code,
18
+ sourcefile: id,
19
+ loader: 'ts',
20
+ },
21
+ write: false,
22
+ metafile: true,
23
+ platform: 'neutral',
24
+ format: 'esm',
25
+ logLevel: 'silent',
26
+ });
27
+ let fileExports = [];
28
+ for (let key in (_a = compiled.metafile) === null || _a === void 0 ? void 0 : _a.outputs) {
29
+ if ((_b = compiled.metafile) === null || _b === void 0 ? void 0 : _b.outputs[key].entryPoint) {
30
+ fileExports = (_c = compiled.metafile) === null || _c === void 0 ? void 0 : _c.outputs[key].exports;
31
+ }
32
+ }
33
+ const code = `
13
34
  import { defineEventHandler } from 'h3';
14
35
 
15
- ${code}
36
+ ${fileExports.includes('load')
37
+ ? _code
38
+ : `
39
+ ${_code}
40
+ export const load = () => {
41
+ return {};
42
+ }`}
16
43
 
17
44
  export default defineEventHandler(async(event) => {
18
45
  try {
@@ -27,11 +54,14 @@ function pageEndpointsPlugin() {
27
54
  throw e;
28
55
  }
29
56
  });
30
- `,
31
- map: null,
32
- };
33
- }
34
- return;
57
+ `;
58
+ return {
59
+ code,
60
+ map: null,
61
+ };
62
+ }
63
+ return;
64
+ });
35
65
  },
36
66
  };
37
67
  }
@@ -1 +1 @@
1
- {"version":3,"file":"page-endpoints.js","sourceRoot":"","sources":["../../../../../../packages/vite-plugin-nitro/src/lib/plugins/page-endpoints.ts"],"names":[],"mappings":";;;AAAA,+BAAqC;AAErC,SAAgB,mBAAmB;IACjC,OAAO;QACL,IAAI,EAAE,iDAAiD;QACvD,SAAS,CAAC,IAAY,EAAE,EAAU;YAChC,IACE,EAAE,CAAC,QAAQ,CAAC,IAAA,oBAAa,EAAC,eAAe,CAAC,CAAC;gBAC3C,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,EACzB;gBACA,OAAO;oBACL,IAAI,EAAE;;;cAGF,IAAI;;;;;;;;;;;;;;;WAeP;oBACD,GAAG,EAAE,IAAI;iBACV,CAAC;aACH;YAED,OAAO;QACT,CAAC;KACF,CAAC;AACJ,CAAC;AAnCD,kDAmCC"}
1
+ {"version":3,"file":"page-endpoints.js","sourceRoot":"","sources":["../../../../../../packages/vite-plugin-nitro/src/lib/plugins/page-endpoints.ts"],"names":[],"mappings":";;;;AAAA,+BAAqC;AACrC,qCAAoC;AAEpC,SAAgB,mBAAmB;IACjC,OAAO;QACL,IAAI,EAAE,iDAAiD;QACjD,SAAS,CAAC,KAAa,EAAE,EAAU;;;gBACvC,IACE,EAAE,CAAC,QAAQ,CAAC,IAAA,oBAAa,EAAC,eAAe,CAAC,CAAC;oBAC3C,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,EACzB;oBACA,MAAM,QAAQ,GAAG,IAAA,mBAAS,EAAC;wBACzB,KAAK,EAAE;4BACL,QAAQ,EAAE,KAAK;4BACf,UAAU,EAAE,EAAE;4BACd,MAAM,EAAE,IAAI;yBACb;wBACD,KAAK,EAAE,KAAK;wBACZ,QAAQ,EAAE,IAAI;wBACd,QAAQ,EAAE,SAAS;wBACnB,MAAM,EAAE,KAAK;wBACb,QAAQ,EAAE,QAAQ;qBACnB,CAAC,CAAC;oBAEH,IAAI,WAAW,GAAa,EAAE,CAAC;oBAE/B,KAAK,IAAI,GAAG,IAAI,MAAA,QAAQ,CAAC,QAAQ,0CAAE,OAAO,EAAE;wBAC1C,IAAI,MAAA,QAAQ,CAAC,QAAQ,0CAAE,OAAO,CAAC,GAAG,EAAE,UAAU,EAAE;4BAC9C,WAAW,GAAG,MAAA,QAAQ,CAAC,QAAQ,0CAAE,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC;yBACvD;qBACF;oBAED,MAAM,IAAI,GAAG;;;cAIP,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC;wBAC1B,CAAC,CAAC,KAAK;wBACP,CAAC,CAAC;kBACA,KAAK;;;kBAIX;;;;;;;;;;;;;;;WAeD,CAAC;oBAEJ,OAAO;wBACL,IAAI;wBACJ,GAAG,EAAE,IAAI;qBACV,CAAC;iBACH;gBAED,OAAO;;SACR;KACF,CAAC;AACJ,CAAC;AAlED,kDAkEC"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * @license
3
+ * Copyright Google LLC All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be
6
+ * found in the LICENSE file at https://angular.io/license
7
+ */
8
+ /// <reference types="node" />
9
+ import { URL } from 'url';
10
+ /**
11
+ * This uses a dynamic import to load a module which may be ESM.
12
+ * CommonJS code can load ESM code via a dynamic import. Unfortunately, TypeScript
13
+ * will currently, unconditionally downlevel dynamic import into a require call.
14
+ * require calls cannot load ESM code and will result in a runtime error. To workaround
15
+ * this, a Function constructor is used to prevent TypeScript from changing the dynamic import.
16
+ * Once TypeScript provides support for keeping the dynamic import this workaround can
17
+ * be dropped.
18
+ *
19
+ * @param modulePath The path of the module to load.
20
+ * @returns A Promise that resolves to the dynamically imported module.
21
+ */
22
+ export declare function loadEsmModule<T>(modulePath: string | URL): Promise<T>;
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ /**
3
+ * @license
4
+ * Copyright Google LLC All Rights Reserved.
5
+ *
6
+ * Use of this source code is governed by an MIT-style license that can be
7
+ * found in the LICENSE file at https://angular.io/license
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.loadEsmModule = void 0;
11
+ /**
12
+ * This uses a dynamic import to load a module which may be ESM.
13
+ * CommonJS code can load ESM code via a dynamic import. Unfortunately, TypeScript
14
+ * will currently, unconditionally downlevel dynamic import into a require call.
15
+ * require calls cannot load ESM code and will result in a runtime error. To workaround
16
+ * this, a Function constructor is used to prevent TypeScript from changing the dynamic import.
17
+ * Once TypeScript provides support for keeping the dynamic import this workaround can
18
+ * be dropped.
19
+ *
20
+ * @param modulePath The path of the module to load.
21
+ * @returns A Promise that resolves to the dynamically imported module.
22
+ */
23
+ function loadEsmModule(modulePath) {
24
+ return new Function('modulePath', `return import(modulePath);`)(modulePath);
25
+ }
26
+ exports.loadEsmModule = loadEsmModule;
27
+ //# sourceMappingURL=load-esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"load-esm.js","sourceRoot":"","sources":["../../../../../../packages/vite-plugin-nitro/src/lib/utils/load-esm.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;AAIH;;;;;;;;;;;GAWG;AACH,SAAgB,aAAa,CAAI,UAAwB;IACvD,OAAO,IAAI,QAAQ,CAAC,YAAY,EAAE,4BAA4B,CAAC,CAC7D,UAAU,CACG,CAAC;AAClB,CAAC;AAJD,sCAIC"}
@@ -12,4 +12,4 @@ export declare function mockBuildFunctions(): Promise<{
12
12
  buildServerImportSpy: Mock<any, any>;
13
13
  buildSitemapImportSpy: Mock<any, any>;
14
14
  }>;
15
- export declare function runConfigAndCloseBundle(plugin: Plugin): Promise<void>;
15
+ export declare function runConfigAndCloseBundle(plugin: Plugin[]): Promise<void>;
@@ -54,8 +54,8 @@ function mockBuildFunctions() {
54
54
  exports.mockBuildFunctions = mockBuildFunctions;
55
55
  function runConfigAndCloseBundle(plugin) {
56
56
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
57
- yield plugin.config({}, { command: 'build' });
58
- yield plugin.closeBundle();
57
+ yield plugin[1].config({}, { command: 'build' });
58
+ yield plugin[1].closeBundle();
59
59
  });
60
60
  }
61
61
  exports.runConfigAndCloseBundle = runConfigAndCloseBundle;
@@ -1 +1 @@
1
- {"version":3,"file":"vite-nitro-plugin.spec.data.js","sourceRoot":"","sources":["../../../../../packages/vite-plugin-nitro/src/lib/vite-nitro-plugin.spec.data.ts"],"names":[],"mappings":";;;;AAEA,mCAAkC;AAClC,6BAA6B;AAEhB,QAAA,iBAAiB,GAAG;IAC/B,WAAW,EAAE;QACX,gEAAgE;QAChE,GAAG,EAAE,GAAG,EAAE,GAAE,CAAC;KACd;CACF,CAAC;AAEW,QAAA,eAAe,GAAgB;IAC1C,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC;IACvC,QAAQ,EAAE,EAAE;IACZ,QAAQ,EAAE,CAAC;IACX,MAAM,EAAE;QACN,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC;QAChC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC;KAC9C;IACD,OAAO,EAAE,GAAG;IACZ,aAAa,EAAE,EAAE;IACjB,QAAQ,EAAE,CAAC,YAAY,CAAC;IACxB,MAAM,EAAE,YAAY;IACpB,SAAS,EAAE;QACT,UAAU,EAAE,SAAS;KACtB;IACD,UAAU,EAAE;QACV,gBAAgB,EAAE,KAAK;KACxB;IACD,YAAY,EAAE;QACZ,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,iDAAiD;gBACvD,SAAS,KAAI,CAAC;aACf;SACF;KACF;CACF,CAAC;AAEF,SAAsB,kBAAkB;;QACtC,MAAM,iBAAiB,GAAG,2CAAa,gBAAgB,EAAC,CAAC;QACzD,MAAM,oBAAoB,GAAG,WAAE,CAAC,EAAE,EAAE,CAAC;QACrC,iBAAiB,CAAC,WAAW,GAAG,oBAAoB,CAAC;QAErD,MAAM,iBAAiB,GAAG,2CAAa,aAAa,EAAC,CAAC;QACtD,MAAM,oBAAoB,GAAG,WAAE,CAAC,EAAE,EAAE,CAAC;QACrC,iBAAiB,CAAC,WAAW,GAAG,oBAAoB,CAAC;QAErD,MAAM,kBAAkB,GAAG,2CAAa,iBAAiB,EAAC,CAAC;QAC3D,MAAM,qBAAqB,GAAG,WAAE,CAAC,EAAE,EAAE,CAAC;QACtC,kBAAkB,CAAC,YAAY,GAAG,qBAAqB,CAAC;QAExD,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,CAAC;IAC/E,CAAC;CAAA;AAdD,gDAcC;AAED,SAAsB,uBAAuB,CAAC,MAAc;;QAC1D,MACE,MAAM,CAAC,MACR,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,OAAO,EAAe,CAAC,CAAC;QACzC,MAAO,MAAM,CAAC,WAAmC,EAAE,CAAC;IACtD,CAAC;CAAA;AALD,0DAKC"}
1
+ {"version":3,"file":"vite-nitro-plugin.spec.data.js","sourceRoot":"","sources":["../../../../../packages/vite-plugin-nitro/src/lib/vite-nitro-plugin.spec.data.ts"],"names":[],"mappings":";;;;AAEA,mCAAkC;AAClC,6BAA6B;AAEhB,QAAA,iBAAiB,GAAG;IAC/B,WAAW,EAAE;QACX,gEAAgE;QAChE,GAAG,EAAE,GAAG,EAAE,GAAE,CAAC;KACd;CACF,CAAC;AAEW,QAAA,eAAe,GAAgB;IAC1C,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC;IACvC,QAAQ,EAAE,EAAE;IACZ,QAAQ,EAAE,CAAC;IACX,MAAM,EAAE;QACN,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC;QAChC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC;KAC9C;IACD,OAAO,EAAE,GAAG;IACZ,aAAa,EAAE,EAAE;IACjB,QAAQ,EAAE,CAAC,YAAY,CAAC;IACxB,MAAM,EAAE,YAAY;IACpB,SAAS,EAAE;QACT,UAAU,EAAE,SAAS;KACtB;IACD,UAAU,EAAE;QACV,gBAAgB,EAAE,KAAK;KACxB;IACD,YAAY,EAAE;QACZ,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,iDAAiD;gBACvD,SAAS,KAAI,CAAC;aACf;SACF;KACF;CACF,CAAC;AAEF,SAAsB,kBAAkB;;QACtC,MAAM,iBAAiB,GAAG,2CAAa,gBAAgB,EAAC,CAAC;QACzD,MAAM,oBAAoB,GAAG,WAAE,CAAC,EAAE,EAAE,CAAC;QACrC,iBAAiB,CAAC,WAAW,GAAG,oBAAoB,CAAC;QAErD,MAAM,iBAAiB,GAAG,2CAAa,aAAa,EAAC,CAAC;QACtD,MAAM,oBAAoB,GAAG,WAAE,CAAC,EAAE,EAAE,CAAC;QACrC,iBAAiB,CAAC,WAAW,GAAG,oBAAoB,CAAC;QAErD,MAAM,kBAAkB,GAAG,2CAAa,iBAAiB,EAAC,CAAC;QAC3D,MAAM,qBAAqB,GAAG,WAAE,CAAC,EAAE,EAAE,CAAC;QACtC,kBAAkB,CAAC,YAAY,GAAG,qBAAqB,CAAC;QAExD,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,CAAC;IAC/E,CAAC;CAAA;AAdD,gDAcC;AAED,SAAsB,uBAAuB,CAAC,MAAgB;;QAC5D,MACE,MAAM,CAAC,CAAC,CAAC,CAAC,MAIX,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,OAAO,EAAe,CAAC,CAAC;QACzC,MAAO,MAAM,CAAC,CAAC,CAAC,CAAC,WAAmC,EAAE,CAAC;IACzD,CAAC;CAAA;AARD,0DAQC"}
@@ -1,4 +1,4 @@
1
- import { NitroConfig } from 'nitropack';
2
- import { Plugin } from 'vite';
1
+ import type { NitroConfig } from 'nitropack';
2
+ import type { Plugin } from 'vite';
3
3
  import { Options } from './options';
4
- export declare function nitro(options?: Options, nitroOptions?: NitroConfig): Plugin;
4
+ export declare function nitro(options?: Options, nitroOptions?: NitroConfig): Plugin[];
@@ -2,15 +2,16 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.nitro = void 0;
4
4
  const tslib_1 = require("tslib");
5
- const load_esm_1 = require("@angular-devkit/build-angular/src/utils/load-esm");
6
5
  const h3_1 = require("h3");
7
- const build_server_1 = require("./build-server");
8
- const build_ssr_1 = require("./build-ssr");
9
6
  const vite_1 = require("vite");
10
7
  const path = require("path");
8
+ const build_server_1 = require("./build-server");
9
+ const build_ssr_1 = require("./build-ssr");
11
10
  const page_endpoints_1 = require("./plugins/page-endpoints");
12
11
  const get_page_handlers_1 = require("./utils/get-page-handlers");
13
12
  const build_sitemap_1 = require("./build-sitemap");
13
+ const dev_server_plugin_1 = require("./plugins/dev-server-plugin");
14
+ const load_esm_1 = require("./utils/load-esm");
14
15
  let clientOutputPath = '';
15
16
  function nitro(options, nitroOptions) {
16
17
  var _a, _b;
@@ -22,127 +23,131 @@ function nitro(options, nitroOptions) {
22
23
  let ssrBuild = false;
23
24
  let config;
24
25
  let nitroConfig;
25
- return {
26
- name: '@analogjs/vite-nitro-plugin',
27
- config(_config, { command }) {
28
- var _a, _b, _c, _d, _e, _f;
29
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
30
- isServe = command === 'serve';
31
- isBuild = command === 'build';
32
- ssrBuild = ((_a = _config.build) === null || _a === void 0 ? void 0 : _a.ssr) === true;
33
- config = _config;
34
- const rootDir = config.root || '.';
35
- const buildPreset = (_b = process.env['BUILD_PRESET']) !== null && _b !== void 0 ? _b : nitroOptions === null || nitroOptions === void 0 ? void 0 : nitroOptions.preset;
36
- const pageHandlers = (0, get_page_handlers_1.getPageHandlers)({ workspaceRoot, rootDir });
37
- nitroConfig = {
38
- rootDir,
39
- preset: buildPreset,
40
- logLevel: (nitroOptions === null || nitroOptions === void 0 ? void 0 : nitroOptions.logLevel) || 0,
41
- srcDir: (0, vite_1.normalizePath)(`${rootDir}/src/server`),
42
- scanDirs: [(0, vite_1.normalizePath)(`${rootDir}/src/server`)],
43
- output: Object.assign({ dir: (0, vite_1.normalizePath)(path.resolve(workspaceRoot, 'dist', rootDir, 'analog')), publicDir: (0, vite_1.normalizePath)(path.resolve(workspaceRoot, 'dist', rootDir, 'analog/public')) }, nitroOptions === null || nitroOptions === void 0 ? void 0 : nitroOptions.output),
44
- buildDir: (0, vite_1.normalizePath)(path.resolve(workspaceRoot, 'dist', rootDir, '.nitro')),
45
- typescript: {
46
- generateTsConfig: false,
47
- },
48
- runtimeConfig: Object.assign({}, nitroOptions === null || nitroOptions === void 0 ? void 0 : nitroOptions.runtimeConfig),
49
- rollupConfig: {
50
- onwarn(warning) {
51
- if (warning.message.includes('empty chunk') &&
52
- warning.message.endsWith('.server')) {
53
- return;
54
- }
26
+ return [
27
+ ((options === null || options === void 0 ? void 0 : options.ssr)
28
+ ? (0, dev_server_plugin_1.devServerPlugin)({ entryServer: options === null || options === void 0 ? void 0 : options.entryServer })
29
+ : false),
30
+ {
31
+ name: '@analogjs/vite-nitro-plugin',
32
+ config(_config, { command }) {
33
+ var _a, _b, _c, _d, _e, _f;
34
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
35
+ isServe = command === 'serve';
36
+ isBuild = command === 'build';
37
+ ssrBuild = ((_a = _config.build) === null || _a === void 0 ? void 0 : _a.ssr) === true;
38
+ config = _config;
39
+ const rootDir = config.root || '.';
40
+ const buildPreset = (_b = process.env['BUILD_PRESET']) !== null && _b !== void 0 ? _b : nitroOptions === null || nitroOptions === void 0 ? void 0 : nitroOptions.preset;
41
+ const pageHandlers = (0, get_page_handlers_1.getPageHandlers)({ workspaceRoot, rootDir });
42
+ nitroConfig = {
43
+ rootDir,
44
+ preset: buildPreset,
45
+ logLevel: (nitroOptions === null || nitroOptions === void 0 ? void 0 : nitroOptions.logLevel) || 0,
46
+ srcDir: (0, vite_1.normalizePath)(`${rootDir}/src/server`),
47
+ scanDirs: [(0, vite_1.normalizePath)(`${rootDir}/src/server`)],
48
+ output: Object.assign({ dir: (0, vite_1.normalizePath)(path.resolve(workspaceRoot, 'dist', rootDir, 'analog')), publicDir: (0, vite_1.normalizePath)(path.resolve(workspaceRoot, 'dist', rootDir, 'analog/public')) }, nitroOptions === null || nitroOptions === void 0 ? void 0 : nitroOptions.output),
49
+ buildDir: (0, vite_1.normalizePath)(path.resolve(workspaceRoot, 'dist', rootDir, '.nitro')),
50
+ typescript: {
51
+ generateTsConfig: false,
55
52
  },
56
- plugins: [(0, page_endpoints_1.pageEndpointsPlugin)()],
57
- },
58
- handlers: [
59
- {
60
- handler: (0, vite_1.normalizePath)(`${__dirname}/runtime/api-middleware`),
61
- middleware: true,
53
+ runtimeConfig: Object.assign({}, nitroOptions === null || nitroOptions === void 0 ? void 0 : nitroOptions.runtimeConfig),
54
+ rollupConfig: {
55
+ onwarn(warning) {
56
+ if (warning.message.includes('empty chunk') &&
57
+ warning.message.endsWith('.server')) {
58
+ return;
59
+ }
60
+ },
61
+ plugins: [(0, page_endpoints_1.pageEndpointsPlugin)()],
62
62
  },
63
- ...pageHandlers,
64
- ],
65
- };
66
- if (isVercelPreset(buildPreset)) {
67
- nitroConfig = withVercelOutputAPI(nitroConfig, workspaceRoot);
68
- }
69
- if (!ssrBuild && !isTest) {
70
- // store the client output path for the SSR build config
71
- clientOutputPath = path.resolve(rootDir, (_c = config.build) === null || _c === void 0 ? void 0 : _c.outDir);
72
- }
73
- if (isBuild) {
74
- if (isEmptyPrerenderRoutes(options)) {
75
- nitroConfig.prerender = {};
76
- nitroConfig.prerender.routes = ['/'];
63
+ handlers: [
64
+ {
65
+ handler: (0, vite_1.normalizePath)(`${__dirname}/runtime/api-middleware`),
66
+ middleware: true,
67
+ },
68
+ ...pageHandlers,
69
+ ],
70
+ };
71
+ if (isVercelPreset(buildPreset)) {
72
+ nitroConfig = withVercelOutputAPI(nitroConfig, workspaceRoot);
73
+ }
74
+ if (!ssrBuild && !isTest) {
75
+ // store the client output path for the SSR build config
76
+ clientOutputPath = path.resolve(rootDir, (_c = config.build) === null || _c === void 0 ? void 0 : _c.outDir);
77
77
  }
78
- if (options === null || options === void 0 ? void 0 : options.prerender) {
79
- nitroConfig.prerender = (_d = nitroConfig.prerender) !== null && _d !== void 0 ? _d : {};
80
- nitroConfig.prerender.crawlLinks = (_e = options === null || options === void 0 ? void 0 : options.prerender) === null || _e === void 0 ? void 0 : _e.discover;
81
- const prerenderRoutes = (_f = options === null || options === void 0 ? void 0 : options.prerender) === null || _f === void 0 ? void 0 : _f.routes;
82
- if (isArrayWithElements(prerenderRoutes)) {
83
- nitroConfig.prerender.routes = prerenderRoutes;
78
+ if (isBuild) {
79
+ if (isEmptyPrerenderRoutes(options)) {
80
+ nitroConfig.prerender = {};
81
+ nitroConfig.prerender.routes = ['/'];
84
82
  }
85
- else if (typeof prerenderRoutes === 'function') {
86
- nitroConfig.prerender.routes = yield prerenderRoutes();
83
+ if (options === null || options === void 0 ? void 0 : options.prerender) {
84
+ nitroConfig.prerender = (_d = nitroConfig.prerender) !== null && _d !== void 0 ? _d : {};
85
+ nitroConfig.prerender.crawlLinks = (_e = options === null || options === void 0 ? void 0 : options.prerender) === null || _e === void 0 ? void 0 : _e.discover;
86
+ const prerenderRoutes = (_f = options === null || options === void 0 ? void 0 : options.prerender) === null || _f === void 0 ? void 0 : _f.routes;
87
+ if (isArrayWithElements(prerenderRoutes)) {
88
+ nitroConfig.prerender.routes = prerenderRoutes;
89
+ }
90
+ else if (typeof prerenderRoutes === 'function') {
91
+ nitroConfig.prerender.routes = yield prerenderRoutes();
92
+ }
93
+ }
94
+ if (ssrBuild) {
95
+ nitroConfig = Object.assign(Object.assign({}, nitroConfig), { publicAssets: [{ dir: clientOutputPath }], serverAssets: [
96
+ {
97
+ baseName: 'public',
98
+ dir: clientOutputPath,
99
+ },
100
+ ], externals: {
101
+ inline: ['zone.js/node'],
102
+ external: ['rxjs', 'node-fetch-native/dist/polyfill', 'destr'],
103
+ }, moduleSideEffects: ['zone.js/bundles/zone-node.umd.js'], renderer: (0, vite_1.normalizePath)(`${__dirname}/runtime/renderer`), handlers: [
104
+ {
105
+ handler: (0, vite_1.normalizePath)(`${__dirname}/runtime/api-middleware`),
106
+ middleware: true,
107
+ },
108
+ ...pageHandlers,
109
+ ] });
87
110
  }
88
111
  }
89
- if (ssrBuild) {
90
- nitroConfig = Object.assign(Object.assign({}, nitroConfig), { publicAssets: [{ dir: clientOutputPath }], serverAssets: [
91
- {
92
- baseName: 'public',
93
- dir: clientOutputPath,
94
- },
95
- ], externals: {
96
- inline: ['zone.js/node'],
97
- external: ['rxjs', 'node-fetch-native/dist/polyfill', 'destr'],
98
- }, moduleSideEffects: ['zone.js/bundles/zone-node.umd.js'], renderer: (0, vite_1.normalizePath)(`${__dirname}/runtime/renderer`), handlers: [
99
- {
100
- handler: (0, vite_1.normalizePath)(`${__dirname}/runtime/api-middleware`),
101
- middleware: true,
102
- },
103
- ...pageHandlers,
104
- ] });
112
+ nitroConfig = Object.assign(Object.assign({}, nitroConfig), nitroOptions);
113
+ });
114
+ },
115
+ configureServer(viteServer) {
116
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
117
+ if (isServe && !isTest) {
118
+ const { createNitro, createDevServer, build, prepare } = yield (0, load_esm_1.loadEsmModule)('nitropack');
119
+ const nitro = yield createNitro(Object.assign({ dev: true }, nitroConfig));
120
+ const server = createDevServer(nitro);
121
+ yield prepare(nitro);
122
+ yield build(nitro);
123
+ viteServer.middlewares.use(apiPrefix, (0, h3_1.toNodeListener)(server.app));
124
+ console.log(`\n\nThe server endpoints are accessible under the "${apiPrefix}" path.`);
105
125
  }
106
- }
107
- nitroConfig = Object.assign(Object.assign({}, nitroConfig), nitroOptions);
108
- });
109
- },
110
- configureServer(viteServer) {
111
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
112
- if (isServe && !isTest) {
113
- const { createNitro, createDevServer, build, prepare } = yield (0, load_esm_1.loadEsmModule)('nitropack');
114
- const nitro = yield createNitro(Object.assign({ dev: true }, nitroConfig));
115
- const server = createDevServer(nitro);
116
- yield prepare(nitro);
117
- yield build(nitro);
118
- viteServer.middlewares.use(apiPrefix, (0, h3_1.toNodeListener)(server.app));
119
- console.log(`\n\nThe '@analogjs/platform' successfully started.\nThe server endpoints are accessible under the "${apiPrefix}" path.`);
120
- }
121
- });
122
- },
123
- closeBundle() {
124
- var _a;
125
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
126
- if (ssrBuild) {
127
- return;
128
- }
129
- if (isBuild) {
130
- if (options === null || options === void 0 ? void 0 : options.ssr) {
131
- console.log('Building SSR application...');
132
- yield (0, build_ssr_1.buildSSRApp)(config, options);
126
+ });
127
+ },
128
+ closeBundle() {
129
+ var _a;
130
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
131
+ if (ssrBuild) {
132
+ return;
133
133
  }
134
- console.log('Building Server...');
135
- yield (0, build_server_1.buildServer)(options, nitroConfig);
136
- if ((_a = options === null || options === void 0 ? void 0 : options.prerender) === null || _a === void 0 ? void 0 : _a.sitemap) {
137
- console.log('Building Sitemap...');
138
- // sitemap needs to be built after all directories are built
139
- yield (0, build_sitemap_1.buildSitemap)(config, options.prerender.sitemap, options.prerender.routes);
134
+ if (isBuild) {
135
+ if (options === null || options === void 0 ? void 0 : options.ssr) {
136
+ console.log('Building SSR application...');
137
+ yield (0, build_ssr_1.buildSSRApp)(config, options);
138
+ }
139
+ yield (0, build_server_1.buildServer)(options, nitroConfig);
140
+ if ((_a = options === null || options === void 0 ? void 0 : options.prerender) === null || _a === void 0 ? void 0 : _a.sitemap) {
141
+ console.log('Building Sitemap...');
142
+ // sitemap needs to be built after all directories are built
143
+ yield (0, build_sitemap_1.buildSitemap)(config, options.prerender.sitemap, options.prerender.routes);
144
+ }
145
+ console.log(`\n\nThe '@analogjs/platform' server has been successfully built.`);
140
146
  }
141
- console.log(`\n\nThe '@analogjs/platform' server has been successfully built.`);
142
- }
143
- });
147
+ });
148
+ },
144
149
  },
145
- };
150
+ ];
146
151
  }
147
152
  exports.nitro = nitro;
148
153
  function isEmptyPrerenderRoutes(options) {
@@ -1 +1 @@
1
- {"version":3,"file":"vite-plugin-nitro.js","sourceRoot":"","sources":["../../../../../packages/vite-plugin-nitro/src/lib/vite-plugin-nitro.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vite-plugin-nitro.js","sourceRoot":"","sources":["../../../../../packages/vite-plugin-nitro/src/lib/vite-plugin-nitro.ts"],"names":[],"mappings":"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"}