vike 0.4.266-commit-e71fad0 → 0.4.266-commit-f1b186a

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.
@@ -124,6 +124,17 @@ async function runPrerender(options = {}, trigger) {
124
124
  if (logLevel === 'info') {
125
125
  console.log(`${pc.green(`✓`)} ${prerenderedCount} HTML documents pre-rendered.`);
126
126
  }
127
+ const { precompress } = vikeConfig.config;
128
+ if (precompress &&
129
+ // During `$ vike build` (`auto-run`), the build's own precompress pass covers these files.
130
+ trigger !== 'auto-run' &&
131
+ // `onPagePrerender` setting defined => no `.html`/`.json` files written => we also don't write `.br`/`.gz` files
132
+ !options.onPagePrerender) {
133
+ const { precompressFiles } = await import('@universal-deploy/vite');
134
+ const { written } = await precompressFiles(prerenderContext.output.map((o) => o.filePath), precompress);
135
+ if (written > 0)
136
+ console.log(`${pc.green(`✓`)} ${written} precompressed files.`);
137
+ }
127
138
  await warnMissingPages(prerenderContext._prerenderedPageContexts, globalContext, doNotPrerenderList, partial);
128
139
  const prerenderContextPublic = getPrerenderContextPublic(prerenderContext);
129
140
  objectAssign(vikeConfig.prerenderContext, prerenderContextPublic, true);
@@ -1,7 +1,7 @@
1
1
  export { pluginUniversalDeploy };
2
2
  import { toRou3 } from 'convert-route';
3
3
  import { addEntry } from '@universal-deploy/store';
4
- import universalDeploy, { resolveTargets } from '@universal-deploy/vite';
4
+ import universalDeploy, { precompress, resolveTargets } from '@universal-deploy/vite';
5
5
  import { pluginServerEntryInject } from './pluginUniversalDeploy/pluginServerEntryInject.js';
6
6
  import { getDeployConfig } from './pluginUniversalDeploy/getDeployConfig.js';
7
7
  import { pluginCommon } from './pluginUniversalDeploy/common.js';
@@ -23,10 +23,11 @@ function pluginUniversalDeploy(vikeConfig) {
23
23
  const target = targets.filter((t) => t !== '@cloudflare/vite-plugin')[0];
24
24
  assertUsage(target === undefined, `${target} requires +server — see https://vike.dev/server`);
25
25
  }),
26
+ precompress(vikeConfig.config.precompress),
26
27
  ];
27
28
  const { serverEntryVike, serverEntryId, serverFilePath } = serverConfig;
28
29
  return [
29
- ...universalDeploy(),
30
+ ...universalDeploy({ node: { precompress: vikeConfig.config.precompress } }),
30
31
  {
31
32
  name: 'vike:pluginUniversalDeploy:entries',
32
33
  config() {
@@ -244,6 +244,10 @@ const metaBuiltIn = {
244
244
  env: { server: true },
245
245
  global: true,
246
246
  },
247
+ precompress: {
248
+ env: { config: true },
249
+ global: true,
250
+ },
247
251
  cli: {
248
252
  env: { config: true },
249
253
  global: true,
@@ -551,6 +551,14 @@ type ConfigBuiltIn = {
551
551
  * https://vike.dev/server
552
552
  */
553
553
  server?: boolean | ImportStringList;
554
+ /**
555
+ * Set to `true` to create `.br` and `.gz` files for your static assets at build time, so that they don't have to be compressed on each request.
556
+ *
557
+ * https://vike.dev/precompress
558
+ *
559
+ * @default false
560
+ */
561
+ precompress?: boolean;
554
562
  cli?: {
555
563
  /** @experimental
556
564
  *
@@ -1 +1 @@
1
- export declare const PROJECT_VERSION: '0.4.266-commit-e71fad0';
1
+ export declare const PROJECT_VERSION: '0.4.266-commit-f1b186a';
@@ -1,2 +1,2 @@
1
1
  // Automatically updated by @brillout/release-me
2
- export const PROJECT_VERSION = '0.4.266-commit-e71fad0';
2
+ export const PROJECT_VERSION = '0.4.266-commit-f1b186a';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vike",
3
- "version": "0.4.266-commit-e71fad0",
3
+ "version": "0.4.266-commit-f1b186a",
4
4
  "repository": "https://github.com/vikejs/vike",
5
5
  "exports": {
6
6
  "./server": {
@@ -129,7 +129,7 @@
129
129
  "@brillout/picocolors": "^1.0.31",
130
130
  "@brillout/vite-plugin-server-entry": "^0.7.21",
131
131
  "@universal-deploy/store": "^0.2.2",
132
- "@universal-deploy/vite": "^0.1.11",
132
+ "@universal-deploy/vite": "^0.1.13",
133
133
  "@universal-middleware/core": "^0.4.18",
134
134
  "@universal-middleware/node": "^0.2.2",
135
135
  "cac": "^6.0.0",
@@ -137,7 +137,7 @@
137
137
  "es-module-lexer": "^1.0.0",
138
138
  "esbuild": ">=0.19.0",
139
139
  "json5": "^2.0.0",
140
- "magic-string": "^1.3.1",
140
+ "magic-string": "^1.4.1",
141
141
  "picomatch": "^4.0.7",
142
142
  "semver": "^7.8.5",
143
143
  "sirv": "^3.0.2",
@@ -260,7 +260,7 @@
260
260
  "./fetch.js"
261
261
  ],
262
262
  "devDependencies": {
263
- "@brillout/release-me": "^0.4.16",
263
+ "@brillout/release-me": "^0.4.18",
264
264
  "@types/babel__core": "^7.20.5",
265
265
  "@types/estree": "^1.0.5",
266
266
  "@types/node": "^20.10.5",