vike 0.4.215 → 0.4.217-commit-99ea561

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 (144) hide show
  1. package/dist/cjs/__internal/index.js +2 -2
  2. package/dist/cjs/node/api/build.js +10 -3
  3. package/dist/cjs/node/api/context.js +8 -6
  4. package/dist/cjs/node/api/dev.js +7 -2
  5. package/dist/cjs/node/api/{prepareApiCall.js → prepareViteApiCall.js} +16 -6
  6. package/dist/cjs/node/api/prerender.js +7 -2
  7. package/dist/cjs/node/api/preview.js +7 -2
  8. package/dist/cjs/node/api/utils.js +1 -0
  9. package/dist/cjs/node/plugin/index.js +7 -10
  10. package/dist/cjs/node/plugin/onLoad.js +2 -2
  11. package/dist/cjs/node/plugin/plugins/autoFullBuild.js +15 -12
  12. package/dist/cjs/node/plugin/plugins/baseUrls.js +17 -12
  13. package/dist/cjs/node/plugin/plugins/buildConfig/fixServerAssets.js +1 -1
  14. package/dist/cjs/node/plugin/plugins/buildConfig.js +10 -10
  15. package/dist/cjs/node/plugin/plugins/commonConfig.js +35 -4
  16. package/dist/cjs/node/plugin/plugins/devConfig/determineOptimizeDeps.js +5 -5
  17. package/dist/cjs/node/plugin/plugins/devConfig/index.js +1 -4
  18. package/dist/cjs/node/plugin/plugins/extractAssetsPlugin.js +4 -7
  19. package/dist/cjs/node/plugin/plugins/importBuild/getVikeManifest.js +2 -2
  20. package/dist/cjs/node/plugin/plugins/importBuild/index.js +8 -6
  21. package/dist/cjs/node/plugin/plugins/importUserCode/getVirtualFileImportUserCode.js +8 -8
  22. package/dist/cjs/node/plugin/plugins/importUserCode/index.js +9 -13
  23. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/crawlPlusFiles.js +23 -106
  24. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/resolveVikeConfigGlobal.js +128 -0
  25. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.js +42 -28
  26. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVirtualFilePageConfigValuesAll.js +3 -4
  27. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVirtualFilePageConfigs.js +1 -1
  28. package/dist/cjs/node/plugin/plugins/previewConfig.js +4 -4
  29. package/dist/cjs/node/plugin/plugins/setGlobalContext.js +35 -17
  30. package/dist/cjs/node/prerender/runPrerender.js +5 -7
  31. package/dist/cjs/node/prerender/utils.js +1 -1
  32. package/dist/cjs/node/runtime/globalContext.js +21 -13
  33. package/dist/cjs/node/runtime/index-common.js +3 -1
  34. package/dist/cjs/node/runtime/renderPage/renderPageAlreadyRouted.js +1 -1
  35. package/dist/cjs/node/runtime/renderPage.js +4 -2
  36. package/dist/cjs/node/runtime/utils.js +1 -2
  37. package/dist/cjs/node/runtime-dev/createDevMiddleware.js +25 -0
  38. package/dist/cjs/node/runtime-dev/index.js +32 -0
  39. package/dist/cjs/node/shared/resolveBase.js +41 -0
  40. package/dist/cjs/shared/page-configs/getConfigValueBuildTime.js +2 -2
  41. package/dist/cjs/shared/page-configs/serialize/serializeConfigValues.js +2 -2
  42. package/dist/cjs/utils/PROJECT_VERSION.js +1 -1
  43. package/dist/cjs/utils/assertSetup.js +135 -0
  44. package/dist/cjs/utils/isDocker.js +2 -2
  45. package/dist/cjs/utils/requireResolve.js +2 -2
  46. package/dist/esm/__internal/index.js +2 -2
  47. package/dist/esm/node/api/build.d.ts +5 -0
  48. package/dist/esm/node/api/build.js +10 -3
  49. package/dist/esm/node/api/context.js +9 -7
  50. package/dist/esm/node/api/dev.d.ts +5 -0
  51. package/dist/esm/node/api/dev.js +7 -2
  52. package/dist/esm/node/api/prepareViteApiCall.d.ts +7 -0
  53. package/dist/esm/node/api/{prepareApiCall.js → prepareViteApiCall.js} +16 -6
  54. package/dist/esm/node/api/prerender.d.ts +5 -0
  55. package/dist/esm/node/api/prerender.js +7 -2
  56. package/dist/esm/node/api/preview.d.ts +5 -0
  57. package/dist/esm/node/api/preview.js +7 -2
  58. package/dist/esm/node/api/utils.d.ts +1 -0
  59. package/dist/esm/node/api/utils.js +1 -0
  60. package/dist/esm/node/cli/parseCli.d.ts +1 -1
  61. package/dist/esm/node/plugin/index.d.ts +3 -3
  62. package/dist/esm/node/plugin/index.js +6 -9
  63. package/dist/esm/node/plugin/onLoad.js +1 -1
  64. package/dist/esm/node/plugin/plugins/autoFullBuild.js +15 -12
  65. package/dist/esm/node/plugin/plugins/baseUrls.d.ts +2 -2
  66. package/dist/esm/node/plugin/plugins/baseUrls.js +17 -12
  67. package/dist/esm/node/plugin/plugins/buildConfig/fixServerAssets.js +1 -1
  68. package/dist/esm/node/plugin/plugins/buildConfig.js +11 -11
  69. package/dist/esm/node/plugin/plugins/commonConfig.d.ts +7 -1
  70. package/dist/esm/node/plugin/plugins/commonConfig.js +36 -5
  71. package/dist/esm/node/plugin/plugins/devConfig/determineOptimizeDeps.d.ts +1 -1
  72. package/dist/esm/node/plugin/plugins/devConfig/determineOptimizeDeps.js +5 -5
  73. package/dist/esm/node/plugin/plugins/devConfig/index.js +2 -5
  74. package/dist/esm/node/plugin/plugins/extractAssetsPlugin.js +4 -7
  75. package/dist/esm/node/plugin/plugins/importBuild/getVikeManifest.d.ts +3 -2
  76. package/dist/esm/node/plugin/plugins/importBuild/getVikeManifest.js +2 -2
  77. package/dist/esm/node/plugin/plugins/importBuild/index.js +8 -6
  78. package/dist/esm/node/plugin/plugins/importUserCode/getVirtualFileImportUserCode.d.ts +2 -2
  79. package/dist/esm/node/plugin/plugins/importUserCode/getVirtualFileImportUserCode.js +8 -8
  80. package/dist/esm/node/plugin/plugins/importUserCode/index.js +11 -15
  81. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/crawlPlusFiles.d.ts +1 -1
  82. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/crawlPlusFiles.js +23 -106
  83. package/dist/esm/{shared/ConfigVike.d.ts → node/plugin/plugins/importUserCode/v1-design/getVikeConfig/resolveVikeConfigGlobal.d.ts} +14 -12
  84. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/resolveVikeConfigGlobal.js +123 -0
  85. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.d.ts +8 -6
  86. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.js +43 -29
  87. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVirtualFilePageConfigValuesAll.js +3 -4
  88. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVirtualFilePageConfigs.js +1 -1
  89. package/dist/esm/node/plugin/plugins/previewConfig.js +5 -5
  90. package/dist/esm/node/plugin/plugins/setGlobalContext.d.ts +1 -1
  91. package/dist/esm/node/plugin/plugins/setGlobalContext.js +37 -19
  92. package/dist/esm/node/plugin/shared/getEnvVarObject.d.ts +1 -1
  93. package/dist/esm/node/prerender/runPrerender.js +6 -8
  94. package/dist/esm/node/prerender/utils.d.ts +1 -1
  95. package/dist/esm/node/prerender/utils.js +1 -1
  96. package/dist/esm/node/runtime/globalContext.d.ts +8 -4
  97. package/dist/esm/node/runtime/globalContext.js +22 -14
  98. package/dist/esm/node/runtime/index-common.d.ts +1 -0
  99. package/dist/esm/node/runtime/index-common.js +1 -0
  100. package/dist/esm/node/runtime/renderPage/renderPageAlreadyRouted.js +1 -1
  101. package/dist/esm/node/runtime/renderPage.js +5 -3
  102. package/dist/esm/node/runtime/utils.d.ts +1 -2
  103. package/dist/esm/node/runtime/utils.js +1 -2
  104. package/dist/esm/node/runtime-dev/createDevMiddleware.d.ts +10 -0
  105. package/dist/esm/node/runtime-dev/createDevMiddleware.js +23 -0
  106. package/dist/esm/node/runtime-dev/index.d.ts +3 -0
  107. package/dist/esm/node/runtime-dev/index.js +6 -0
  108. package/dist/esm/node/shared/resolveBase.d.ts +11 -0
  109. package/dist/esm/node/shared/resolveBase.js +36 -0
  110. package/dist/esm/shared/page-configs/Config.d.ts +2 -2
  111. package/dist/esm/shared/page-configs/getConfigValueBuildTime.js +1 -1
  112. package/dist/esm/shared/page-configs/serialize/serializeConfigValues.js +1 -1
  113. package/dist/esm/utils/PROJECT_VERSION.d.ts +1 -1
  114. package/dist/esm/utils/PROJECT_VERSION.js +1 -1
  115. package/dist/esm/utils/assertSetup.d.ts +20 -0
  116. package/dist/esm/utils/assertSetup.js +130 -0
  117. package/dist/esm/utils/isDocker.js +1 -1
  118. package/dist/esm/utils/projectInfo.d.ts +1 -1
  119. package/dist/esm/utils/requireResolve.js +1 -1
  120. package/package.json +1 -1
  121. package/dist/cjs/node/plugin/plugins/config/assertVikeConfig.js +0 -75
  122. package/dist/cjs/node/plugin/plugins/config/index.js +0 -81
  123. package/dist/cjs/node/plugin/plugins/config/pickFirst.js +0 -6
  124. package/dist/cjs/node/plugin/plugins/config/resolveBase.js +0 -47
  125. package/dist/cjs/node/shared/getConfigVike.js +0 -10
  126. package/dist/cjs/shared/ConfigVike.js +0 -2
  127. package/dist/cjs/utils/assertIsNotProductionRuntime.js +0 -62
  128. package/dist/cjs/utils/assertNodeEnv.js +0 -106
  129. package/dist/esm/node/api/prepareApiCall.d.ts +0 -7
  130. package/dist/esm/node/plugin/plugins/config/assertVikeConfig.d.ts +0 -7
  131. package/dist/esm/node/plugin/plugins/config/assertVikeConfig.js +0 -73
  132. package/dist/esm/node/plugin/plugins/config/index.d.ts +0 -3
  133. package/dist/esm/node/plugin/plugins/config/index.js +0 -76
  134. package/dist/esm/node/plugin/plugins/config/pickFirst.d.ts +0 -1
  135. package/dist/esm/node/plugin/plugins/config/pickFirst.js +0 -3
  136. package/dist/esm/node/plugin/plugins/config/resolveBase.d.ts +0 -10
  137. package/dist/esm/node/plugin/plugins/config/resolveBase.js +0 -42
  138. package/dist/esm/node/shared/getConfigVike.d.ts +0 -4
  139. package/dist/esm/node/shared/getConfigVike.js +0 -8
  140. package/dist/esm/shared/ConfigVike.js +0 -1
  141. package/dist/esm/utils/assertIsNotProductionRuntime.d.ts +0 -12
  142. package/dist/esm/utils/assertIsNotProductionRuntime.js +0 -59
  143. package/dist/esm/utils/assertNodeEnv.d.ts +0 -10
  144. package/dist/esm/utils/assertNodeEnv.js +0 -103
