vike 0.4.223 → 0.4.224-commit-f0d0f8a

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 (173) hide show
  1. package/dist/cjs/node/api/build.js +4 -37
  2. package/dist/cjs/node/api/prepareViteApiCall.js +9 -3
  3. package/dist/cjs/node/plugin/index.js +8 -20
  4. package/dist/cjs/node/plugin/plugins/baseUrls.js +3 -1
  5. package/dist/cjs/node/plugin/plugins/{buildConfig/fixServerAssets.js → build/handleAssetsManifest.js} +130 -52
  6. package/dist/cjs/node/plugin/plugins/build/pluginAutoFullBuild.js +145 -0
  7. package/dist/cjs/node/plugin/plugins/build/pluginBuildApp.js +52 -0
  8. package/dist/cjs/node/plugin/plugins/{buildConfig.js → build/pluginBuildConfig.js} +22 -84
  9. package/dist/cjs/node/plugin/plugins/{buildEntry/index.js → build/pluginBuildEntry.js} +9 -9
  10. package/dist/cjs/node/plugin/plugins/{distFileNames.js → build/pluginDistFileNames.js} +7 -7
  11. package/dist/cjs/node/plugin/plugins/{packageJsonFile.js → build/pluginDistPackageJsonFile.js} +6 -6
  12. package/dist/cjs/node/plugin/plugins/{suppressRollupWarning.js → build/pluginSuppressRollupWarning.js} +3 -3
  13. package/dist/cjs/node/plugin/plugins/build.js +21 -0
  14. package/dist/cjs/node/plugin/plugins/commonConfig.js +22 -4
  15. package/dist/cjs/node/plugin/plugins/devConfig/determineFsAllowList.js +1 -1
  16. package/dist/cjs/node/plugin/plugins/devConfig/determineOptimizeDeps.js +5 -5
  17. package/dist/cjs/node/plugin/plugins/devConfig/index.js +1 -1
  18. package/dist/cjs/node/plugin/plugins/envVars.js +2 -2
  19. package/dist/cjs/node/plugin/plugins/extractAssetsPlugin.js +9 -9
  20. package/dist/cjs/node/plugin/plugins/extractExportNamesPlugin.js +2 -2
  21. package/dist/cjs/node/plugin/plugins/fileEnv.js +5 -2
  22. package/dist/cjs/node/plugin/plugins/importUserCode/getVirtualFileImportUserCode.js +3 -3
  23. package/dist/cjs/node/plugin/plugins/importUserCode/index.js +2 -5
  24. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/assertExtensions.js +5 -5
  25. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/configDefinitionsBuiltIn.js +7 -2
  26. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/crawlPlusFiles/ignorePatternsBuiltIn.js +16 -0
  27. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/crawlPlusFiles.js +50 -64
  28. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/filesystemRouting.js +2 -1
  29. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/getPlusFilesAll.js +3 -3
  30. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/transpileAndExecuteFile.js +19 -7
  31. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.js +277 -212
  32. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/virtual-files/getVirtualFilePageConfigValuesAll.js +4 -4
  33. package/dist/cjs/node/plugin/plugins/previewConfig.js +12 -7
  34. package/dist/cjs/node/plugin/shared/addSsrMiddleware.js +5 -1
  35. package/dist/cjs/node/plugin/shared/findPageFiles.js +3 -3
  36. package/dist/cjs/node/plugin/shared/getOutDirs.js +8 -7
  37. package/dist/cjs/node/plugin/shared/isViteServerBuild.js +47 -0
  38. package/dist/cjs/node/plugin/shared/resolveClientEntriesDev.js +1 -1
  39. package/dist/cjs/node/plugin/utils.js +1 -0
  40. package/dist/cjs/node/prerender/context.js +3 -8
  41. package/dist/cjs/node/prerender/resolvePrerenderConfig.js +30 -21
  42. package/dist/cjs/node/prerender/runPrerender.js +28 -30
  43. package/dist/cjs/node/prerender/utils.js +1 -0
  44. package/dist/cjs/node/runtime/html/stream.js +7 -0
  45. package/dist/cjs/node/runtime/renderPage/logErrorHint.js +13 -2
  46. package/dist/cjs/shared/getPageContextUrlComputed.js +1 -1
  47. package/dist/cjs/shared/page-configs/getConfigValueBuildTime.js +2 -5
  48. package/dist/cjs/shared/page-configs/serialize/parsePageConfigs.js +3 -1
  49. package/dist/cjs/shared/page-configs/serialize/serializeConfigValues.js +20 -9
  50. package/dist/cjs/utils/PROJECT_VERSION.js +1 -1
  51. package/dist/cjs/utils/debug.js +2 -1
  52. package/dist/cjs/utils/findFile.js +1 -1
  53. package/dist/cjs/utils/findPackageJson.js +1 -1
  54. package/dist/cjs/utils/isFilePathAbsoluteFilesystem.js +10 -4
  55. package/dist/cjs/utils/path.js +1 -0
  56. package/dist/cjs/utils/requireResolve.js +11 -4
  57. package/dist/cjs/utils/sorter.js +0 -3
  58. package/dist/esm/client/client-routing-runtime/index.d.ts +1 -0
  59. package/dist/esm/client/client-routing-runtime/index.js +1 -0
  60. package/dist/esm/client/client-routing-runtime/renderPageClientSide.d.ts +8 -0
  61. package/dist/esm/client/client-routing-runtime/renderPageClientSide.js +10 -1
  62. package/dist/esm/node/api/build.js +4 -4
  63. package/dist/esm/node/api/prepareViteApiCall.js +9 -3
  64. package/dist/esm/node/plugin/index.d.ts +2 -1
  65. package/dist/esm/node/plugin/index.js +4 -17
  66. package/dist/esm/node/plugin/plugins/baseUrls.js +3 -1
  67. package/dist/esm/node/plugin/plugins/build/handleAssetsManifest.d.ts +18 -0
  68. package/dist/esm/node/plugin/plugins/{buildConfig/fixServerAssets.js → build/handleAssetsManifest.js} +131 -53
  69. package/dist/esm/node/plugin/plugins/build/pluginAutoFullBuild.d.ts +5 -0
  70. package/dist/esm/node/plugin/plugins/build/pluginAutoFullBuild.js +140 -0
  71. package/dist/esm/node/plugin/plugins/build/pluginBuildApp.d.ts +3 -0
  72. package/dist/esm/node/plugin/plugins/build/pluginBuildApp.js +50 -0
  73. package/dist/esm/node/plugin/plugins/{buildConfig.d.ts → build/pluginBuildConfig.d.ts} +3 -3
  74. package/dist/esm/node/plugin/plugins/{buildConfig.js → build/pluginBuildConfig.js} +22 -81
  75. package/dist/esm/node/plugin/plugins/build/pluginBuildEntry.d.ts +7 -0
  76. package/dist/esm/node/plugin/plugins/{buildEntry/index.js → build/pluginBuildEntry.js} +9 -9
  77. package/dist/esm/node/plugin/plugins/build/pluginDistFileNames.d.ts +3 -0
  78. package/dist/esm/node/plugin/plugins/{distFileNames.js → build/pluginDistFileNames.js} +7 -7
  79. package/dist/esm/node/plugin/plugins/build/pluginDistPackageJsonFile.d.ts +3 -0
  80. package/dist/esm/node/plugin/plugins/{packageJsonFile.js → build/pluginDistPackageJsonFile.js} +7 -6
  81. package/dist/esm/node/plugin/plugins/build/pluginSuppressRollupWarning.d.ts +3 -0
  82. package/dist/esm/node/plugin/plugins/{suppressRollupWarning.js → build/pluginSuppressRollupWarning.js} +3 -3
  83. package/dist/esm/node/plugin/plugins/build.d.ts +3 -0
  84. package/dist/esm/node/plugin/plugins/build.js +19 -0
  85. package/dist/esm/node/plugin/plugins/commonConfig.d.ts +16 -6
  86. package/dist/esm/node/plugin/plugins/commonConfig.js +22 -4
  87. package/dist/esm/node/plugin/plugins/devConfig/determineFsAllowList.js +1 -1
  88. package/dist/esm/node/plugin/plugins/devConfig/determineOptimizeDeps.js +5 -5
  89. package/dist/esm/node/plugin/plugins/devConfig/index.js +1 -1
  90. package/dist/esm/node/plugin/plugins/envVars.js +2 -2
  91. package/dist/esm/node/plugin/plugins/extractAssetsPlugin.js +10 -10
  92. package/dist/esm/node/plugin/plugins/extractExportNamesPlugin.js +2 -2
  93. package/dist/esm/node/plugin/plugins/fileEnv.js +5 -2
  94. package/dist/esm/node/plugin/plugins/importUserCode/getVirtualFileImportUserCode.js +3 -3
  95. package/dist/esm/node/plugin/plugins/importUserCode/index.js +2 -5
  96. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/assertExtensions.js +5 -5
  97. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/configDefinitionsBuiltIn.js +7 -2
  98. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/crawlPlusFiles/ignorePatternsBuiltIn.d.ts +1 -0
  99. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/crawlPlusFiles/ignorePatternsBuiltIn.js +13 -0
  100. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/crawlPlusFiles.d.ts +1 -1
  101. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/crawlPlusFiles.js +50 -64
  102. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/filesystemRouting.js +2 -1
  103. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/getPlusFilesAll.js +3 -3
  104. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/transpileAndExecuteFile.d.ts +0 -1
  105. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/transpileAndExecuteFile.js +20 -8
  106. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.d.ts +8 -6
  107. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.js +279 -214
  108. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/virtual-files/getVirtualFilePageConfigValuesAll.js +4 -4
  109. package/dist/esm/node/plugin/plugins/previewConfig.js +12 -7
  110. package/dist/esm/node/plugin/shared/addSsrMiddleware.d.ts +1 -1
  111. package/dist/esm/node/plugin/shared/addSsrMiddleware.js +5 -1
  112. package/dist/esm/node/plugin/shared/findPageFiles.js +3 -3
  113. package/dist/esm/node/plugin/shared/getHttpRequestAsyncStore.js +1 -3
  114. package/dist/esm/node/plugin/shared/getOutDirs.d.ts +2 -2
  115. package/dist/esm/node/plugin/shared/getOutDirs.js +8 -7
  116. package/dist/esm/node/plugin/shared/isViteServerBuild.d.ts +15 -0
  117. package/dist/esm/node/plugin/shared/isViteServerBuild.js +45 -0
  118. package/dist/esm/node/plugin/shared/resolveClientEntriesDev.js +1 -1
  119. package/dist/esm/node/plugin/utils.d.ts +1 -0
  120. package/dist/esm/node/plugin/utils.js +1 -0
  121. package/dist/esm/node/prerender/context.d.ts +0 -2
  122. package/dist/esm/node/prerender/context.js +4 -9
  123. package/dist/esm/node/prerender/resolvePrerenderConfig.d.ts +11 -6
  124. package/dist/esm/node/prerender/resolvePrerenderConfig.js +31 -22
  125. package/dist/esm/node/prerender/runPrerender.d.ts +7 -25
  126. package/dist/esm/node/prerender/runPrerender.js +29 -31
  127. package/dist/esm/node/prerender/utils.d.ts +1 -0
  128. package/dist/esm/node/prerender/utils.js +1 -0
  129. package/dist/esm/node/runtime/globalContext.d.ts +3 -2
  130. package/dist/esm/node/runtime/html/stream.js +7 -0
  131. package/dist/esm/node/runtime/renderPage/logErrorHint.js +13 -2
  132. package/dist/esm/node/runtime/renderPage/renderPageAlreadyRouted.d.ts +165 -5
  133. package/dist/esm/shared/getPageContextUrlComputed.js +1 -1
  134. package/dist/esm/shared/page-configs/Config.d.ts +12 -2
  135. package/dist/esm/shared/page-configs/PageConfig.d.ts +5 -5
  136. package/dist/esm/shared/page-configs/getConfigValueBuildTime.js +2 -5
  137. package/dist/esm/shared/page-configs/serialize/parsePageConfigs.js +3 -1
  138. package/dist/esm/shared/page-configs/serialize/serializeConfigValues.d.ts +2 -0
  139. package/dist/esm/shared/page-configs/serialize/serializeConfigValues.js +20 -9
  140. package/dist/esm/types/index.d.ts +2 -0
  141. package/dist/esm/utils/PROJECT_VERSION.d.ts +1 -1
  142. package/dist/esm/utils/PROJECT_VERSION.js +1 -1
  143. package/dist/esm/utils/debug.js +2 -1
  144. package/dist/esm/utils/findFile.js +1 -1
  145. package/dist/esm/utils/findPackageJson.js +1 -1
  146. package/dist/esm/utils/isFilePathAbsoluteFilesystem.js +8 -2
  147. package/dist/esm/utils/path.js +1 -0
  148. package/dist/esm/utils/projectInfo.d.ts +1 -1
  149. package/dist/esm/utils/requireResolve.js +11 -4
  150. package/dist/esm/utils/sorter.d.ts +18 -5
  151. package/dist/esm/utils/sorter.js +0 -3
  152. package/package.json +9 -16
  153. package/dist/cjs/node/plugin/plugins/autoFullBuild.js +0 -119
  154. package/dist/cjs/node/plugin/plugins/buildApp.js +0 -76
  155. package/dist/cjs/node/plugin/plugins/removeRequireHookPlugin.js +0 -17
  156. package/dist/cjs/node/plugin/shared/getFullBuildInlineConfig.js +0 -20
  157. package/dist/cjs/node/plugin/shared/viteIsSSR.js +0 -31
  158. package/dist/esm/node/plugin/plugins/autoFullBuild.d.ts +0 -3
  159. package/dist/esm/node/plugin/plugins/autoFullBuild.js +0 -114
  160. package/dist/esm/node/plugin/plugins/buildApp.d.ts +0 -3
  161. package/dist/esm/node/plugin/plugins/buildApp.js +0 -74
  162. package/dist/esm/node/plugin/plugins/buildConfig/fixServerAssets.d.ts +0 -20
  163. package/dist/esm/node/plugin/plugins/buildEntry/index.d.ts +0 -8
  164. package/dist/esm/node/plugin/plugins/distFileNames.d.ts +0 -3
  165. package/dist/esm/node/plugin/plugins/packageJsonFile.d.ts +0 -3
  166. package/dist/esm/node/plugin/plugins/removeRequireHookPlugin.d.ts +0 -3
  167. package/dist/esm/node/plugin/plugins/removeRequireHookPlugin.js +0 -15
  168. package/dist/esm/node/plugin/plugins/suppressRollupWarning.d.ts +0 -3
  169. package/dist/esm/node/plugin/shared/getFullBuildInlineConfig.d.ts +0 -2
  170. package/dist/esm/node/plugin/shared/getFullBuildInlineConfig.js +0 -17
  171. package/dist/esm/node/plugin/shared/viteIsSSR.d.ts +0 -11
  172. package/dist/esm/node/plugin/shared/viteIsSSR.js +0 -29
  173. package/dist-cjs-fixup.mjs +0 -41
