vike 0.4.220-commit-5c7810f → 0.4.220-commit-af5c91f

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 (120) hide show
  1. package/dist/cjs/node/api/utils.js +1 -1
  2. package/dist/cjs/node/plugin/index.js +1 -1
  3. package/dist/cjs/node/plugin/onLoad.js +1 -1
  4. package/dist/cjs/node/plugin/plugins/buildConfig/fixServerAssets.js +5 -3
  5. package/dist/cjs/node/plugin/plugins/buildConfig.js +7 -5
  6. package/dist/cjs/node/plugin/plugins/buildEntry/index.js +2 -1
  7. package/dist/cjs/node/plugin/plugins/commonConfig.js +1 -2
  8. package/dist/cjs/node/plugin/plugins/extractAssetsPlugin.js +3 -2
  9. package/dist/cjs/node/plugin/plugins/extractExportNamesPlugin.js +2 -1
  10. package/dist/cjs/node/plugin/plugins/importUserCode/getVirtualFileImportUserCode.js +10 -8
  11. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/loadFileAtConfigTime.js +32 -41
  12. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/resolvePointerImport.js +9 -64
  13. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/transpileAndExecuteFile.js +11 -5
  14. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.js +281 -313
  15. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVirtualFilePageConfigValuesAll.js +2 -1
  16. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVirtualFilePageConfigs.js +7 -6
  17. package/dist/cjs/node/plugin/plugins/packageJsonFile.js +2 -2
  18. package/dist/cjs/node/plugin/plugins/previewConfig.js +4 -3
  19. package/dist/cjs/node/plugin/plugins/setGlobalContext.js +2 -1
  20. package/dist/cjs/node/plugin/shared/findPageFiles.js +2 -1
  21. package/dist/cjs/node/plugin/{getOutDirs.js → shared/getOutDirs.js} +24 -27
  22. package/dist/cjs/node/plugin/{resolveClientEntriesDev.js → shared/resolveClientEntriesDev.js} +5 -8
  23. package/dist/cjs/{utils → node/plugin/shared}/viteIsSSR.js +2 -2
  24. package/dist/cjs/node/plugin/utils.js +0 -1
  25. package/dist/cjs/node/prerender/context.js +8 -3
  26. package/dist/cjs/node/prerender/resolvePrerenderConfig.js +26 -5
  27. package/dist/cjs/node/prerender/runPrerender.js +6 -11
  28. package/dist/cjs/node/prerender/utils.js +1 -2
  29. package/dist/cjs/node/runtime/html/injectAssets/getHtmlTags.js +9 -4
  30. package/dist/cjs/node/runtime/renderPage/getEarlyHints.js +2 -27
  31. package/dist/cjs/node/runtime/renderPage/isFontFallback.js +29 -0
  32. package/dist/cjs/node/runtime/utils.js +1 -3
  33. package/dist/cjs/shared/getPageFiles/fileTypes.js +0 -1
  34. package/dist/cjs/shared/getPageFiles/getAllPageIdFiles.js +0 -3
  35. package/dist/cjs/shared/getPageFiles/getPageFileObject.js +0 -5
  36. package/dist/cjs/shared/page-configs/serialize/serializeConfigValues.js +69 -18
  37. package/dist/cjs/shared/utils.js +0 -1
  38. package/dist/cjs/utils/PROJECT_VERSION.js +1 -1
  39. package/dist/cjs/utils/findFile.js +3 -3
  40. package/dist/cjs/utils/isDev.js +2 -5
  41. package/dist/cjs/utils/isFilePathAbsoluteFilesystem.js +2 -2
  42. package/dist/cjs/utils/path.js +48 -0
  43. package/dist/cjs/utils/requireResolve.js +3 -3
  44. package/dist/esm/node/api/utils.d.ts +1 -1
  45. package/dist/esm/node/api/utils.js +1 -1
  46. package/dist/esm/node/plugin/index.js +1 -1
  47. package/dist/esm/node/plugin/onLoad.js +1 -1
  48. package/dist/esm/node/plugin/plugins/buildConfig/fixServerAssets.js +3 -1
  49. package/dist/esm/node/plugin/plugins/buildConfig.js +3 -1
  50. package/dist/esm/node/plugin/plugins/buildEntry/index.js +2 -1
  51. package/dist/esm/node/plugin/plugins/commonConfig.js +2 -3
  52. package/dist/esm/node/plugin/plugins/extractAssetsPlugin.js +2 -1
  53. package/dist/esm/node/plugin/plugins/extractExportNamesPlugin.js +2 -1
  54. package/dist/esm/node/plugin/plugins/importUserCode/getVirtualFileImportUserCode.js +9 -7
  55. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/loadFileAtConfigTime.d.ts +14 -11
  56. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/loadFileAtConfigTime.js +35 -44
  57. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/resolvePointerImport.d.ts +8 -18
  58. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/resolvePointerImport.js +10 -65
  59. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/transpileAndExecuteFile.d.ts +6 -2
  60. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/transpileAndExecuteFile.js +12 -6
  61. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.d.ts +8 -6
  62. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.js +284 -316
  63. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVirtualFilePageConfigValuesAll.js +2 -1
  64. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVirtualFilePageConfigs.js +7 -6
  65. package/dist/esm/node/plugin/plugins/packageJsonFile.js +1 -1
  66. package/dist/esm/node/plugin/plugins/previewConfig.js +2 -1
  67. package/dist/esm/node/plugin/plugins/setGlobalContext.js +2 -1
  68. package/dist/esm/node/plugin/shared/findPageFiles.js +2 -1
  69. package/dist/esm/node/plugin/{getOutDirs.js → shared/getOutDirs.js} +2 -5
  70. package/dist/esm/node/plugin/{resolveClientEntriesDev.js → shared/resolveClientEntriesDev.js} +5 -8
  71. package/dist/esm/{utils → node/plugin/shared}/viteIsSSR.js +2 -2
  72. package/dist/esm/node/plugin/utils.d.ts +0 -1
  73. package/dist/esm/node/plugin/utils.js +0 -1
  74. package/dist/esm/node/prerender/context.d.ts +2 -0
  75. package/dist/esm/node/prerender/context.js +8 -3
  76. package/dist/esm/node/prerender/resolvePrerenderConfig.d.ts +8 -1
  77. package/dist/esm/node/prerender/resolvePrerenderConfig.js +26 -5
  78. package/dist/esm/node/prerender/runPrerender.js +7 -12
  79. package/dist/esm/node/prerender/utils.d.ts +1 -2
  80. package/dist/esm/node/prerender/utils.js +1 -2
  81. package/dist/esm/node/runtime/html/injectAssets/getHtmlTags.js +9 -4
  82. package/dist/esm/node/runtime/renderPage/getEarlyHints.js +1 -26
  83. package/dist/esm/node/runtime/renderPage/getPageAssets.d.ts +1 -1
  84. package/dist/esm/node/runtime/renderPage/isFontFallback.d.ts +3 -0
  85. package/dist/esm/node/runtime/renderPage/isFontFallback.js +27 -0
  86. package/dist/esm/node/runtime/utils.d.ts +1 -3
  87. package/dist/esm/node/runtime/utils.js +1 -3
  88. package/dist/esm/shared/getPageFiles/fileTypes.js +1 -2
  89. package/dist/esm/shared/getPageFiles/getAllPageIdFiles.js +0 -3
  90. package/dist/esm/shared/getPageFiles/getPageFileObject.js +0 -5
  91. package/dist/esm/shared/page-configs/PageConfig.d.ts +0 -1
  92. package/dist/esm/shared/page-configs/serialize/serializeConfigValues.d.ts +7 -1
  93. package/dist/esm/shared/page-configs/serialize/serializeConfigValues.js +70 -19
  94. package/dist/esm/shared/utils.d.ts +0 -1
  95. package/dist/esm/shared/utils.js +0 -1
  96. package/dist/esm/utils/PROJECT_VERSION.d.ts +1 -1
  97. package/dist/esm/utils/PROJECT_VERSION.js +1 -1
  98. package/dist/esm/utils/findFile.js +1 -1
  99. package/dist/esm/utils/isDev.js +3 -6
  100. package/dist/esm/utils/isFilePathAbsoluteFilesystem.js +1 -1
  101. package/dist/esm/utils/path.d.ts +14 -0
  102. package/dist/esm/utils/path.js +46 -0
  103. package/dist/esm/utils/projectInfo.d.ts +1 -1
  104. package/dist/esm/utils/requireResolve.js +1 -1
  105. package/package.json +1 -1
  106. package/dist/cjs/node/plugin/plugins/importUserCode/addImportStatement.js +0 -29
  107. package/dist/cjs/shared/assertPageFilePath.js +0 -11
  108. package/dist/cjs/utils/path-shim.js +0 -19
  109. package/dist/cjs/utils/toPosixPath.js +0 -18
  110. package/dist/esm/node/plugin/plugins/importUserCode/addImportStatement.d.ts +0 -14
  111. package/dist/esm/node/plugin/plugins/importUserCode/addImportStatement.js +0 -27
  112. package/dist/esm/shared/assertPageFilePath.d.ts +0 -2
  113. package/dist/esm/shared/assertPageFilePath.js +0 -9
  114. package/dist/esm/utils/path-shim.d.ts +0 -2
  115. package/dist/esm/utils/path-shim.js +0 -17
  116. package/dist/esm/utils/toPosixPath.d.ts +0 -4
  117. package/dist/esm/utils/toPosixPath.js +0 -16
  118. /package/dist/esm/node/plugin/{getOutDirs.d.ts → shared/getOutDirs.d.ts} +0 -0
  119. /package/dist/esm/node/plugin/{resolveClientEntriesDev.d.ts → shared/resolveClientEntriesDev.d.ts} +0 -0
  120. /package/dist/esm/{utils → node/plugin/shared}/viteIsSSR.d.ts +0 -0
