vite-plugin-vercel 0.2.2 → 0.3.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.
package/README.md CHANGED
@@ -13,7 +13,7 @@ Its purpose is to help you bundle your application in `.vercel` folder as suppor
13
13
  - `.[jt]s` files under the `<root>/api` folder of your project are automatically bundled as Serverless functions under `.vercel/output/functions/api/*.func`
14
14
  - see [`additionalEndpoints` config](/packages/vercel/src/types.ts#L62)
15
15
  - [x] [ISR/Prerender functions support](https://vercel.com/docs/build-output-api/v3/primitives#prerender-functions)
16
- - see [`isr` config](/packages/vercel/src/types.ts#L89). Also see implementation of [vite-plugin-ssr](/packages/vite-plugin-ssr/vite-plugin-ssr.ts) for example
16
+ - see [`isr` config](/packages/vercel/src/types.ts#L89). Also see implementation of [vite-plugin-ssr](/packages/vike-integration/vite-plugin-ssr.ts) for example
17
17
  - [x] [Edge functions support](https://vercel.com/docs/build-output-api/v3/primitives#edge-functions)
18
18
  - [ ] [Images optimization support](https://vercel.com/docs/build-output-api/v3/configuration#images)
19
19
  - [ ] [Preview mode support](https://vercel.com/docs/build-output-api/v3/features#preview-mode)
@@ -39,26 +39,13 @@ export default defineConfig({
39
39
 
40
40
  ## Usage with vite-plugin-ssr
41
41
 
42
- [vite-plugin-ssr](https://vite-plugin-ssr.com/) is supported through [@magne4000/vite-plugin-vercel-ssr](/packages/vite-plugin-ssr/README.md) plugin.
42
+ [vite-plugin-ssr](https://vite-plugin-ssr.com/) is supported through [@vite-plugin-vercel/vike](/packages/vike-integration/README.md) plugin.
43
43
 
44
- Install `@magne4000/vite-plugin-vercel-ssr` package, and update your vite config:
44
+ You only need to install `@vite-plugin-vercel/vike`, the config stays the same as above.
45
45
 
46
- ```ts
47
- // vite.config.ts
48
- import { defineConfig } from 'vite';
49
- import ssr from 'vite-plugin-ssr/plugin';
50
- import vercel from 'vite-plugin-vercel';
51
- import vercelSsr from '@magne4000/vite-plugin-vercel-ssr';
52
-
53
- export default defineConfig(async ({ command, mode }) => {
54
- return {
55
- plugins: [ssr(), vercel(), vercelSsr()],
56
- vercel: {
57
- // optional configuration options, see below for details
58
- },
59
- };
60
- });
61
- ```
46
+ > [!IMPORTANT]
47
+ > `@vite-plugin-vercel/vike` supersedes the old `@magne4000/vite-plugin-vercel-ssr` package.
48
+ > As such, you should remove `@magne4000/vite-plugin-vercel-ssr` from your package.json and vite config file.
62
49
 
63
50
  ## Advanced usage
64
51
 
package/dist/index.cjs CHANGED
@@ -487,22 +487,22 @@ async function getIsrConfig(resolvedConfig) {
487
487
  var import_path5 = __toESM(require("path"), 1);
488
488
  function vercelPlugin() {
489
489
  let resolvedConfig;
490
- let vpsFound = false;
490
+ let vikeFound = false;
491
491
  return {
492
492
  apply: "build",
493
493
  name: "vite-plugin-vercel",
494
494
  enforce: "post",
495
495
  configResolved(config) {
496
496
  resolvedConfig = config;
497
- vpsFound = resolvedConfig.plugins.some(
498
- (p) => p.name.startsWith("vite-plugin-ssr:")
497
+ vikeFound = resolvedConfig.plugins.some(
498
+ (p) => p.name.match("^vite-plugin-ssr:|^vike:")
499
499
  );
500
500
  },
501
501
  async writeBundle() {
502
502
  var _a;
503
503
  if (!((_a = resolvedConfig.build) == null ? void 0 : _a.ssr)) {
504
504
  await cleanOutputDirectory(resolvedConfig);
505
- if (vpsFound) {
505
+ if (vikeFound) {
506
506
  return;
507
507
  }
508
508
  }
@@ -555,6 +555,15 @@ async function getStaticHtmlFiles(src) {
555
555
  }
556
556
  return htmlFiles;
557
557
  }
558
- function allPlugins() {
559
- return [vercelPlugin()];
558
+ async function tryImportVpvv() {
559
+ try {
560
+ await import("vite-plugin-ssr/plugin");
561
+ const vpvv = await import("@vite-plugin-vercel/vike");
562
+ return vpvv.default();
563
+ } catch (e) {
564
+ return null;
565
+ }
566
+ }
567
+ function allPlugins(options = {}) {
568
+ return [vercelPlugin(), options.smart !== false ? tryImportVpvv() : null];
560
569
  }
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { ResolvedConfig, Plugin } from 'vite';
1
+ import { ResolvedConfig, PluginOption } from 'vite';
2
2
  import { StdinOptions, BuildOptions } from 'esbuild';
3
3
  import { z } from 'zod';
4
4
  import { Rewrite, Redirect } from '@vercel/routing-utils';
@@ -641,6 +641,8 @@ interface ViteVercelApiEntry {
641
641
  edge?: boolean;
642
642
  }
643
643
 
644
- declare function allPlugins(): Plugin[];
644
+ declare function allPlugins(options?: {
645
+ smart?: boolean;
646
+ }): PluginOption[];
645
647
 
646
648
  export { VercelOutputConfig, VercelOutputIsr, VercelOutputPrerenderConfig, VercelOutputVcConfig, ViteVercelApiEntry, ViteVercelConfig, ViteVercelPrerenderFn, ViteVercelPrerenderRoute, ViteVercelRedirect, ViteVercelRewrite, allPlugins as default };
package/dist/index.js CHANGED
@@ -453,22 +453,22 @@ async function getIsrConfig(resolvedConfig) {
453
453
  import path5 from "path";
454
454
  function vercelPlugin() {
455
455
  let resolvedConfig;
456
- let vpsFound = false;
456
+ let vikeFound = false;
457
457
  return {
458
458
  apply: "build",
459
459
  name: "vite-plugin-vercel",
460
460
  enforce: "post",
461
461
  configResolved(config) {
462
462
  resolvedConfig = config;
463
- vpsFound = resolvedConfig.plugins.some(
464
- (p) => p.name.startsWith("vite-plugin-ssr:")
463
+ vikeFound = resolvedConfig.plugins.some(
464
+ (p) => p.name.match("^vite-plugin-ssr:|^vike:")
465
465
  );
466
466
  },
467
467
  async writeBundle() {
468
468
  var _a;
469
469
  if (!((_a = resolvedConfig.build) == null ? void 0 : _a.ssr)) {
470
470
  await cleanOutputDirectory(resolvedConfig);
471
- if (vpsFound) {
471
+ if (vikeFound) {
472
472
  return;
473
473
  }
474
474
  }
@@ -521,8 +521,17 @@ async function getStaticHtmlFiles(src) {
521
521
  }
522
522
  return htmlFiles;
523
523
  }
524
- function allPlugins() {
525
- return [vercelPlugin()];
524
+ async function tryImportVpvv() {
525
+ try {
526
+ await import("vite-plugin-ssr/plugin");
527
+ const vpvv = await import("@vite-plugin-vercel/vike");
528
+ return vpvv.default();
529
+ } catch (e) {
530
+ return null;
531
+ }
532
+ }
533
+ function allPlugins(options = {}) {
534
+ return [vercelPlugin(), options.smart !== false ? tryImportVpvv() : null];
526
535
  }
527
536
  export {
528
537
  allPlugins as default
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vite-plugin-vercel",
3
- "version": "0.2.2",
3
+ "version": "0.3.0",
4
4
  "type": "module",
5
5
  "files": [
6
6
  "dist",
@@ -21,7 +21,17 @@
21
21
  "repository": "https://github.com/magne4000/vite-plugin-vercel",
22
22
  "license": "MIT",
23
23
  "peerDependencies": {
24
- "vite": "^4.2.0"
24
+ "vite": "^4.2.0",
25
+ "vite-plugin-ssr": "*",
26
+ "@vite-plugin-vercel/vike": "0.3.1"
27
+ },
28
+ "peerDependenciesMeta": {
29
+ "@vite-plugin-vercel/vike": {
30
+ "optional": true
31
+ },
32
+ "vite-plugin-ssr": {
33
+ "optional": true
34
+ }
25
35
  },
26
36
  "devDependencies": {
27
37
  "@types/node": "^16.18.48",