@@ -1,74 +0,0 @@
1
- import { runPrerender_forceExit, runPrerenderFromAutoRun } from '../../prerender/runPrerender.js';
2
- export { buildApp };
3
- import { isPrerenderAutoRunEnabled } from '../../prerender/context.js';
4
- import { resolveOutDir } from '../shared/getOutDirs.js';
5
- import { assert } from '../utils.js';
6
- import { getVikeConfig } from './importUserCode/v1-design/getVikeConfig.js';
7
- import { getFullBuildInlineConfig } from '../shared/getFullBuildInlineConfig.js';
8
- function buildApp() {
9
- let config;
10
- // `builder.buildApp` can be overriden by another plugin e.g vike-vercel https://github.com/vikejs/vike/pull/2184#issuecomment-2659425195
11
- // In that case, we should'nt `forceExit`.
12
- let forceExit = false;
13
- return [
14
- {
15
- name: 'vike:buildApp',
16
- apply: 'build',
17
- config(config) {
18
- if (!config.vike.config.viteEnvironmentAPI)
19
- return;
20
- return {
21
- builder: {
22
- buildApp: async (builder) => {
23
- assert(builder.environments.client);
24
- assert(builder.environments.ssr);
25
- await builder.build(builder.environments.client);
26
- await builder.build(builder.environments.ssr);
27
- if (forceExit) {
28
- runPrerender_forceExit();
29
- assert(false);
30
- }
31
- }
32
- },
33
- environments: {
34
- ssr: {
35
- consumer: 'server',
36
- build: {
37
- outDir: resolveOutDir(config, true),
38
- ssr: true
39
- }
40
- },
41
- client: {
42
- consumer: 'client',
43
- build: {
44
- copyPublicDir: true,
45
- ssr: false
46
- }
47
- }
48
- }
49
- };
50
- }
51
- },
52
- {
53
- name: 'vike:buildApp:prerender',
54
- apply: 'build',
55
- enforce: 'pre',
56
- applyToEnvironment(env) {
57
- return env.name === 'ssr';
58
- },
59
- configResolved(_config) {
60
- config = _config;
61
- },
62
- async writeBundle() {
63
- if (!config.vike.config.viteEnvironmentAPI)
64
- return;
65
- const vikeConfig = await getVikeConfig(config);
66
- if (!isPrerenderAutoRunEnabled(vikeConfig))
67
- return;
68
- const configInline = getFullBuildInlineConfig(config);
69
- const res = await runPrerenderFromAutoRun(configInline, config);
70
- forceExit = res.forceExit;
71
- }
72
- }
73
- ];
74
- }
@@ -1,20 +0,0 @@
1
- export { fixServerAssets };
2
- export { fixServerAssets_isEnabled };
3
- export { fixServerAssets_assertCssCodeSplit };
4
- export { fixServerAssets_assertCssTarget };
5
- import { ViteManifest } from '../../../shared/ViteManifest.js';
6
- import { ResolvedConfig } from 'vite';
7
- /**
8
- * true => use workaround config.build.ssrEmitAssets
9
- * false => use workaround extractAssets plugin
10
- *
11
- * Only used by V1 design.
12
- */
13
- declare function fixServerAssets_isEnabled(): boolean;
14
- /** https://github.com/vikejs/vike/issues/1339 */
15
- declare function fixServerAssets(config: ResolvedConfig): Promise<{
16
- clientManifestMod: ViteManifest;
17
- serverManifestMod: ViteManifest;
18
- }>;
19
- declare function fixServerAssets_assertCssCodeSplit(config: ResolvedConfig): void;
20
- declare function fixServerAssets_assertCssTarget(config: ResolvedConfig): Promise<void>;
@@ -1,8 +0,0 @@
1
- export { buildEntry };
2
- export { set_ASSETS_MANIFEST };
3
- import type { Plugin, Rollup } from 'vite';
4
- type Bundle = Rollup.OutputBundle;
5
- type Options = Rollup.NormalizedOutputOptions;
6
- declare function buildEntry(): Plugin[];
7
- /** Set the value of the ASSETS_MANIFEST constant inside dist/server/entry.js (or dist/server/index.js) */
8
- declare function set_ASSETS_MANIFEST(options: Options, bundle: Bundle): Promise<void>;
@@ -1,3 +0,0 @@
1
- export { distFileNames };
2
- import type { Plugin } from 'vite';
3
- declare function distFileNames(): Plugin;
@@ -1,3 +0,0 @@
1
- export { packageJsonFile };
2
- import type { Plugin } from 'vite';
3
- declare function packageJsonFile(): Plugin;
@@ -1,3 +0,0 @@
1
- import type { Plugin } from 'vite';
2
- export { removeRequireHookPlugin };
3
- declare function removeRequireHookPlugin(): Plugin;
@@ -1,15 +0,0 @@
1
- // We remove: https://github.com/vitejs/vite/blob/dd79858ab70d2591e1239ddb19e1ce38d9913b4c/packages/vite/src/node/plugins/ssrRequireHook.ts
2
- // Because it injects `require('module')` into the build which chokes bundlers, such as Cloudflare Workers's webpack-based bundler.
3
- // The minimal added value of deduping React is not worth the trouble; we simply remove Vite's deduping functionality for production.
4
- export { removeRequireHookPlugin };
5
- function removeRequireHookPlugin() {
6
- return {
7
- name: 'vike:removeRequireHookPlugin',
8
- apply: 'build',
9
- configResolved(config) {
10
- const pluginsMod = config.plugins.filter((plugin) => plugin.name !== 'vite:ssr-require-hook');
11
- // @ts-ignore
12
- config.plugins = pluginsMod;
13
- }
14
- };
15
- }
@@ -1,3 +0,0 @@
1
- export { suppressRollupWarning };
2
- import type { Plugin } from 'vite';
3
- declare function suppressRollupWarning(): Plugin;
@@ -1,2 +0,0 @@
1
- import type { InlineConfig, ResolvedConfig } from 'vite';
2
- export declare function getFullBuildInlineConfig(config: ResolvedConfig): InlineConfig;
@@ -1,17 +0,0 @@
1
- import { getViteConfigFromCli, isViteCliCall } from './isViteCliCall.js';
2
- export function getFullBuildInlineConfig(config) {
3
- const configFromCli = !isViteCliCall() ? null : getViteConfigFromCli();
4
- if (config._viteConfigEnhanced) {
5
- return config._viteConfigEnhanced;
6
- }
7
- else {
8
- return {
9
- ...configFromCli,
10
- configFile: configFromCli?.configFile || config.configFile,
11
- root: config.root,
12
- build: {
13
- ...configFromCli?.build
14
- }
15
- };
16
- }
17
- }
@@ -1,11 +0,0 @@
1
- export { viteIsSSR };
2
- export { viteIsSSR_options };
3
- export { viteIsSSR_safe };
4
- import type { ResolvedConfig, UserConfig } from 'vite';
5
- declare function viteIsSSR(config: ResolvedConfig | UserConfig): boolean;
6
- declare function viteIsSSR_options(options: {
7
- ssr?: boolean;
8
- } | undefined): boolean;
9
- declare function viteIsSSR_safe(config: ResolvedConfig, options: {
10
- ssr?: boolean;
11
- } | undefined): boolean;
@@ -1,29 +0,0 @@
1
- export { viteIsSSR };
2
- export { viteIsSSR_options };
3
- export { viteIsSSR_safe };
4
- import { assert } from '../../../utils/assert.js';
5
- function viteIsSSR(config) {
6
- return !!config?.build?.ssr;
7
- }
8
- function viteIsSSR_options(options) {
9
- return !!options?.ssr;
10
- }
11
- // Vite is quite messy about setting `ssr: boolean`, thus we use an extra safe implemention for security purposes.
12
- // It's used for .client.js and .server.js guarantee thus we use agressive assert() calls for added safety.
13
- function viteIsSSR_safe(config, options) {
14
- if (config.command === 'build') {
15
- assert(typeof config.build.ssr === 'boolean');
16
- const val = config.build.ssr;
17
- if (options?.ssr !== undefined)
18
- assert(val === options.ssr);
19
- return val;
20
- }
21
- else {
22
- assert(typeof options?.ssr === 'boolean');
23
- const val = options.ssr;
24
- /* This assert() fails (which is very unexpected).
25
- if (typeof config.build.ssr === 'boolean') assert(val === config.build.ssr)
26
- //*/
27
- return val;
28
- }
29
- }
@@ -1,41 +0,0 @@
1
- import fs from 'fs/promises'
2
- import path from 'path'
3
- const distCjs = 'dist/cjs'
4
-
5
- main()
6
-
7
- async function main() {
8
- await generatePackageJson()
9
- await shimImportMetaUrl()
10
- }
11
-
12
- async function generatePackageJson() {
13
- await fs.writeFile(distCjs + '/package.json', '{ "type": "commonjs" }\n', 'utf8')
14
- console.log(`✅ ${distCjs}/package.json generated`)
15
- }
16
-
17
- async function shimImportMetaUrl() {
18
- const files = await getFiles(distCjs)
19
- files.forEach(replaceImportMetaWithFilename)
20
- console.log(`✅ ${distCjs}/ shimmed import.meta.url`)
21
- }
22
-
23
- async function replaceImportMetaWithFilename(filePath) {
24
- const fileContent = await fs.readFile(filePath, 'utf8')
25
- const modifiedContent = fileContent.replaceAll('import.meta.url', '`file://${__filename}`')
26
- await fs.writeFile(filePath, modifiedContent, 'utf8')
27
- }
28
-
29
- async function getFiles(directoryPath) {
30
- const files = []
31
- for (const file of await fs.readdir(directoryPath)) {
32
- const filePath = path.join(directoryPath, file)
33
- const stats = await fs.stat(filePath)
34
- if (stats.isDirectory()) {
35
- files.push(...(await getFiles(filePath)))
36
- } else if (stats.isFile() && filePath.endsWith('.js')) {
37
- files.push(filePath)
38
- }
39
- }
40
- return files
41
- }