vike 0.4.142-commit-acfc159 → 0.4.143-commit-f03b42d

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 (147) hide show
  1. package/dist/cjs/node/plugin/index.js +2 -2
  2. package/dist/cjs/node/plugin/plugins/buildConfig.js +4 -5
  3. package/dist/cjs/node/plugin/plugins/commonConfig.js +1 -6
  4. package/dist/cjs/node/plugin/plugins/devConfig/determineOptimizeDeps.js +2 -2
  5. package/dist/cjs/node/plugin/plugins/importUserCode/generateEagerImport.js +19 -8
  6. package/dist/cjs/node/plugin/plugins/importUserCode/getVirtualFileImportUserCode.js +2 -2
  7. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.js +103 -95
  8. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVirtualFilePageConfigValuesAll.js +37 -27
  9. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVirtualFilePageConfigs.js +50 -80
  10. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/helpers.js +12 -3
  11. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/replaceImportStatements.js +25 -25
  12. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/transpileAndExecuteFile.js +19 -16
  13. package/dist/cjs/node/plugin/shared/{getConfigValueSource.js → getConfigValueSourcesRelevant.js} +1 -12
  14. package/dist/cjs/node/plugin/shared/loggerNotProd.js +1 -1
  15. package/dist/cjs/node/plugin/utils.js +1 -2
  16. package/dist/cjs/node/prerender/runPrerender.js +13 -16
  17. package/dist/cjs/node/runtime/html/stream.js +4 -1
  18. package/dist/cjs/node/runtime/renderPage/analyzePage.js +2 -2
  19. package/dist/cjs/node/runtime/renderPage/loadPageFilesServerSide.js +2 -2
  20. package/dist/cjs/node/shared/virtual-files/virtualFilePageConfigValuesAll.js +1 -1
  21. package/dist/cjs/shared/error-page.js +1 -1
  22. package/dist/cjs/shared/getPageFiles/assertPageConfigs.js +13 -13
  23. package/dist/cjs/shared/getPageFiles/getExports.js +3 -3
  24. package/dist/cjs/shared/getPageFiles/parseGlobResults.js +9 -43
  25. package/dist/cjs/shared/getPageFiles/parsePageConfigsSerialized.js +62 -0
  26. package/dist/cjs/shared/page-configs/assertExports.js +60 -0
  27. package/dist/cjs/shared/page-configs/loadConfigValues.js +18 -0
  28. package/dist/cjs/shared/page-configs/parseConfigValuesImported.js +50 -0
  29. package/dist/cjs/shared/page-configs/utils.js +1 -1
  30. package/dist/cjs/shared/route/loadPageRoutes.js +11 -13
  31. package/dist/cjs/shared/route/resolvePrecedence.js +32 -11
  32. package/dist/cjs/shared/route/resolveRedirects.js +1 -1
  33. package/dist/cjs/shared/route/resolveRouteFunction.js +1 -0
  34. package/dist/cjs/shared/route/resolveRouteString.js +99 -43
  35. package/dist/cjs/shared/utils.js +1 -1
  36. package/dist/cjs/types/defineConfig.js +7 -0
  37. package/dist/cjs/types/index.js +3 -0
  38. package/dist/cjs/utils/objectAssign.js +3 -1
  39. package/dist/cjs/utils/projectInfo.js +1 -1
  40. package/dist/cjs/utils/{resolve.js → requireResolve.js} +3 -3
  41. package/dist/esm/__internal/index.d.ts +3 -3
  42. package/dist/esm/client/client-routing-runtime/createPageContext.d.ts +2 -2
  43. package/dist/esm/client/client-routing-runtime/getPageContext.d.ts +2 -2
  44. package/dist/esm/client/client-routing-runtime/getPageId.d.ts +2 -2
  45. package/dist/esm/client/client-routing-runtime/prefetch.js +3 -1
  46. package/dist/esm/client/client-routing-runtime/useClientRouter.js +2 -2
  47. package/dist/esm/client/server-routing-runtime/getPageContext.d.ts +1 -1
  48. package/dist/esm/client/shared/executeOnRenderClientHook.d.ts +2 -2
  49. package/dist/esm/client/shared/loadPageFilesClientSide.d.ts +2 -2
  50. package/dist/esm/client/shared/loadPageFilesClientSide.js +2 -2
  51. package/dist/esm/client/shared/preparePageContextForUserConsumptionClientSide.d.ts +2 -2
  52. package/dist/esm/node/plugin/index.js +3 -2
  53. package/dist/esm/node/plugin/plugins/buildConfig.js +4 -5
  54. package/dist/esm/node/plugin/plugins/commonConfig.js +1 -6
  55. package/dist/esm/node/plugin/plugins/devConfig/determineOptimizeDeps.js +1 -1
  56. package/dist/esm/node/plugin/plugins/importUserCode/generateEagerImport.d.ts +13 -2
  57. package/dist/esm/node/plugin/plugins/importUserCode/generateEagerImport.js +19 -8
  58. package/dist/esm/node/plugin/plugins/importUserCode/getVirtualFileImportUserCode.js +2 -2
  59. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getFilePathToShowToUser.d.ts +8 -0
  60. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.d.ts +2 -2
  61. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.js +104 -96
  62. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVirtualFilePageConfigValuesAll.d.ts +5 -0
  63. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVirtualFilePageConfigValuesAll.js +35 -25
  64. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVirtualFilePageConfigs.d.ts +3 -0
  65. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVirtualFilePageConfigs.js +49 -79
  66. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/helpers.js +10 -1
  67. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/replaceImportStatements.d.ts +18 -6
  68. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/replaceImportStatements.js +25 -25
  69. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/transpileAndExecuteFile.d.ts +2 -2
  70. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/transpileAndExecuteFile.js +19 -16
  71. package/dist/esm/node/plugin/shared/{getConfigValueSource.d.ts → getConfigValueSourcesRelevant.d.ts} +0 -2
  72. package/dist/esm/node/plugin/shared/{getConfigValueSource.js → getConfigValueSourcesRelevant.js} +0 -11
  73. package/dist/esm/node/plugin/shared/loggerNotProd.js +2 -2
  74. package/dist/esm/node/plugin/utils.d.ts +1 -2
  75. package/dist/esm/node/plugin/utils.js +1 -2
  76. package/dist/esm/node/prerender/runPrerender.js +13 -16
  77. package/dist/esm/node/runtime/html/injectAssets.d.ts +2 -2
  78. package/dist/esm/node/runtime/html/serializePageContextClientSide.d.ts +2 -2
  79. package/dist/esm/node/runtime/html/stream.js +4 -1
  80. package/dist/esm/node/runtime/renderPage/analyzePage.d.ts +2 -2
  81. package/dist/esm/node/runtime/renderPage/analyzePage.js +2 -2
  82. package/dist/esm/node/runtime/renderPage/createHttpResponseObject.d.ts +2 -2
  83. package/dist/esm/node/runtime/renderPage/debugPageFiles.d.ts +2 -2
  84. package/dist/esm/node/runtime/renderPage/executeOnRenderHtmlHook.d.ts +2 -2
  85. package/dist/esm/node/runtime/renderPage/handleErrorWithoutErrorPage.d.ts +2 -2
  86. package/dist/esm/node/runtime/renderPage/loadPageFilesServerSide.d.ts +2 -2
  87. package/dist/esm/node/runtime/renderPage/loadPageFilesServerSide.js +2 -2
  88. package/dist/esm/node/runtime/renderPage/preparePageContextForUserConsumptionServerSide.d.ts +2 -2
  89. package/dist/esm/node/runtime/renderPage/renderPageAlreadyRouted.d.ts +13 -13
  90. package/dist/esm/node/shared/getClientEntryFilePath.d.ts +2 -2
  91. package/dist/esm/node/shared/virtual-files/virtualFilePageConfigValuesAll.js +1 -1
  92. package/dist/esm/shared/addIs404ToPageProps.d.ts +2 -2
  93. package/dist/esm/shared/error-page.d.ts +3 -3
  94. package/dist/esm/shared/error-page.js +1 -1
  95. package/dist/esm/shared/getPageFiles/analyzeClientSide.d.ts +2 -2
  96. package/dist/esm/shared/getPageFiles/assertPageConfigs.d.ts +5 -5
  97. package/dist/esm/shared/getPageFiles/assertPageConfigs.js +12 -12
  98. package/dist/esm/shared/getPageFiles/getExports.d.ts +2 -2
  99. package/dist/esm/shared/getPageFiles/getExports.js +1 -1
  100. package/dist/esm/shared/getPageFiles/parseGlobResults.d.ts +3 -3
  101. package/dist/esm/shared/getPageFiles/parseGlobResults.js +9 -43
  102. package/dist/esm/shared/getPageFiles/parsePageConfigsSerialized.d.ts +6 -0
  103. package/dist/esm/shared/getPageFiles/parsePageConfigsSerialized.js +59 -0
  104. package/dist/esm/shared/getPageFiles/setPageFiles.d.ts +3 -3
  105. package/dist/esm/shared/page-configs/Config.d.ts +200 -11
  106. package/dist/esm/shared/page-configs/PageConfig.d.ts +59 -39
  107. package/dist/esm/shared/page-configs/assertExports.d.ts +6 -0
  108. package/dist/esm/shared/page-configs/assertExports.js +54 -0
  109. package/dist/esm/shared/page-configs/findPageConfig.d.ts +2 -2
  110. package/dist/esm/shared/page-configs/loadConfigValues.d.ts +3 -0
  111. package/dist/esm/shared/page-configs/loadConfigValues.js +15 -0
  112. package/dist/esm/shared/page-configs/parseConfigValuesImported.d.ts +3 -0
  113. package/dist/esm/shared/page-configs/parseConfigValuesImported.js +44 -0
  114. package/dist/esm/shared/page-configs/utils.d.ts +3 -2
  115. package/dist/esm/shared/page-configs/utils.js +1 -1
  116. package/dist/esm/shared/route/executeGuardHook.d.ts +2 -2
  117. package/dist/esm/shared/route/index.d.ts +3 -3
  118. package/dist/esm/shared/route/loadPageRoutes.d.ts +2 -2
  119. package/dist/esm/shared/route/loadPageRoutes.js +11 -13
  120. package/dist/esm/shared/route/resolvePrecedence.js +33 -12
  121. package/dist/esm/shared/route/resolveRedirects.js +1 -1
  122. package/dist/esm/shared/route/resolveRouteFunction.js +1 -0
  123. package/dist/esm/shared/route/resolveRouteString.d.ts +21 -4
  124. package/dist/esm/shared/route/resolveRouteString.js +98 -42
  125. package/dist/esm/shared/types.d.ts +7 -6
  126. package/dist/esm/shared/utils.d.ts +1 -1
  127. package/dist/esm/shared/utils.js +1 -1
  128. package/dist/esm/types/defineConfig.d.ts +3 -0
  129. package/dist/esm/types/defineConfig.js +4 -0
  130. package/dist/esm/types/index.d.ts +2 -1
  131. package/dist/esm/types/index.js +1 -1
  132. package/dist/esm/utils/objectAssign.js +3 -1
  133. package/dist/esm/utils/projectInfo.d.ts +1 -1
  134. package/dist/esm/utils/projectInfo.js +1 -1
  135. package/dist/esm/utils/requireResolve.d.ts +2 -0
  136. package/dist/esm/utils/{resolve.js → requireResolve.js} +2 -2
  137. package/package.json +3 -3
  138. package/dist/cjs/shared/page-configs/loadPageCode.js +0 -63
  139. package/dist/cjs/utils/assertDefaultExport.js +0 -53
  140. package/dist/esm/shared/page-configs/loadPageCode.d.ts +0 -3
  141. package/dist/esm/shared/page-configs/loadPageCode.js +0 -57
  142. package/dist/esm/utils/assertDefaultExport.d.ts +0 -8
  143. package/dist/esm/utils/assertDefaultExport.js +0 -47
  144. package/dist/esm/utils/resolve.d.ts +0 -2
  145. /package/dist/cjs/shared/getPageFiles/{assertExports.js → assert_exports_old_design.js} +0 -0
  146. /package/dist/esm/shared/getPageFiles/{assertExports.d.ts → assert_exports_old_design.d.ts} +0 -0
  147. /package/dist/esm/shared/getPageFiles/{assertExports.js → assert_exports_old_design.js} +0 -0