@@ -3,7 +3,6 @@
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.getPageFileObject = getPageFileObject;
5
5
  const determinePageIdOld_js_1 = require("../determinePageIdOld.js");
6
- const assertPageFilePath_js_1 = require("../assertPageFilePath.js");
7
6
  const error_page_js_1 = require("../error-page.js");
8
7
  const utils_js_1 = require("../utils.js");
9
8
  const fileTypes_js_1 = require("./fileTypes.js");
@@ -38,19 +37,15 @@ function getPageFileObject(filePath) {
38
37
  return pageFile;
39
38
  }
40
39
  function isDefaultFilePath(filePath) {
41
- (0, assertPageFilePath_js_1.assertPageFilePath)(filePath);
42
40
  if ((0, error_page_js_1.isErrorPageId)(filePath, false)) {
43
41
  return false;
44
42
  }
45
43
  return filePath.includes('/_default');
46
44
  }
47
45
  function isRendererFilePath(filePath) {
48
- (0, assertPageFilePath_js_1.assertPageFilePath)(filePath);
49
46
  return filePath.includes('/renderer/');
50
47
  }
51
48
  function isAncestorDefaultPage(pageId, defaultPageFilePath) {
52
- (0, assertPageFilePath_js_1.assertPageFilePath)(pageId);
53
- (0, assertPageFilePath_js_1.assertPageFilePath)(defaultPageFilePath);
54
49
  (0, utils_js_1.assert)(!pageId.endsWith('/'));
55
50
  (0, utils_js_1.assert)(!defaultPageFilePath.endsWith('/'));
56
51
  (0, utils_js_1.assert)(isDefaultFilePath(defaultPageFilePath));
@@ -7,7 +7,6 @@ exports.serializeConfigValues = serializeConfigValues;
7
7
  exports.getConfigValuesBase = getConfigValuesBase;
8
8
  const assertSetup_js_1 = require("../../../utils/assertSetup.js");
9
9
  const utils_js_1 = require("../../../node/plugin/utils.js");
10
- const addImportStatement_js_1 = require("../../../node/plugin/plugins/importUserCode/addImportStatement.js");
11
10
  const transformPointerImports_js_1 = require("../../../node/plugin/plugins/importUserCode/v1-design/getVikeConfig/transformPointerImports.js");
12
11
  const helpers_js_1 = require("../helpers.js");
13
12
  const stringify_1 = require("@brillout/json-serializer/stringify");
@@ -18,20 +17,20 @@ const REPLACE_ME_AFTER = '__VIKE__REPLACE_ME_AFTER__';
18
17
  // - vike/shared/page-configs/serialize/parsePageConfigs.ts
19
18
  // - parsePageConfigs() is loaded on both the client- and server-side.
20
19
  (0, assertSetup_js_1.assertIsNotProductionRuntime)();
21
- function serializeConfigValues(pageConfig, importStatements, isEnvMatch, tabspace, isEager) {
20
+ function serializeConfigValues(pageConfig, importStatements, filesEnv, isEnvMatch, tabspace, isEager) {
22
21
  const lines = [];
23
22
  tabspace += ' ';
24
23
  getConfigValuesBase(pageConfig, isEnvMatch, isEager).forEach((entry) => {
25
24
  if (entry.configValueBase.type === 'computed') {
26
25
  (0, utils_js_1.assert)('value' in entry); // Help TS
27
- const { configValueBase, value, configName } = entry;
28
- const valueData = getValueSerializedWithJson(value, configName, configValueBase.definedAtData, importStatements);
26
+ const { configValueBase, value, configName, configEnv } = entry;
27
+ const valueData = getValueSerializedWithJson(value, configName, configValueBase.definedAtData, importStatements, filesEnv, configEnv);
29
28
  serializeConfigValue(configValueBase, valueData, configName, lines, tabspace);
30
29
  }
31
30
  if (entry.configValueBase.type === 'standard') {
32
31
  (0, utils_js_1.assert)('sourceRelevant' in entry); // Help TS
33
32
  const { configValueBase, sourceRelevant, configName } = entry;
34
- const valueData = getValueSerializedFromSource(sourceRelevant, configName, importStatements);
33
+ const valueData = getValueSerializedFromSource(sourceRelevant, configName, importStatements, filesEnv);
35
34
  serializeConfigValue(configValueBase, valueData, configName, lines, tabspace);
36
35
  }
37
36
  if (entry.configValueBase.type === 'cumulative') {
@@ -39,7 +38,7 @@ function serializeConfigValues(pageConfig, importStatements, isEnvMatch, tabspac
39
38
  const { configValueBase, sourcesRelevant, configName } = entry;
40
39
  const valueDataList = [];
41
40
  sourcesRelevant.forEach((source) => {
42
- const valueData = getValueSerializedFromSource(source, configName, importStatements);
41
+ const valueData = getValueSerializedFromSource(source, configName, importStatements, filesEnv);
43
42
  valueDataList.push(valueData);
44
43
  });
45
44
  serializeConfigValue(configValueBase, valueDataList, configName, lines, tabspace);
@@ -47,14 +46,14 @@ function serializeConfigValues(pageConfig, importStatements, isEnvMatch, tabspac
47
46
  });
48
47
  return lines;
49
48
  }
50
- function getValueSerializedFromSource(configValueSource, configName, importStatements) {
49
+ function getValueSerializedFromSource(configValueSource, configName, importStatements, filesEnv) {
51
50
  (0, utils_js_1.assert)(configValueSource.isOverriden === false);
52
51
  let valueData;
53
52
  if ('value' in configValueSource) {
54
- valueData = getValueSerializedWithJson(configValueSource.value, configName, configValueSource.definedAtFilePath, importStatements);
53
+ valueData = getValueSerializedWithJson(configValueSource.value, configName, configValueSource.definedAtFilePath, importStatements, filesEnv, configValueSource.configEnv);
55
54
  }
56
55
  else {
57
- valueData = getValueSerializedWithImport(configValueSource, importStatements);
56
+ valueData = getValueSerializedWithImport(configValueSource, importStatements, filesEnv, configName);
58
57
  }
59
58
  return valueData;
60
59
  }
@@ -100,27 +99,27 @@ function serializeConfigValue(configValueBase, valueData, configName, lines, tab
100
99
  tabspace = tabspace.slice(2);
101
100
  }
102
101
  }
103
- function getValueSerializedWithImport(configValueSource, importStatements) {
102
+ function getValueSerializedWithImport(configValueSource, importStatements, filesEnv, configName) {
104
103
  (0, utils_js_1.assert)(!configValueSource.valueIsFilePath);
105
- const { valueIsImportedAtRuntime, valueIsDefinedByPlusFile, definedAtFilePath } = configValueSource;
104
+ const { valueIsImportedAtRuntime, valueIsDefinedByPlusFile, definedAtFilePath, configEnv } = configValueSource;
106
105
  (0, utils_js_1.assert)(valueIsImportedAtRuntime);
107
106
  const { filePathAbsoluteVite, fileExportName } = definedAtFilePath;
108
107
  if (valueIsDefinedByPlusFile)
109
108
  (0, utils_js_1.assert)(fileExportName === undefined);
110
- const { importName } = (0, addImportStatement_js_1.addImportStatement)(importStatements, filePathAbsoluteVite, fileExportName || '*');
109
+ const { importName } = addImportStatement(importStatements, filePathAbsoluteVite, fileExportName || '*', filesEnv, configEnv, configName);
111
110
  return {
112
111
  type: valueIsDefinedByPlusFile ? 'plus-file' : 'pointer-import',
113
112
  valueAsJsCode: importName
114
113
  };
115
114
  }
116
- function getValueSerializedWithJson(value, configName, definedAtData, importStatements) {
117
- const valueAsJsCode = valueToJson(value, configName, definedAtData, importStatements);
115
+ function getValueSerializedWithJson(value, configName, definedAtData, importStatements, filesEnv, configEnv) {
116
+ const valueAsJsCode = valueToJson(value, configName, definedAtData, importStatements, filesEnv, configEnv);
118
117
  return {
119
118
  type: 'js-serialized',
120
119
  valueAsJsCode
121
120
  };
122
121
  }
123
- function valueToJson(value, configName, definedAtData, importStatements) {
122
+ function valueToJson(value, configName, definedAtData, importStatements, filesEnv, configEnv) {
124
123
  const valueName = `config${(0, utils_js_1.getPropAccessNotation)(configName)}`;
125
124
  let configValueSerialized;
126
125
  try {
@@ -135,7 +134,7 @@ function valueToJson(value, configName, definedAtData, importStatements) {
135
134
  if (typeof value === 'string') {
136
135
  const importData = (0, transformPointerImports_js_1.parsePointerImportData)(value);
137
136
  if (importData) {
138
- const { importName } = (0, addImportStatement_js_1.addImportStatement)(importStatements, importData.importPath, importData.exportName);
137
+ const { importName } = addImportStatement(importStatements, importData.importPath, importData.exportName, filesEnv, configEnv, configName);
139
138
  const replacement = [REPLACE_ME_BEFORE, importName, REPLACE_ME_AFTER].join('');
140
139
  return { replacement };
141
140
  }
@@ -172,7 +171,8 @@ function logJsonSerializeError(err, configName, definedAtData) {
172
171
  }
173
172
  function getConfigValuesBase(pageConfig, isEnvMatch, isEager) {
174
173
  const fromComputed = Object.entries(pageConfig.configValuesComputed ?? {}).map(([configName, valueInfo]) => {
175
- if (!isEnvMatch(valueInfo.configEnv))
174
+ const { configEnv, value } = valueInfo;
175
+ if (!isEnvMatch(configEnv))
176
176
  return 'SKIP';
177
177
  // Is there a use case for overriding computed values? If yes, then configValeSources has higher precedence
178
178
  if (pageConfig.configValueSources[configName])
@@ -181,7 +181,7 @@ function getConfigValuesBase(pageConfig, isEnvMatch, isEager) {
181
181
  type: 'computed',
182
182
  definedAtData: null
183
183
  };
184
- return { configValueBase, value: valueInfo.value, configName };
184
+ return { configValueBase, value, configName, configEnv };
185
185
  });
186
186
  const fromSources = Object.entries(pageConfig.configValueSources).map(([configName, sources]) => {
187
187
  const configDef = pageConfig.configDefinitions[configName];
@@ -226,3 +226,54 @@ function getDefinedAtFileSource(source) {
226
226
  };
227
227
  return definedAtFile;
228
228
  }
229
+ /*
230
+ * Naming:
231
+ * `import { someExport as someImport } from './some-file'`
232
+ * <=>
233
+ * `{`
234
+ * `importPath: './some-file',`
235
+ * `exportName: 'someExport',`
236
+ * `importName: 'someImport',`
237
+ * `}`
238
+ */
239
+ function addImportStatement(importStatements, importPath, exportName, filesEnv, configEnv, configName) {
240
+ const importCounter = importStatements.length + 1;
241
+ const importName = `import${importCounter}`;
242
+ const importLiteral = (() => {
243
+ if (exportName === '*') {
244
+ return `* as ${importName}`;
245
+ }
246
+ if (exportName === 'default') {
247
+ return importName;
248
+ }
249
+ return `{ ${exportName} as ${importName} }`;
250
+ })();
251
+ const importStatement = `import ${importLiteral} from '${importPath}';`;
252
+ importStatements.push(importStatement);
253
+ assertFileEnv(importPath, configEnv, configName, filesEnv);
254
+ return { importName };
255
+ }
256
+ function assertFileEnv(importPath, configEnv, configName, filesEnv) {
257
+ const key = importPath;
258
+ (0, utils_js_1.assert)(key);
259
+ (0, utils_js_1.assertPosixPath)(key);
260
+ (0, utils_js_1.assert)(!isRelativeImportPath(key));
261
+ if (!filesEnv.has(key)) {
262
+ filesEnv.set(key, []);
263
+ }
264
+ const fileEnvs = filesEnv.get(key);
265
+ const fileEnvNew = { configEnv, configName };
266
+ fileEnvs.push(fileEnvNew);
267
+ const fileEnvDiff = fileEnvs.filter((c) => !(0, utils_js_1.deepEqual)(c.configEnv, configEnv))[0];
268
+ if (fileEnvDiff) {
269
+ (0, utils_js_1.assertUsage)(false, [
270
+ `${importPath} defines the value of configs living in different environments:`,
271
+ ...[fileEnvDiff, fileEnvNew].map((c) => ` - config ${picocolors_1.default.code(c.configName)} which value lives in environment ${picocolors_1.default.code(JSON.stringify(c.configEnv))}`),
272
+ 'Defining config values in the same file is allowed only if they live in the same environment, see https://vike.dev/config#pointer-imports'
273
+ ].join('\n'));
274
+ }
275
+ }
276
+ // TODO/now dedupe
277
+ function isRelativeImportPath(importPath) {
278
+ return importPath.startsWith('./') || importPath.startsWith('../');
279
+ }
@@ -32,7 +32,6 @@ __exportStar(require("../utils/isPlainObject.js"), exports);
32
32
  __exportStar(require("../utils/compareString.js"), exports);
33
33
  __exportStar(require("../utils/isNotNullish.js"), exports);
34
34
  __exportStar(require("../utils/stringifyStringArray.js"), exports);
35
- __exportStar(require("../utils/toPosixPath.js"), exports);
36
35
  __exportStar(require("../utils/cast.js"), exports);
37
36
  __exportStar(require("../utils/isPropertyGetter.js"), exports);
38
37
  __exportStar(require("../utils/isPromise.js"), exports);
@@ -2,4 +2,4 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.PROJECT_VERSION = void 0;
4
4
  // Automatically updated by @brillout/release-me
5
- exports.PROJECT_VERSION = '0.4.220-commit-5c7810f';
5
+ exports.PROJECT_VERSION = '0.4.220-commit-af5c91f';
@@ -7,16 +7,16 @@ exports.findFile = findFile;
7
7
  const path_1 = __importDefault(require("path"));
8
8
  const fs_1 = __importDefault(require("fs"));
9
9
  const isArray_js_1 = require("./isArray.js");
10
- const toPosixPath_js_1 = require("./toPosixPath.js");
10
+ const path_js_1 = require("./path.js");
11
11
  function findFile(arg, cwd) {
12
- (0, toPosixPath_js_1.assertPosixPath)(cwd);
12
+ (0, path_js_1.assertPosixPath)(cwd);
13
13
  const filenames = (0, isArray_js_1.isArray)(arg) ? arg : [arg];
14
14
  let dir = cwd;
15
15
  while (true) {
16
16
  for (const filename of filenames) {
17
17
  const configFilePath = path_1.default.posix.join(dir, `./${filename}`);
18
18
  if (fs_1.default.existsSync(configFilePath)) {
19
- (0, toPosixPath_js_1.assertPosixPath)(configFilePath);
19
+ (0, path_js_1.assertPosixPath)(configFilePath);
20
20
  return configFilePath;
21
21
  }
22
22
  }
@@ -4,13 +4,10 @@ exports.isDevCheck = isDevCheck;
4
4
  exports.applyDev = applyDev;
5
5
  exports.applyPreview = applyPreview;
6
6
  const assert_js_1 = require("./assert.js");
7
- const vite_1 = require("vite");
8
7
  function isDevCheck(configEnv) {
9
8
  const { isPreview, command } = configEnv;
10
- // Released at vite@5.1.0 which is guaranteed with `assertVersion('Vite', version, '5.1.0')`
11
- // - Release: https://github.com/vitejs/vite/blob/6f7466e6211027686f40ad7e4ce6ec8477414546/packages/vite/CHANGELOG.md#510-beta4-2024-01-26:~:text=fix(preview)%3A-,set%20isPreview%20true,-(%2315695)%20(93fce55
12
- // - Surprisingly, this assert() can fail: https://github.com/vikejs/vike/issues/2135
13
- (0, assert_js_1.assert)(typeof isPreview === 'boolean', { isPreview, version: vite_1.version });
9
+ // `assertVersion('Vite', version, '5.1.0')` isn't enough: https://github.com/vitejs/vite/pull/19355
10
+ (0, assert_js_1.assertUsage)(typeof isPreview === 'boolean', 'You are using an old Vite version; make sure to use Vite 5.1.0 or above.');
14
11
  return command === 'serve' && !isPreview;
15
12
  }
16
13
  function applyDev(_, env) {
@@ -7,7 +7,7 @@ exports.assertFilePathAbsoluteFilesystem = assertFilePathAbsoluteFilesystem;
7
7
  exports.isFilePathAbsolute = isFilePathAbsolute;
8
8
  const path_1 = __importDefault(require("path"));
9
9
  const assert_js_1 = require("./assert.js");
10
- const toPosixPath_js_1 = require("./toPosixPath.js");
10
+ const path_js_1 = require("./path.js");
11
11
  /**
12
12
  * Asserts that `filePath` is an absolute file path starting from the filesystem root.
13
13
  *
@@ -19,7 +19,7 @@ function assertFilePathAbsoluteFilesystem(filePath) {
19
19
  // - For Linux users assertFilePathAbsoluteFilesystem() will erroneously succeed if `p` is a path absolute from the user root dir.
20
20
  // - But that's okay because the assertion will eventually fail for Windows users.
21
21
  (0, assert_js_1.assert)(isFilePathAbsoluteFilesystem(filePath));
22
- (0, toPosixPath_js_1.assertPosixPath)(filePath);
22
+ (0, path_js_1.assertPosixPath)(filePath);
23
23
  }
24
24
  /**
25
25
  * Whether `filePath` is an absolute file path starting from the filesystem root.
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.pathJoin = pathJoin;
4
+ exports.pathIsRelative = pathIsRelative;
5
+ exports.toPosixPath = toPosixPath;
6
+ exports.assertPosixPath = assertPosixPath;
7
+ // Utilites for handling file paths.
8
+ // - Shims `import * from "node:path"` for server runtime.
9
+ // - Robust shim reference: https://github.com/unjs/pathe
10
+ const assert_js_1 = require("./assert.js");
11
+ const assertIsNotBrowser_js_1 = require("./assertIsNotBrowser.js");
12
+ (0, assertIsNotBrowser_js_1.assertIsNotBrowser)();
13
+ /**********************/
14
+ /****** SHIMS *********/
15
+ /**********************/
16
+ function pathJoin(path1, path2) {
17
+ (0, assert_js_1.assert)(!path1.includes('\\'));
18
+ (0, assert_js_1.assert)(!path2.includes('\\'));
19
+ let joined = [...path1.split('/'), ...path2.split('/')].filter(Boolean).join('/');
20
+ if (path1.startsWith('/'))
21
+ joined = '/' + joined;
22
+ return joined;
23
+ }
24
+ /* https://github.com/brillout/telefunc/blob/0fd44322acbd07857ae29361ba7c998607f17dd5/telefunc/utils/path-shim.ts#L17-L21
25
+ const IS_ABSOLUTE_RE = /^[/\\](?![/\\])|^[/\\]{2}(?!\.)|^[A-Za-z]:[/\\]/
26
+ function pathIsAbsolute(filePath: string) {
27
+ return IS_ABSOLUTE_RE.test(filePath)
28
+ }
29
+ //*/
30
+ /**********************/
31
+ /****** UTILS *********/
32
+ /**********************/
33
+ function toPosixPath(path) {
34
+ const pathPosix = path.split('\\').join('/');
35
+ assertPosixPath(pathPosix);
36
+ return pathPosix;
37
+ }
38
+ function assertPosixPath(path) {
39
+ const errMsg = (msg) => `Not a posix path: ${msg}`;
40
+ (0, assert_js_1.assert)(path !== null, errMsg('null'));
41
+ (0, assert_js_1.assert)(typeof path === 'string', errMsg(`typeof path === ${JSON.stringify(typeof path)}`));
42
+ (0, assert_js_1.assert)(path !== '', errMsg('(empty string)'));
43
+ (0, assert_js_1.assert)(path);
44
+ (0, assert_js_1.assert)(!path.includes('\\'), errMsg(path));
45
+ }
46
+ function pathIsRelative(importPath) {
47
+ return importPath.startsWith('./') || importPath.startsWith('../');
48
+ }
@@ -4,7 +4,7 @@ exports.requireResolve = requireResolve;
4
4
  const assert_js_1 = require("./assert.js");
5
5
  const assertIsNotBrowser_js_1 = require("./assertIsNotBrowser.js");
6
6
  const assertSetup_js_1 = require("./assertSetup.js");
7
- const toPosixPath_js_1 = require("./toPosixPath.js");
7
+ const path_js_1 = require("./path.js");
8
8
  const isScriptFile_js_1 = require("./isScriptFile.js");
9
9
  const module_1 = require("module");
10
10
  // @ts-ignore Shimmed by dist-cjs-fixup.js for CJS build.
@@ -15,7 +15,7 @@ const require_ = (0, module_1.createRequire)(importMetaUrl);
15
15
  // We still can't use import.meta.resolve() as of 23.1.0 (November 2024) because `parent` argument requires an experimental flag.
16
16
  // - https://stackoverflow.com/questions/54977743/do-require-resolve-for-es-modules#comment139581675_62272600
17
17
  function requireResolve(importPath, cwd) {
18
- (0, toPosixPath_js_1.assertPosixPath)(cwd);
18
+ (0, path_js_1.assertPosixPath)(cwd);
19
19
  const clean = addFileExtensionsToRequireResolve();
20
20
  importPath = removeFileExtention(importPath);
21
21
  let importedFile;
@@ -29,7 +29,7 @@ function requireResolve(importPath, cwd) {
29
29
  clean();
30
30
  }
31
31
  if (importedFile) {
32
- importedFile = (0, toPosixPath_js_1.toPosixPath)(importedFile);
32
+ importedFile = (0, path_js_1.toPosixPath)(importedFile);
33
33
  }
34
34
  return importedFile;
35
35
  }
@@ -1,4 +1,4 @@
1
1
  export * from '../../utils/assert.js';
2
2
  export * from '../../utils/getGlobalObject.js';
3
- export * from '../../utils/toPosixPath.js';
3
+ export * from '../../utils/path.js';
4
4
  export * from '../../utils/isObject.js';
@@ -4,5 +4,5 @@ import { onLoad } from './onLoad.js';
4
4
  onLoad();
5
5
  export * from '../../utils/assert.js';
6
6
  export * from '../../utils/getGlobalObject.js';
7
- export * from '../../utils/toPosixPath.js';
7
+ export * from '../../utils/path.js';
8
8
  export * from '../../utils/isObject.js';
@@ -23,7 +23,7 @@ import { envVarsPlugin } from './plugins/envVars.js';
23
23
  import pc from '@brillout/picocolors';
24
24
  import { fileEnv } from './plugins/fileEnv.js';
25
25
  import { setResolveClientEntriesDev } from '../runtime/renderPage/getPageAssets.js';
26
- import { resolveClientEntriesDev } from './resolveClientEntriesDev.js';
26
+ import { resolveClientEntriesDev } from './shared/resolveClientEntriesDev.js';
27
27
  import { workaroundCssModuleHmr } from './plugins/workaroundCssModuleHmr.js';
28
28
  import { workaroundVite6HmrRegression } from './plugins/workaroundVite6HmrRegression.js';
29
29
  // We don't call this in ./onLoad.ts to avoid a cyclic dependency with utils.ts
@@ -8,7 +8,7 @@ function onLoad() {
8
8
  markSetup_vikeVitePlugin();
9
9
  assertIsNotBrowser();
10
10
  assertNodeVersion();
11
- // package.json#peerDependencies isn't enough as users can ignore it
11
+ // package.json#peerDependencies isn't enough as users often ignore it
12
12
  assertVersion('Vite', version, '5.1.0');
13
13
  // Ensure we don't bloat the server runtime with heavy dependencies such Vite and esbuild
14
14
  assertIsNotProductionRuntime();
@@ -7,12 +7,14 @@ import fs from 'fs/promises';
7
7
  import fs_sync from 'fs';
8
8
  import path from 'path';
9
9
  import { existsSync } from 'fs';
10
- import { assert, assertWarning, getOutDirs, isEqualStringList, pLimit, unique, viteIsSSR } from '../../utils.js';
10
+ import { assert, assertWarning, isEqualStringList, pLimit, unique } from '../../utils.js';
11
11
  import { isVirtualFileIdPageConfigValuesAll } from '../../../shared/virtual-files/virtualFilePageConfigValuesAll.js';
12
12
  import { manifestTempFile } from '../buildConfig.js';
13
13
  import { getAssetsDir } from '../../shared/getAssetsDir.js';
14
14
  import pc from '@brillout/picocolors';
15
15
  import { isV1Design } from '../importUserCode/v1-design/getVikeConfig.js';
16
+ import { getOutDirs } from '../../shared/getOutDirs.js';
17
+ import { viteIsSSR } from '../../shared/viteIsSSR.js';
16
18
  /**
17
19
  * true => use workaround config.build.ssrEmitAssets
18
20
  * false => use workaround extractAssets plugin
@@ -2,7 +2,7 @@ export { buildConfig };
2
2
  export { assertRollupInput };
3
3
  export { analyzeClientEntries };
4
4
  export { manifestTempFile };
5
- import { assert, resolveOutDir, viteIsSSR, addOnBeforeLogHook, removeFileExtention, unique, assertUsage, injectRollupInputs, normalizeRollupInput, getOutDirs, onSetupBuild, assertIsNpmPackageImport } from '../utils.js';
5
+ import { assert, addOnBeforeLogHook, removeFileExtention, unique, assertUsage, injectRollupInputs, normalizeRollupInput, onSetupBuild, assertIsNpmPackageImport } from '../utils.js';
6
6
  import { getVikeConfig, isV1Design } from './importUserCode/v1-design/getVikeConfig.js';
7
7
  import { findPageFiles } from '../shared/findPageFiles.js';
8
8
  import { getVirtualFileIdPageConfigValuesAll } from '../../shared/virtual-files/virtualFilePageConfigValuesAll.js';
@@ -15,6 +15,8 @@ import { set_ASSETS_MANIFEST } from './buildEntry/index.js';
15
15
  import { prependEntriesDir } from '../../shared/prependEntriesDir.js';
16
16
  import { getFilePathResolved } from '../shared/getFilePath.js';
17
17
  import { getConfigValueBuildTime } from '../../../shared/page-configs/getConfigValueBuildTime.js';
18
+ import { getOutDirs, resolveOutDir } from '../shared/getOutDirs.js';
19
+ import { viteIsSSR } from '../shared/viteIsSSR.js';
18
20
  // @ts-ignore Shimmed by dist-cjs-fixup.js for CJS build.
19
21
  const importMetaUrl = import.meta.url;
20
22
  const require_ = createRequire(importMetaUrl);
@@ -2,7 +2,7 @@ export { buildEntry };
2
2
  export { set_ASSETS_MANIFEST };
3
3
  import { serverProductionEntryPlugin } from '@brillout/vite-plugin-server-entry/plugin';
4
4
  import { virtualFileIdImportUserCodeServer } from '../../../shared/virtual-files/virtualFileImportUserCode.js';
5
- import { assert, getOutDirs, projectInfo, toPosixPath } from '../../utils.js';
5
+ import { assert, projectInfo, toPosixPath } from '../../utils.js';
6
6
  import fs from 'fs/promises';
7
7
  import path from 'path';
8
8
  import { createRequire } from 'module';
@@ -11,6 +11,7 @@ const importMetaUrl = import.meta.url;
11
11
  const require_ = createRequire(importMetaUrl);
12
12
  import { isUsingClientRouter } from '../extractExportNamesPlugin.js';
13
13
  import { assertBuildInfo, getViteConfigRuntime } from '../../../runtime/globalContext.js';
14
+ import { getOutDirs } from '../../shared/getOutDirs.js';
14
15
  const ASSETS_MANIFEST = '__VITE_ASSETS_MANIFEST__';
15
16
  function buildEntry() {
16
17
  let config;
@@ -11,8 +11,7 @@ import { isViteCliCall } from '../shared/isViteCliCall.js';
11
11
  import { isVikeCliOrApi } from '../../api/context.js';
12
12
  import { getVikeConfig2 } from './importUserCode/v1-design/getVikeConfig.js';
13
13
  import { assertViteRoot, getViteRoot, normalizeViteRoot } from '../../api/prepareViteApiCall.js';
14
- import { temp_disablePrerenderAutoRun } from '../../prerender/context.js';
15
- import { resolvePrerenderConfig } from '../../prerender/resolvePrerenderConfig.js';
14
+ import { isPrerenderEnabled, temp_disablePrerenderAutoRun } from '../../prerender/context.js';
16
15
  const pluginName = 'vike:commonConfig';
17
16
  function commonConfig(vikeVitePluginOptions) {
18
17
  return [
@@ -34,7 +33,7 @@ function commonConfig(vikeVitePluginOptions) {
34
33
  vike: { global: vikeConfig.global },
35
34
  // TODO/v1-release: remove https://github.com/vikejs/vike/issues/2122
36
35
  configVikePromise: Promise.resolve({
37
- prerender: !!resolvePrerenderConfig(vikeConfig.global.config.prerender)
36
+ prerender: isPrerenderEnabled(vikeConfig)
38
37
  })
39
38
  };
40
39
  }
@@ -6,7 +6,7 @@
6
6
  // - This appraoch supports import path aliases `vite.config.js#resolve.alias` https://vitejs.dev/config/#resolve-alias
7
7
  export { extractAssetsPlugin };
8
8
  export { extractAssetsRE };
9
- import { viteIsSSR_options, assert, assertPosixPath, styleFileRE, createDebugger, isScriptFile, assertUsage } from '../utils.js';
9
+ import { assert, assertPosixPath, styleFileRE, createDebugger, isScriptFile, assertUsage } from '../utils.js';
10
10
  import { resolveVirtualFileId, isVirtualFileId, getVirtualFileId } from '../../shared/virtual-files.js';
11
11
  import { extractAssetsAddQuery } from '../../shared/extractAssetsQuery.js';
12
12
  import { isAsset } from '../shared/isAsset.js';
@@ -17,6 +17,7 @@ import { fixServerAssets_isEnabled } from './buildConfig/fixServerAssets.js';
17
17
  import { getVikeConfig, isV1Design } from './importUserCode/v1-design/getVikeConfig.js';
18
18
  import { assertV1Design } from '../../shared/assertV1Design.js';
19
19
  import { normalizeId } from '../shared/normalizeId.js';
20
+ import { viteIsSSR_options } from '../shared/viteIsSSR.js';
20
21
  const extractAssetsRE = /(\?|&)extractAssets(?:&|$)/;
21
22
  const rawRE = /(\?|&)raw(?:&|$)/;
22
23
  const urlRE = /(\?|&)url(?:&|$)/;
@@ -1,10 +1,11 @@
1
1
  export { extractExportNamesPlugin };
2
2
  export { isUsingClientRouter };
3
3
  export { extractExportNamesRE };
4
- import { assert, getFileExtension, viteIsSSR_options, createDebugger, getGlobalObject, assertUsage } from '../utils.js';
4
+ import { assert, getFileExtension, createDebugger, getGlobalObject, assertUsage } from '../utils.js';
5
5
  import { getExportNames } from '../shared/parseEsModule.js';
6
6
  import { sourceMapRemove } from '../shared/rollupSourceMap.js';
7
7
  import { normalizeId } from '../shared/normalizeId.js';
8
+ import { viteIsSSR_options } from '../shared/viteIsSSR.js';
8
9
  const extractExportNamesRE = /(\?|&)extractExportNames(?:&|$)/;
9
10
  const debug = createDebugger('vike:extractExportNames');
10
11
  const globalObject = getGlobalObject('extractExportNamesPlugin.ts', {});
@@ -1,22 +1,22 @@
1
1
  export { getVirtualFileImportUserCode };
2
- import { assert, assertPosixPath, viteIsSSR_options, scriptFileExtensions, debugGlob, getOutDirs, isVersionOrAbove, assertWarning } from '../../utils.js';
2
+ import { assert, assertPosixPath, scriptFileExtensions, debugGlob, isVersionOrAbove, assertWarning } from '../../utils.js';
3
3
  import { isVirtualFileIdImportUserCode } from '../../../shared/virtual-files/virtualFileImportUserCode.js';
4
4
  import { version as viteVersion } from 'vite';
5
5
  import { fileTypes } from '../../../../shared/getPageFiles/fileTypes.js';
6
6
  import path from 'path';
7
7
  import { getVirtualFilePageConfigs } from './v1-design/getVirtualFilePageConfigs.js';
8
8
  import { isV1Design as isV1Design_ } from './v1-design/getVikeConfig.js';
9
- import { resolvePrerenderConfig } from '../../../prerender/resolvePrerenderConfig.js';
9
+ import { getOutDirs } from '../../shared/getOutDirs.js';
10
+ import { viteIsSSR_options } from '../../shared/viteIsSSR.js';
10
11
  async function getVirtualFileImportUserCode(id, options, vikeConfig, config, isDev) {
11
12
  const idParsed = isVirtualFileIdImportUserCode(id);
12
13
  assert(idParsed);
13
14
  const { isForClientSide, isClientRouting } = idParsed;
14
15
  assert(isForClientSide === !viteIsSSR_options(options));
15
- const isPrerendering = !!resolvePrerenderConfig(vikeConfig.global.config.prerender);
16
- const code = await getCode(config, vikeConfig, isForClientSide, isClientRouting, isPrerendering, isDev, id);
16
+ const code = await getCode(config, vikeConfig, isForClientSide, isClientRouting, isDev, id);
17
17
  return code;
18
18
  }
19
- async function getCode(config, vikeConfig, isForClientSide, isClientRouting, isPrerendering, isDev, id) {
19
+ async function getCode(config, vikeConfig, isForClientSide, isClientRouting, isDev, id) {
20
20
  const { command } = config;
21
21
  assert(command === 'serve' || command === 'build');
22
22
  const isBuild = command === 'build';
@@ -25,7 +25,7 @@ async function getCode(config, vikeConfig, isForClientSide, isClientRouting, isP
25
25
  {
26
26
  const globRoots = getGlobRoots(config);
27
27
  debugGlob('Glob roots: ', globRoots);
28
- content += await generateGlobImports(globRoots, isBuild, isForClientSide, isClientRouting, vikeConfig, isPrerendering, config, isDev, id);
28
+ content += await generateGlobImports(globRoots, isBuild, isForClientSide, isClientRouting, vikeConfig, config, isDev, id);
29
29
  }
30
30
  debugGlob(`Glob imports for ${isForClientSide ? 'client' : 'server'}:\n`, content);
31
31
  return content;
@@ -55,7 +55,7 @@ function determineInjection({ fileType, isForClientSide, isClientRouting, isPrer
55
55
  }
56
56
  }
57
57
  }
58
- async function generateGlobImports(globRoots, isBuild, isForClientSide, isClientRouting, vikeConfig, isPrerendering, config, isDev, id) {
58
+ async function generateGlobImports(globRoots, isBuild, isForClientSide, isClientRouting, vikeConfig, config, isDev, id) {
59
59
  let fileContent = `// Generated by https://github.com/vikejs/vike/blob/main/vike/node/plugin/plugins/importUserCode/getVirtualFileImportUserCode.ts
60
60
 
61
61
  export const pageFilesLazy = {};
@@ -70,6 +70,8 @@ ${await getVirtualFilePageConfigs(isForClientSide, isDev, id, isClientRouting, c
70
70
  `;
71
71
  // We still use import.meta.glob() when using th V1 design in order to not break the V1 design deprecation warning
72
72
  const isV1Design = await isV1Design_(config);
73
+ // Old design => no + files => only to enable pre-rendering is setting `vike({prerender})` in vite.config.js
74
+ const isPrerendering = !!vikeConfig.global.config.prerender;
73
75
  fileTypes
74
76
  .filter((fileType) => fileType !== '.css')
75
77
  .forEach((fileType) => {
@@ -1,24 +1,27 @@
1
- export { loadImportedFile };
1
+ export { loadPointerImport };
2
2
  export { loadValueFile };
3
- export { loadValueFiles };
4
3
  export { loadConfigFile };
5
- export type { ImportedFilesLoaded };
6
4
  export type { ConfigFile };
5
+ export type { PointerImportLoaded };
7
6
  import type { FilePathResolved } from '../../../../../../shared/page-configs/FilePath.js';
8
- import { InterfaceFilesByLocationId, type InterfaceValueFile } from '../getVikeConfig.js';
7
+ import { type EsbuildCache } from './transpileAndExecuteFile.js';
8
+ import { type InterfaceValueFile } from '../getVikeConfig.js';
9
+ import { PointerImport } from './resolvePointerImport.js';
9
10
  import type { ConfigDefinitions } from './configDefinitionsBuiltIn.js';
10
- type ImportedFilesLoaded = Record<string, Promise<Record<string, unknown>>>;
11
11
  type ConfigFile = {
12
12
  fileExports: Record<string, unknown>;
13
13
  filePath: FilePathResolved;
14
14
  extendsFilePaths: string[];
15
15
  };
16
- declare function loadImportedFile(import_: FilePathResolved & {
17
- fileExportName: string;
18
- }, userRootDir: string, importedFilesLoaded: ImportedFilesLoaded): Promise<unknown>;
19
- declare function loadValueFile(interfaceValueFile: InterfaceValueFile, configDefinitions: ConfigDefinitions, userRootDir: string): Promise<void>;
20
- declare function loadValueFiles(interfaceFiles: InterfaceFilesByLocationId, configDefinitions: ConfigDefinitions, userRootDir: string): Promise<void>;
21
- declare function loadConfigFile(configFilePath: FilePathResolved, userRootDir: string, visited: string[], isExtensionConfig: boolean): Promise<{
16
+ declare function loadPointerImport(pointerImport: PointerImportLoaded, userRootDir: string, configName: string, configDefinitions: ConfigDefinitions, esbuildCache: EsbuildCache): Promise<unknown>;
17
+ type PointerImportLoaded = PointerImport & ({
18
+ fileExportValueLoaded: true;
19
+ fileExportValue: unknown;
20
+ } | {
21
+ fileExportValueLoaded: false;
22
+ });
23
+ declare function loadValueFile(interfaceValueFile: InterfaceValueFile, configDefinitions: ConfigDefinitions, userRootDir: string, esbuildCache: EsbuildCache): Promise<void>;
24
+ declare function loadConfigFile(configFilePath: FilePathResolved, userRootDir: string, visited: string[], isExtensionConfig: boolean, esbuildCache: EsbuildCache): Promise<{
22
25
  configFile: ConfigFile;
23
26
  extendsConfigs: ConfigFile[];
24
27
  }>;