@@ -5,6 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.vikeConfigDependencies = void 0;
7
7
  exports.getVikeConfig = getVikeConfig;
8
+ exports.getVikeConfig2 = getVikeConfig2;
8
9
  exports.reloadVikeConfig = reloadVikeConfig;
9
10
  exports.isVikeConfigFile = isVikeConfigFile;
10
11
  exports.isV1Design = isV1Design;
@@ -26,18 +27,21 @@ const loadFileAtConfigTime_js_1 = require("./getVikeConfig/loadFileAtConfigTime.
26
27
  const resolvePointerImport_js_1 = require("./getVikeConfig/resolvePointerImport.js");
27
28
  const getFilePath_js_1 = require("../../../shared/getFilePath.js");
28
29
  const getConfigValueBuildTime_js_1 = require("../../../../../shared/page-configs/getConfigValueBuildTime.js");
29
- const getConfigVike_js_1 = require("../../../../shared/getConfigVike.js");
30
30
  const assertExtensions_js_1 = require("./assertExtensions.js");
31
+ const resolveVikeConfigGlobal_js_1 = require("./getVikeConfig/resolveVikeConfigGlobal.js");
31
32
  (0, utils_js_1.assertIsNotProductionRuntime)();
32
- let devServerIsCorrupt = false;
33
+ let restartVite = false;
33
34
  let wasConfigInvalid = null;
34
35
  let vikeConfigPromise = null;
35
36
  const vikeConfigDependencies = new Set();
36
37
  exports.vikeConfigDependencies = vikeConfigDependencies;
37
- function reloadVikeConfig(userRootDir, outDirRoot) {
38
+ function reloadVikeConfig(config) {
39
+ const userRootDir = config.root;
40
+ const vikeVitePluginOptions = config._vikeVitePluginOptions;
41
+ (0, utils_js_1.assert)(vikeVitePluginOptions);
38
42
  vikeConfigDependencies.clear();
39
43
  (0, resolvePointerImport_js_1.clearFilesEnvMap)();
40
- vikeConfigPromise = loadVikeConfig_withErrorHandling(userRootDir, outDirRoot, true, true);
44
+ vikeConfigPromise = loadVikeConfig_withErrorHandling(userRootDir, true, vikeVitePluginOptions);
41
45
  handleReloadSideEffects();
42
46
  }
43
47
  async function handleReloadSideEffects() {
@@ -61,8 +65,8 @@ async function handleReloadSideEffects() {
61
65
  wasConfigInvalid = false;
62
66
  (0, loggerNotProd_js_1.logConfigErrorRecover)();
63
67
  }
64
- if (devServerIsCorrupt) {
65
- devServerIsCorrupt = false;
68
+ if (restartVite) {
69
+ restartVite = false;
66
70
  const viteDevServer = (0, globalContext_js_1.getViteDevServer)();
67
71
  (0, utils_js_1.assert)(viteDevServer);
68
72
  (0, removeSuperfluousViteLog_js_1.removeSuperfluousViteLog_enable)();
@@ -71,23 +75,32 @@ async function handleReloadSideEffects() {
71
75
  }
72
76
  }
73
77
  }
74
- async function getVikeConfig(config, isDev, { crawlWithGit, tolerateInvalidConfig } = {}) {
75
- const { outDirRoot } = (0, utils_js_1.getOutDirs)(config);
78
+ async function getVikeConfig(config, { doNotRestartViteOnError } = {}) {
76
79
  const userRootDir = config.root;
80
+ const vikeVitePluginOptions = config._vikeVitePluginOptions;
81
+ (0, utils_js_1.assert)(vikeVitePluginOptions);
82
+ const isDev = config._isDev;
83
+ (0, utils_js_1.assert)(typeof isDev === 'boolean');
84
+ return await getVikeConfigEntry(userRootDir, isDev, vikeVitePluginOptions, doNotRestartViteOnError ?? false);
85
+ }
86
+ async function getVikeConfig2(userRootDir, isDev, vikeVitePluginOptions) {
87
+ (0, utils_js_1.assert)(vikeVitePluginOptions);
88
+ return await getVikeConfigEntry(userRootDir, isDev, vikeVitePluginOptions, false);
89
+ }
90
+ async function getVikeConfigEntry(userRootDir, isDev, vikeVitePluginOptions, doNotRestartViteOnError) {
77
91
  if (!vikeConfigPromise) {
78
- const crawlWithGit_ = crawlWithGit !== undefined ? crawlWithGit : (await (0, getConfigVike_js_1.getConfigVike)(config)).crawl.git;
79
- vikeConfigPromise = loadVikeConfig_withErrorHandling(userRootDir, outDirRoot, isDev, crawlWithGit_, tolerateInvalidConfig);
92
+ vikeConfigPromise = loadVikeConfig_withErrorHandling(userRootDir, isDev, vikeVitePluginOptions, doNotRestartViteOnError);
80
93
  }
81
94
  return await vikeConfigPromise;
82
95
  }
83
- async function isV1Design(config, isDev) {
84
- const vikeConfig = await getVikeConfig(config, isDev);
96
+ async function isV1Design(config) {
97
+ const vikeConfig = await getVikeConfig(config);
85
98
  const { pageConfigs } = vikeConfig;
86
99
  const isV1Design = pageConfigs.length > 0;
87
100
  return isV1Design;
88
101
  }
89
- async function loadInterfaceFiles(userRootDir, outDirRoot, crawlWithGit) {
90
- const plusFiles = await findPlusFiles(userRootDir, outDirRoot, crawlWithGit);
102
+ async function loadInterfaceFiles(userRootDir) {
103
+ const plusFiles = await findPlusFiles(userRootDir, null);
91
104
  const configFiles = [];
92
105
  const valueFiles = [];
93
106
  plusFiles.forEach((f) => {
@@ -196,12 +209,12 @@ function assertAllConfigsAreKnown(interfaceFilesByLocationId) {
196
209
  });
197
210
  });
198
211
  }
199
- async function loadVikeConfig_withErrorHandling(userRootDir, outDirRoot, isDev, crawlWithGit, tolerateInvalidConfig) {
212
+ async function loadVikeConfig_withErrorHandling(userRootDir, isDev, vikeVitePluginOptions, doNotRestartViteOnError) {
200
213
  let hasError = false;
201
214
  let ret;
202
215
  let err;
203
216
  try {
204
- ret = await loadVikeConfig(userRootDir, outDirRoot, crawlWithGit);
217
+ ret = await loadVikeConfig(userRootDir, vikeVitePluginOptions);
205
218
  }
206
219
  catch (err_) {
207
220
  hasError = true;
@@ -223,8 +236,8 @@ async function loadVikeConfig_withErrorHandling(userRootDir, outDirRoot, isDev,
223
236
  }
224
237
  else {
225
238
  (0, loggerNotProd_js_1.logConfigError)(err);
226
- if (!tolerateInvalidConfig) {
227
- devServerIsCorrupt = true;
239
+ if (!doNotRestartViteOnError) {
240
+ restartVite = true;
228
241
  }
229
242
  const dummyData = {
230
243
  pageConfigs: [],
@@ -232,16 +245,17 @@ async function loadVikeConfig_withErrorHandling(userRootDir, outDirRoot, isDev,
232
245
  configDefinitions: {},
233
246
  configValueSources: {}
234
247
  },
235
- globalVikeConfig: {}
248
+ vikeConfigGlobal: (0, resolveVikeConfigGlobal_js_1.resolveVikeConfigGlobal)({}, {})
236
249
  };
237
250
  return dummyData;
238
251
  }
239
252
  }
240
253
  }
241
- async function loadVikeConfig(userRootDir, outDirRoot, crawlWithGit) {
242
- const interfaceFilesByLocationId = await loadInterfaceFiles(userRootDir, outDirRoot, crawlWithGit);
254
+ async function loadVikeConfig(userRootDir, vikeVitePluginOptions) {
255
+ const interfaceFilesByLocationId = await loadInterfaceFiles(userRootDir);
243
256
  const importedFilesLoaded = {};
244
- const { globalVikeConfig, pageConfigGlobal } = await getGlobalConfigs(interfaceFilesByLocationId, userRootDir, importedFilesLoaded);
257
+ const { pageConfigGlobal, pageConfigGlobalValues } = await getGlobalConfigs(interfaceFilesByLocationId, userRootDir, importedFilesLoaded);
258
+ const vikeConfigGlobal = (0, resolveVikeConfigGlobal_js_1.resolveVikeConfigGlobal)(vikeVitePluginOptions, pageConfigGlobalValues);
245
259
  const pageConfigs = await Promise.all((0, utils_js_1.objectEntries)(interfaceFilesByLocationId)
246
260
  .filter(([_pageId, interfaceFiles]) => isDefiningPage(interfaceFiles))
247
261
  .map(async ([locationId]) => {
@@ -291,7 +305,7 @@ async function loadVikeConfig(userRootDir, outDirRoot, crawlWithGit) {
291
305
  return pageConfig;
292
306
  }));
293
307
  assertPageConfigs(pageConfigs);
294
- return { pageConfigs, pageConfigGlobal, globalVikeConfig };
308
+ return { pageConfigs, pageConfigGlobal, vikeConfigGlobal };
295
309
  }
296
310
  // TODO/soon: refactor
297
311
  // - Dedupe: most of the assertUsageGlobalConfigs() code below is a copy-paste of the assertUsage() logic inside getGlobalConfigs()
@@ -401,7 +415,7 @@ async function getGlobalConfigs(interfaceFilesByLocationId, userRootDir, importe
401
415
  });
402
416
  });
403
417
  }
404
- const globalVikeConfig = {};
418
+ const pageConfigGlobalValues = {};
405
419
  const pageConfigGlobal = {
406
420
  configDefinitions: configDefinitionsBuiltIn_js_1.configDefinitionsBuiltInGlobal,
407
421
  configValueSources: {}
@@ -421,10 +435,10 @@ async function getGlobalConfigs(interfaceFilesByLocationId, userRootDir, importe
421
435
  return;
422
436
  const { filePathToShowToUser } = configValueSource.definedAtFilePath;
423
437
  (0, utils_js_1.assertWarning)(false, `Being able to define config ${picocolors_1.default.cyan(configName)} in ${filePathToShowToUser} is experimental and will likely be removed. Define the config ${picocolors_1.default.cyan(configName)} in Vike's Vite plugin options instead.`, { onlyOnce: true });
424
- globalVikeConfig[configName] = configValueSource.value;
438
+ pageConfigGlobalValues[configName] = configValueSource.value;
425
439
  }
426
440
  }));
427
- return { pageConfigGlobal, globalVikeConfig };
441
+ return { pageConfigGlobal, pageConfigGlobalValues };
428
442
  }
429
443
  async function resolveConfigValueSources(configName, configDef, interfaceFilesRelevant, userRootDir, importedFilesLoaded) {
430
444
  const sourcesInfo = [];
@@ -785,8 +799,8 @@ function getComputed(configValueSources, configDefinitions) {
785
799
  });
786
800
  return configValuesComputed;
787
801
  }
788
- async function findPlusFiles(userRootDir, outDirRoot, crawlWithGit) {
789
- const files = await (0, crawlPlusFiles_js_1.crawlPlusFiles)(userRootDir, outDirRoot, crawlWithGit);
802
+ async function findPlusFiles(userRootDir, outDirRoot) {
803
+ const files = await (0, crawlPlusFiles_js_1.crawlPlusFiles)(userRootDir, outDirRoot);
790
804
  const plusFiles = files.map(({ filePathAbsoluteUserRootDir }) => (0, getFilePath_js_1.getFilePathResolved)({ filePathAbsoluteUserRootDir, userRootDir }));
791
805
  return plusFiles;
792
806
  }
@@ -8,7 +8,6 @@ const extractAssetsQuery_js_1 = require("../../../../shared/extractAssetsQuery.j
8
8
  const debug_js_1 = require("./debug.js");
9
9
  const isRuntimeEnvMatch_js_1 = require("./isRuntimeEnvMatch.js");
10
10
  const serializeConfigValues_js_1 = require("../../../../../shared/page-configs/serialize/serializeConfigValues.js");
11
- const getConfigVike_js_1 = require("../../../../shared/getConfigVike.js");
12
11
  const fixServerAssets_js_1 = require("../../buildConfig/fixServerAssets.js");
13
12
  const getConfigValueBuildTime_js_1 = require("../../../../../shared/page-configs/getConfigValueBuildTime.js");
14
13
  async function getVirtualFilePageConfigValuesAll(id, isDev, config) {
@@ -21,11 +20,11 @@ async function getVirtualFilePageConfigValuesAll(id, isDev, config) {
21
20
  }
22
21
  */
23
22
  const { pageId, isForClientSide } = result;
24
- const { pageConfigs } = await (0, getVikeConfig_js_1.getVikeConfig)(config, isDev, { tolerateInvalidConfig: true });
23
+ const vikeConfig = await (0, getVikeConfig_js_1.getVikeConfig)(config, { doNotRestartViteOnError: true });
24
+ const { pageConfigs } = vikeConfig;
25
25
  const pageConfig = pageConfigs.find((pageConfig) => pageConfig.pageId === pageId);
26
26
  (0, utils_js_1.assert)(pageConfig, { id, pageId });
27
- const configVike = await (0, getConfigVike_js_1.getConfigVike)(config);
28
- const code = getLoadConfigValuesAll(pageConfig, isForClientSide, pageId, configVike.includeAssetsImportedByServer, isDev);
27
+ const code = getLoadConfigValuesAll(pageConfig, isForClientSide, pageId, vikeConfig.vikeConfigGlobal.includeAssetsImportedByServer, isDev);
29
28
  (0, debug_js_1.debug)(id, isForClientSide ? 'CLIENT-SIDE' : 'SERVER-SIDE', code);
30
29
  return code;
31
30
  }
@@ -7,7 +7,7 @@ const getVikeConfig_js_1 = require("./getVikeConfig.js");
7
7
  const isRuntimeEnvMatch_js_1 = require("./isRuntimeEnvMatch.js");
8
8
  const serializeConfigValues_js_1 = require("../../../../../shared/page-configs/serialize/serializeConfigValues.js");
9
9
  async function getVirtualFilePageConfigs(isForClientSide, isDev, id, isClientRouting, config) {
10
- const { pageConfigs, pageConfigGlobal } = await (0, getVikeConfig_js_1.getVikeConfig)(config, isDev, { tolerateInvalidConfig: true });
10
+ const { pageConfigs, pageConfigGlobal } = await (0, getVikeConfig_js_1.getVikeConfig)(config, { doNotRestartViteOnError: true });
11
11
  return getCode(pageConfigs, pageConfigGlobal, isForClientSide, isDev, id, isClientRouting);
12
12
  }
13
13
  function getCode(pageConfigs, pageConfigGlobal, isForClientSide, isDev, id, isClientRouting) {
@@ -12,7 +12,7 @@ const picocolors_1 = __importDefault(require("@brillout/picocolors"));
12
12
  const index_js_1 = require("./devConfig/index.js");
13
13
  function previewConfig() {
14
14
  let config;
15
- // let configVike: ConfigVikeResolved
15
+ // let vikeConfigGlobal: VikeConfigGlobal
16
16
  return {
17
17
  name: 'vike:previewConfig',
18
18
  apply: utils_js_1.applyPreview,
@@ -27,18 +27,18 @@ function previewConfig() {
27
27
  async configResolved(config_) {
28
28
  config = config_;
29
29
  (0, index_js_1.logDockerHint)(config.preview.host);
30
- // configVike = await getConfigVike(config)
30
+ // const vikeConfig = await getVikeConfig(config)
31
+ // vikeConfigGlobal = vikeConfig.vikeConfigGlobal
31
32
  },
32
33
  configurePreviewServer(server) {
33
34
  /* - Couldn't make `appType: 'mpa'` work as of npm:@brillout/vite@5.0.0-beta.14.0426910c
34
35
  - This ugly hack to set appType for preview won't be need once https://github.com/vitejs/vite/pull/14855 is merged.
35
36
  config.appType = 'mpa'
36
37
  */
37
- (0, utils_js_1.markEnvAsVitePreview)();
38
38
  return () => {
39
39
  assertDist();
40
40
  /* We don't use this condition (we wrongfully always use the SSR middleware) because of the regression introduced by https://github.com/vitejs/vite/pull/14756 which stops servering .html files when `appType: 'custom'`.
41
- if (!configVike.prerender || configVike.prerender.partial) {
41
+ if (!vikeConfigGlobal.prerender || vikeConfigGlobal.prerender.partial) {
42
42
  addSsrMiddleware(server.middlewares, config, true)
43
43
  }
44
44
  /*/
@@ -3,26 +3,44 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.setGlobalContext = setGlobalContext;
4
4
  const globalContext_js_1 = require("../../runtime/globalContext.js");
5
5
  const utils_js_1 = require("../utils.js");
6
+ const getVikeConfig_js_1 = require("./importUserCode/v1-design/getVikeConfig.js");
6
7
  function setGlobalContext() {
7
- return {
8
- name: 'vike:setGlobalContext',
9
- enforce: 'pre',
10
- configureServer: {
11
- order: 'pre',
12
- handler(viteDevServer) {
13
- (0, globalContext_js_1.setGlobalContext_viteDevServer)(viteDevServer);
8
+ return [
9
+ {
10
+ name: 'vike:setGlobalContext:pre',
11
+ enforce: 'pre',
12
+ configureServer: {
13
+ order: 'pre',
14
+ handler(viteDevServer) {
15
+ (0, globalContext_js_1.setGlobalContext_viteDevServer)(viteDevServer);
16
+ (0, utils_js_1.markSetup_viteDevServer)();
17
+ }
18
+ },
19
+ configurePreviewServer() {
20
+ (0, utils_js_1.markSetup_vitePreviewServer)();
21
+ },
22
+ config: {
23
+ order: 'pre',
24
+ handler(_, env) {
25
+ const isViteDev = (0, utils_js_1.isDevCheck)(env);
26
+ (0, globalContext_js_1.setGlobalContext_isViteDev)(isViteDev);
27
+ (0, utils_js_1.markSetup_isViteDev)(isViteDev);
28
+ }
14
29
  }
15
30
  },
16
- config: {
17
- handler(_, env) {
18
- const isDev = (0, utils_js_1.isDevCheck)(env);
19
- (0, globalContext_js_1.setGlobalContext_isDev)(isDev);
31
+ {
32
+ name: 'vike:setGlobalContext:post',
33
+ enforce: 'post',
34
+ configResolved: {
35
+ order: 'post',
36
+ async handler(config) {
37
+ const { outDirRoot } = (0, utils_js_1.getOutDirs)(config);
38
+ (0, utils_js_1.assertFilePathAbsoluteFilesystem)(outDirRoot); // Needed for loadImportBuild(outDir) of @brillout/vite-plugin-server-entry
39
+ (0, globalContext_js_1.setGlobalContext_viteConfig)(config, outDirRoot);
40
+ const vikeConfig = await (0, getVikeConfig_js_1.getVikeConfig)(config);
41
+ (0, globalContext_js_1.setGlobalContext_vikeConfig)(vikeConfig);
42
+ }
20
43
  }
21
- },
22
- configResolved(config) {
23
- const { outDirRoot } = (0, utils_js_1.getOutDirs)(config);
24
- (0, utils_js_1.assertFilePathAbsoluteFilesystem)(outDirRoot); // Needed for loadImportBuild(outDir) of @brillout/vite-plugin-server-entry
25
- (0, globalContext_js_1.setGlobalContext_viteConfig)(config, outDirRoot);
26
44
  }
27
- };
45
+ ];
28
46
  }
@@ -39,7 +39,6 @@ const picocolors_1 = __importDefault(require("@brillout/picocolors"));
39
39
  const os_1 = require("os");
40
40
  const globalContext_js_1 = require("../runtime/globalContext.js");
41
41
  const vite_1 = require("vite");
42
- const getConfigVike_js_1 = require("../shared/getConfigVike.js");
43
42
  const getPageFiles_js_1 = require("../../shared/getPageFiles.js");
44
43
  const getPageContextRequestUrl_js_1 = require("../../shared/getPageContextRequestUrl.js");
45
44
  const resolveRouteString_js_1 = require("../../shared/route/resolveRouteString.js");
@@ -56,7 +55,7 @@ const getVikeConfig_js_1 = require("../plugin/plugins/importUserCode/v1-design/g
56
55
  const logErrorHint_js_1 = require("../runtime/renderPage/logErrorHint.js");
57
56
  const executeHook_js_1 = require("../../shared/hooks/executeHook.js");
58
57
  const getConfigValueBuildTime_js_1 = require("../../shared/page-configs/getConfigValueBuildTime.js");
59
- const prepareApiCall_js_1 = require("../api/prepareApiCall.js");
58
+ const prepareViteApiCall_js_1 = require("../api/prepareViteApiCall.js");
60
59
  async function runPrerenderFromAPI(options = {}) {
61
60
  return await runPrerender(options, 'prerender()');
62
61
  // - We purposely propagate the error to the user land, so that the error interrupts the user land. It's also, I guess, a nice-to-have that the user has control over the error.
@@ -64,7 +63,7 @@ async function runPrerenderFromAPI(options = {}) {
64
63
  }
65
64
  async function runPrerenderFromCLIPrerenderCommand() {
66
65
  try {
67
- const { viteConfigEnhanced } = await (0, prepareApiCall_js_1.prepareApiCall)(undefined, 'prerender');
66
+ const { viteConfigEnhanced } = await (0, prepareViteApiCall_js_1.prepareViteApiCall)(undefined, 'prerender');
68
67
  await runPrerender({ viteConfig: viteConfigEnhanced }, '$ vike prerender');
69
68
  }
70
69
  catch (err) {
@@ -89,20 +88,20 @@ async function runPrerenderFromAutoRun(viteConfig, forceExit) {
89
88
  }
90
89
  async function runPrerender(options = {}, standaloneTrigger) {
91
90
  checkOutdatedOptions(options);
91
+ (0, utils_js_1.onSetupPrerender)();
92
92
  (0, globalContext_js_1.setGlobalContext_isPrerendering)();
93
93
  (0, getHook_js_1.getHook_setIsPrerenderering)();
94
94
  const logLevel = !!options.onPagePrerender ? 'warn' : 'info';
95
95
  if (logLevel === 'info') {
96
96
  console.log(`${picocolors_1.default.cyan(`vike v${utils_js_1.projectInfo.projectVersion}`)} ${picocolors_1.default.green('pre-rendering HTML...')}`);
97
97
  }
98
- (0, utils_js_1.handleNodeEnv_prerender)();
99
98
  await disableReactStreaming();
100
99
  const viteConfig = await (0, vite_1.resolveConfig)(options.viteConfig || {}, 'vike pre-rendering', 'production');
101
100
  assertLoadedConfig(viteConfig, options);
102
- const configVike = await (0, getConfigVike_js_1.getConfigVike)(viteConfig);
101
+ const vikeConfig = await (0, getVikeConfig_js_1.getVikeConfig)(viteConfig);
103
102
  const { outDirClient } = (0, utils_js_1.getOutDirs)(viteConfig);
104
103
  const { root } = viteConfig;
105
- const prerenderConfig = configVike.prerender;
104
+ const prerenderConfig = vikeConfig.vikeConfigGlobal.prerender;
106
105
  if (!prerenderConfig) {
107
106
  (0, utils_js_1.assert)(standaloneTrigger);
108
107
  (0, utils_js_1.assertWarning)(prerenderConfig, `You're executing ${picocolors_1.default.cyan(standaloneTrigger)} but the config ${picocolors_1.default.cyan('prerender')} isn't set to true`, {
@@ -122,7 +121,6 @@ async function runPrerender(options = {}, standaloneTrigger) {
122
121
  pageContextInit: options.pageContextInit ?? null
123
122
  });
124
123
  const doNotPrerenderList = [];
125
- const vikeConfig = await (0, getVikeConfig_js_1.getVikeConfig)(viteConfig, false);
126
124
  await collectDoNoPrerenderList(renderContext, vikeConfig.pageConfigs, doNotPrerenderList, concurrencyLimit);
127
125
  await callOnBeforePrerenderStartHooks(prerenderContext, renderContext, concurrencyLimit, doNotPrerenderList);
128
126
  await handlePagesWithStaticRoutes(prerenderContext, renderContext, doNotPrerenderList, concurrencyLimit);
@@ -27,7 +27,7 @@ __exportStar(require("../../utils/isPropertyGetter.js"), exports);
27
27
  __exportStar(require("../../utils/filesystemPathHandling.js"), exports);
28
28
  __exportStar(require("../../utils/urlToFile.js"), exports);
29
29
  __exportStar(require("../../utils/isPlainObject.js"), exports);
30
- __exportStar(require("../../utils/assertNodeEnv.js"), exports);
30
+ __exportStar(require("../../utils/assertSetup.js"), exports);
31
31
  __exportStar(require("../../utils/pLimit.js"), exports);
32
32
  __exportStar(require("../../utils/isFilePathAbsoluteFilesystem.js"), exports);
33
33
  __exportStar(require("../../utils/isArray.js"), exports);
@@ -14,16 +14,17 @@ exports.initGlobalContext_runPrerender = initGlobalContext_runPrerender;
14
14
  exports.initGlobalContext_getGlobalContextAsync = initGlobalContext_getGlobalContextAsync;
15
15
  exports.setGlobalContext_viteDevServer = setGlobalContext_viteDevServer;
16
16
  exports.setGlobalContext_viteConfig = setGlobalContext_viteConfig;
17
- exports.setGlobalContext_isDev = setGlobalContext_isDev;
17
+ exports.setGlobalContext_vikeConfig = setGlobalContext_vikeConfig;
18
+ exports.setGlobalContext_isViteDev = setGlobalContext_isViteDev;
18
19
  exports.setGlobalContext_isPrerendering = setGlobalContext_isPrerendering;
19
20
  const utils_js_1 = require("./utils.js");
20
21
  const loadImportBuild_js_1 = require("./globalContext/loadImportBuild.js");
21
22
  const getPageFiles_js_1 = require("../../shared/getPageFiles.js");
22
23
  const assertPluginManifest_js_1 = require("../shared/assertPluginManifest.js");
23
- const getConfigVike_js_1 = require("../shared/getConfigVike.js");
24
24
  const assertRuntimeManifest_js_1 = require("../shared/assertRuntimeManifest.js");
25
25
  const picocolors_1 = __importDefault(require("@brillout/picocolors"));
26
26
  const getPageFilesExports_js_1 = require("./page-files/getPageFilesExports.js");
27
+ const resolveBase_js_1 = require("../shared/resolveBase.js");
27
28
  const globalObject = (0, utils_js_1.getGlobalObject)('globalContext.ts', (() => {
28
29
  const { promise: viteDevServerPromise, resolve: viteDevServerPromiseResolve } = (0, utils_js_1.genPromise)();
29
30
  return {
@@ -88,12 +89,18 @@ function setGlobalContext_viteConfig(viteConfig, outDirRoot) {
88
89
  globalObject.viteConfig = viteConfig;
89
90
  globalObject.outDirRoot = outDirRoot;
90
91
  }
92
+ function setGlobalContext_vikeConfig(vikeConfig) {
93
+ if (globalObject.vikeConfig)
94
+ return;
95
+ assertIsNotInitilizedYet();
96
+ globalObject.vikeConfig = vikeConfig;
97
+ }
91
98
  function assertIsNotInitilizedYet() {
92
99
  // In develpoment, globalObject.viteDevServer always needs to be awaited for before initializing globalObject.globalContext
93
100
  (0, utils_js_1.assert)(!globalObject.globalContext);
94
101
  }
95
- function setGlobalContext_isDev(isDev) {
96
- globalObject.isDev = isDev;
102
+ function setGlobalContext_isViteDev(isViteDev) {
103
+ globalObject.isViteDev = isViteDev;
97
104
  }
98
105
  function setGlobalContext_isPrerendering() {
99
106
  globalObject.isPrerendering = true;
@@ -105,7 +112,7 @@ function getViteConfig() {
105
112
  return globalObject.viteConfig ?? null;
106
113
  }
107
114
  async function initGlobalContext_renderPage() {
108
- await initGlobalContext(!globalObject.isDev);
115
+ await initGlobalContext(!globalObject.isViteDev);
109
116
  }
110
117
  async function initGlobalContext_runPrerender() {
111
118
  if (globalObject.initGlobalContext_runPrerender_alreadyCalled)
@@ -141,14 +148,15 @@ async function initGlobalContext(isProduction) {
141
148
  (0, utils_js_1.assert)(globalObject.globalContext.isPrerendering === (globalObject.isPrerendering ?? false));
142
149
  return;
143
150
  }
144
- const { viteDevServer, viteConfig, isDev, isPrerendering } = globalObject;
145
- (0, utils_js_1.assertNodeEnv_runtime)(isDev ?? false);
151
+ const { viteDevServer, viteConfig, vikeConfig, isPrerendering } = globalObject;
152
+ (0, utils_js_1.onSetupRuntime)();
146
153
  if (!isProduction) {
147
154
  (0, utils_js_1.assert)(viteConfig);
155
+ (0, utils_js_1.assert)(vikeConfig);
148
156
  (0, utils_js_1.assert)(viteDevServer);
149
157
  (0, utils_js_1.assert)(!isPrerendering);
150
- const configVike = await (0, getConfigVike_js_1.getConfigVike)(viteConfig);
151
- const pluginManifest = getRuntimeManifest(configVike);
158
+ const vikeConfigGlobal = vikeConfig.vikeConfigGlobal;
159
+ const pluginManifest = getRuntimeManifest(vikeConfigGlobal, viteConfig);
152
160
  globalObject.globalContext = {
153
161
  isProduction: false,
154
162
  isPrerendering: false,
@@ -156,6 +164,7 @@ async function initGlobalContext(isProduction) {
156
164
  pluginManifest: null,
157
165
  viteDevServer,
158
166
  viteConfig,
167
+ vikeConfig,
159
168
  baseServer: pluginManifest.baseServer,
160
169
  baseAssets: pluginManifest.baseAssets,
161
170
  includeAssetsImportedByServer: pluginManifest.includeAssetsImportedByServer,
@@ -185,8 +194,6 @@ async function initGlobalContext(isProduction) {
185
194
  };
186
195
  if (isPrerendering) {
187
196
  (0, utils_js_1.assert)(viteConfig);
188
- const configVike = await (0, getConfigVike_js_1.getConfigVike)(viteConfig);
189
- (0, utils_js_1.assert)(configVike);
190
197
  (0, utils_js_1.objectAssign)(globalContext, {
191
198
  isPrerendering: true,
192
199
  viteConfig
@@ -202,8 +209,9 @@ async function initGlobalContext(isProduction) {
202
209
  }
203
210
  }
204
211
  }
205
- function getRuntimeManifest(configVike) {
206
- const { includeAssetsImportedByServer, baseServer, baseAssets, redirects, trailingSlash, disableUrlNormalization } = configVike;
212
+ function getRuntimeManifest(vikeConfigGlobal, viteConfig) {
213
+ const { includeAssetsImportedByServer, redirects, trailingSlash, disableUrlNormalization } = vikeConfigGlobal;
214
+ const { baseServer, baseAssets } = (0, resolveBase_js_1.resolveBaseFromResolvedConfig)(vikeConfigGlobal.baseServer, vikeConfigGlobal.baseAssets, viteConfig);
207
215
  const manifest = {
208
216
  baseServer,
209
217
  baseAssets,
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createPageRenderer = exports._injectAssets = exports.getGlobalContextAsync = exports.getGlobalContextSync = exports.version = exports.stampPipe = exports.pipeStream = exports.pipeNodeStream = exports.pipeWebStream = exports.dangerouslySkipEscape = exports.escapeInject = exports.renderPage = void 0;
3
+ exports.createPageRenderer = exports._injectAssets = exports.createDevMiddleware = exports.getGlobalContextAsync = exports.getGlobalContextSync = exports.version = exports.stampPipe = exports.pipeStream = exports.pipeNodeStream = exports.pipeWebStream = exports.dangerouslySkipEscape = exports.escapeInject = exports.renderPage = void 0;
4
4
  var renderPage_js_1 = require("./renderPage.js");
5
5
  Object.defineProperty(exports, "renderPage", { enumerable: true, get: function () { return renderPage_js_1.renderPage; } });
6
6
  var renderHtml_js_1 = require("./html/renderHtml.js");
@@ -16,6 +16,8 @@ Object.defineProperty(exports, "version", { enumerable: true, get: function () {
16
16
  var globalContext_js_1 = require("./globalContext.js");
17
17
  Object.defineProperty(exports, "getGlobalContextSync", { enumerable: true, get: function () { return globalContext_js_1.getGlobalContextSync; } });
18
18
  Object.defineProperty(exports, "getGlobalContextAsync", { enumerable: true, get: function () { return globalContext_js_1.getGlobalContextAsync; } });
19
+ var index_js_1 = require("../runtime-dev/index.js");
20
+ Object.defineProperty(exports, "createDevMiddleware", { enumerable: true, get: function () { return index_js_1.createDevMiddleware; } });
19
21
  // TODO/v1-release: remove
20
22
  var injectAssets__public_js_1 = require("./html/injectAssets/injectAssets__public.js");
21
23
  Object.defineProperty(exports, "_injectAssets", { enumerable: true, get: function () { return injectAssets__public_js_1.injectAssets__public; } });
@@ -126,7 +126,7 @@ function getPageContextInitEnhanced(pageContextInit, renderContext, { ssr: { url
126
126
  (0, utils_js_1.objectAssign)(pageContextInitEnhanced, pageContextInit);
127
127
  (0, utils_js_1.objectAssign)(pageContextInitEnhanced, {
128
128
  _objectCreatedByVike: true,
129
- // The following is defined on `pageContext` because we can eventually make these non-global (e.g. sot that two pages can have different includeAssetsImportedByServer settings)
129
+ // The following is defined on `pageContext` because we can eventually make these non-global
130
130
  _baseServer: globalContext.baseServer,
131
131
  _baseAssets: globalContext.baseAssets,
132
132
  _includeAssetsImportedByServer: globalContext.includeAssetsImportedByServer,
@@ -37,7 +37,7 @@ exports.renderPage_addWrapper = renderPage_addWrapper;
37
37
  async function renderPage(pageContextInit) {
38
38
  (0, assertArguments_js_1.assertArguments)(...arguments);
39
39
  (0, utils_js_1.assert)((0, utils_js_1.hasProp)(pageContextInit, 'urlOriginal', 'string')); // assertUsage() already implemented at assertArguments()
40
- (0, utils_js_1.assertEnv)();
40
+ (0, utils_js_1.onSetupRuntime)();
41
41
  assertIsUrl(pageContextInit.urlOriginal);
42
42
  const urlPathnameWithBase = (0, utils_js_1.parseUrl)(pageContextInit.urlOriginal, '/').pathname;
43
43
  assertIsNotViteRequest(urlPathnameWithBase, pageContextInit.urlOriginal);
@@ -338,7 +338,9 @@ function assertIsUrl(urlOriginal) {
338
338
  }
339
339
  function assertIsNotViteRequest(urlPathname, urlOriginal) {
340
340
  const isViteRequest = urlPathname.startsWith('/@vite/client') || urlPathname.startsWith('/@fs/') || urlPathname.startsWith('/__vite_ping');
341
- (0, utils_js_1.assertUsage)(!isViteRequest, `${picocolors_1.default.code('renderPage(pageContextInit)')} (https://vike.dev/renderPage) called with ${picocolors_1.default.code(`pageContextInit.urlOriginal===${JSON.stringify(urlOriginal)}`)} which is unexpected because this URL should have already been handled by Vite's development middleware. Make sure to 1. install Vite's development middleware and 2. add Vite's middleware *before* Vike's middleware, see https://vike.dev/renderPage`);
341
+ if (!isViteRequest)
342
+ return;
343
+ (0, utils_js_1.assertUsage)(false, `${picocolors_1.default.code('renderPage(pageContextInit)')} called with ${picocolors_1.default.code(`pageContextInit.urlOriginal===${JSON.stringify(urlOriginal)}`)} which is unexpected because the URL ${picocolors_1.default.bold(urlOriginal)} should have already been handled by the development middleware: make sure the ${picocolors_1.default.cyan('createDevMiddleware()')} middleware is executed *before* the ${picocolors_1.default.cyan('renderPage()')} middleware, see ${picocolors_1.default.underline('https://vike.dev/renderPage')}`);
342
344
  }
343
345
  function normalizeUrl(pageContextInit, httpRequestId) {
344
346
  const { trailingSlash, disableUrlNormalization, baseServer } = (0, globalContext_js_1.getGlobalContext)();
@@ -59,9 +59,8 @@ __exportStar(require("../../utils/objectKeys.js"), exports);
59
59
  __exportStar(require("../../utils/objectEntries.js"), exports);
60
60
  __exportStar(require("../../utils/objectFromEntries.js"), exports);
61
61
  __exportStar(require("../../utils/getFileExtension.js"), exports);
62
- __exportStar(require("../../utils/assertIsNotProductionRuntime.js"), exports);
62
+ __exportStar(require("../../utils/assertSetup.js"), exports);
63
63
  __exportStar(require("../../utils/path-shim.js"), exports);
64
- __exportStar(require("../../utils/assertNodeEnv.js"), exports);
65
64
  __exportStar(require("../../utils/isHtml.js"), exports);
66
65
  __exportStar(require("../../utils/warnIfErrorIsNotObject.js"), exports);
67
66
  __exportStar(require("../../utils/stripAnsi.js"), exports);
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createDevMiddleware = createDevMiddleware;
4
+ const vite_1 = require("vite");
5
+ const prepareViteApiCall_js_1 = require("../api/prepareViteApiCall.js");
6
+ /*
7
+ * Create server middleware for development with HMR and lazy-transpiling.
8
+ *
9
+ * https://vike.dev/createDevMiddleware
10
+ */
11
+ async function createDevMiddleware(options = {}) {
12
+ const viteConfig = {
13
+ ...options.viteConfig,
14
+ server: {
15
+ ...options.viteConfig?.server,
16
+ middlewareMode: options.viteConfig?.server?.middlewareMode ?? true
17
+ }
18
+ };
19
+ if (options.root)
20
+ viteConfig.root = options.root;
21
+ const { viteConfigEnhanced } = await (0, prepareViteApiCall_js_1.prepareViteApiCall)(viteConfig, 'dev');
22
+ const server = await (0, vite_1.createServer)(viteConfigEnhanced);
23
+ const devMiddleware = server.middlewares;
24
+ return { devMiddleware, viteServer: server, viteConfig: server.config };
25
+ }
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.createDevMiddleware = void 0;
27
+ const createDevMiddleware_ = async (...args) => {
28
+ const p = './createDevMiddleware.js';
29
+ const { createDevMiddleware } = await Promise.resolve(`${p}`).then(s => __importStar(require(s)));
30
+ return createDevMiddleware(...args);
31
+ };
32
+ exports.createDevMiddleware = createDevMiddleware_;
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.resolveBase = resolveBase;
7
+ exports.resolveBaseFromResolvedConfig = resolveBaseFromResolvedConfig;
8
+ const utils_js_1 = require("./utils.js");
9
+ const picocolors_1 = __importDefault(require("@brillout/picocolors"));
10
+ function resolveBaseFromResolvedConfig(baseServer, baseAssets, config) {
11
+ let baseViteOriginal = config._baseViteOriginal;
12
+ if (baseViteOriginal === '/__UNSET__')
13
+ baseViteOriginal = null;
14
+ (0, utils_js_1.assert)(baseViteOriginal === null || typeof baseViteOriginal == 'string');
15
+ return resolveBase(baseViteOriginal, baseServer, baseAssets);
16
+ }
17
+ function resolveBase(baseViteOriginal, baseServerUnresolved, baseAssetsUnresolved) {
18
+ {
19
+ const wrongBase = (val) => `should start with ${picocolors_1.default.cyan('/')}, ${picocolors_1.default.cyan('http://')}, or ${picocolors_1.default.cyan('https://')} (it's ${picocolors_1.default.cyan(val)} instead)`;
20
+ (0, utils_js_1.assertUsage)(baseViteOriginal === null || (0, utils_js_1.isBaseAssets)(baseViteOriginal), `vite.config.js#base ${wrongBase(baseViteOriginal)}`);
21
+ (0, utils_js_1.assertUsage)(baseAssetsUnresolved === null || (0, utils_js_1.isBaseAssets)(baseAssetsUnresolved), `Config ${picocolors_1.default.cyan('baseAssets')} ${wrongBase(baseAssetsUnresolved)}`);
22
+ (0, utils_js_1.assertUsage)(baseServerUnresolved === null || baseServerUnresolved.startsWith('/'), `Config ${picocolors_1.default.cyan('baseServer')} should start with a leading slash ${picocolors_1.default.cyan('/')} (it's ${picocolors_1.default.cyan(String(baseServerUnresolved))} instead)`);
23
+ }
24
+ if (baseViteOriginal) {
25
+ if (baseViteOriginal.startsWith('http')) {
26
+ baseAssetsUnresolved = baseAssetsUnresolved ?? baseViteOriginal;
27
+ }
28
+ else {
29
+ baseAssetsUnresolved = baseAssetsUnresolved ?? baseViteOriginal;
30
+ baseServerUnresolved = baseServerUnresolved ?? baseViteOriginal;
31
+ }
32
+ }
33
+ const baseServer = baseServerUnresolved ?? '/';
34
+ const baseAssets = baseAssetsUnresolved ?? '/';
35
+ (0, utils_js_1.assert)((0, utils_js_1.isBaseAssets)(baseAssets));
36
+ (0, utils_js_1.assert)((0, utils_js_1.isBaseServer)(baseServer));
37
+ return {
38
+ baseServer,
39
+ baseAssets
40
+ };
41
+ }