@@ -1,57 +0,0 @@
1
- export { loadPageCode };
2
- import { assert, assertDefaultExportUnknown, assertUsage, objectAssign } from '../utils.js';
3
- import pc from '@brillout/picocolors';
4
- async function loadPageCode(pageConfig, isDev) {
5
- if (pageConfig.isLoaded &&
6
- // We don't need to cache in dev, since Vite already caches the virtual module
7
- !isDev) {
8
- return pageConfig;
9
- }
10
- const codeFiles = await pageConfig.loadConfigValuesAll();
11
- // TODO: remove?
12
- // pageConfig.configValuesOld = pageConfig.configValuesOld.filter((val) => !val.definedByCodeFile)
13
- const addConfigValue = (configName, value, filePath, exportName) => {
14
- /* TODO
15
- assert(!isAlreadyDefined(val.configName), val.configName) // Conflicts are resolved upstream
16
- */
17
- pageConfig.configValues[configName] = {
18
- value,
19
- definedAtInfo: {
20
- filePath,
21
- fileExportPath: [exportName]
22
- }
23
- /* TODO: remove?
24
- definedByCodeFile: true
25
- */
26
- };
27
- assertIsNotNull(value, configName, filePath);
28
- };
29
- codeFiles.forEach((codeFile) => {
30
- if (codeFile.isPlusFile) {
31
- const { importFileExports, importFilePath } = codeFile;
32
- if (codeFile.configName !== 'client') {
33
- assertDefaultExportUnknown(importFileExports, importFilePath);
34
- }
35
- Object.entries(importFileExports).forEach(([exportName, exportValue]) => {
36
- const isSideExport = exportName !== 'default'; // .md files may have "side-exports" such as `export { frontmatter }`
37
- const configName = isSideExport ? exportName : codeFile.configName;
38
- if (isSideExport && configName in pageConfig.configValues) {
39
- // We can't avoid side-export conflicts upstream. (Because we cannot know about side-exports upstream at build-time.)
40
- // Side-exports have the lowest priority.
41
- return;
42
- }
43
- addConfigValue(configName, exportValue, importFilePath, exportName);
44
- });
45
- }
46
- else {
47
- const { configName, importFilePath, importFileExportValue, importFileExportName } = codeFile;
48
- addConfigValue(configName, importFileExportValue, importFilePath, importFileExportName);
49
- }
50
- });
51
- objectAssign(pageConfig, { isLoaded: true });
52
- return pageConfig;
53
- }
54
- function assertIsNotNull(configValue, configName, importFilePath) {
55
- assert(!importFilePath.includes('+config.'));
56
- assertUsage(configValue !== null, `Set ${pc.cyan(configName)} to ${pc.cyan('null')} in a +config.h.js file instead of ${importFilePath}`);
57
- }
@@ -1,8 +0,0 @@
1
- export { assertDefaultExportUnknown };
2
- export { assertDefaultExportObject };
3
- declare function assertDefaultExportUnknown(fileExports: Record<string, unknown>, filePath: string): asserts fileExports is Record<string, unknown> & {
4
- default: unknown;
5
- };
6
- declare function assertDefaultExportObject(fileExports: Record<string, unknown>, filePath: string): asserts fileExports is {
7
- default: Record<string, unknown>;
8
- };
@@ -1,47 +0,0 @@
1
- export { assertDefaultExportUnknown };
2
- export { assertDefaultExportObject };
3
- import { assert, assertUsage, assertWarning } from './assert.js';
4
- import { isObject } from './isObject.js';
5
- import pc from '@brillout/picocolors';
6
- const IGNORE = [
7
- // vite-plugin-solid adds `export { $$registrations }`
8
- '$$registrations',
9
- // @vitejs/plugin-vue adds `export { _rerender_only }`
10
- '_rerender_only'
11
- ];
12
- // support `export { frontmatter }` in .mdx files
13
- const FILES_WITH_SIDE_EXPORTS = ['.md', '.mdx'];
14
- function assertDefaultExportUnknown(fileExports, filePath) {
15
- assertSingleDefaultExport(fileExports, filePath, true);
16
- }
17
- function assertDefaultExportObject(fileExports, filePath) {
18
- assertSingleDefaultExport(fileExports, filePath, false);
19
- const exportDefault = fileExports.default;
20
- assertUsage(isObject(exportDefault), `The ${pc.cyan('export default')} of ${filePath} should be an object (but it's ${pc.cyan(`typeof exportDefault === ${JSON.stringify(typeof exportDefault)}`)} instead)`);
21
- }
22
- function assertSingleDefaultExport(fileExports, filePath, defaultExportValueIsUnknown) {
23
- const exportsAll = Object.keys(fileExports);
24
- const exportsRelevant = exportsAll.filter((exportName) => !IGNORE.includes(exportName));
25
- const exportsInvalid = exportsRelevant.filter((e) => e !== 'default');
26
- const exportsHasDefault = exportsRelevant.includes('default');
27
- if (exportsInvalid.length === 0) {
28
- if (exportsHasDefault) {
29
- return;
30
- }
31
- else {
32
- assert(exportsRelevant.length === 0);
33
- assertUsage(false, `${filePath} doesn't export any value, but it should have a ${pc.cyan('export default')} instead`);
34
- }
35
- }
36
- else if (!FILES_WITH_SIDE_EXPORTS.some((ext) => filePath.endsWith(ext))) {
37
- if (defaultExportValueIsUnknown) {
38
- exportsInvalid.forEach((exportInvalid) => {
39
- assertWarning(exportsInvalid.length === 0, `${filePath} should only have a default export: move ${pc.cyan(`export { ${exportInvalid} }`)} to +config.h.js or its own +${exportsInvalid}.js`, { onlyOnce: true });
40
- });
41
- }
42
- else {
43
- const exportsInvalidStr = exportsInvalid.join(', ');
44
- assertWarning(exportsInvalid.length === 0, `${filePath} replace ${pc.cyan(`export { ${exportsInvalidStr} }`)} with ${pc.cyan(`export default { ${exportsInvalidStr} }`)}`, { onlyOnce: true });
45
- }
46
- }
47
- }
@@ -1,2 +0,0 @@
1
- export { resolve };
2
- declare function resolve(importPath: string, cwd: string): string | null;