Skip to content

Commit dd30329

Browse files
committed
refactor based on pr comments
1 parent a648025 commit dd30329

File tree

2 files changed

+16
-21
lines changed

2 files changed

+16
-21
lines changed

packages/@apphosting/adapter-nextjs/src/bin/build.ts

Lines changed: 3 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -35,14 +35,9 @@ const originalConfig = await loadConfig(root, opts.projectDirectory);
3535
* Note: loadConfig always returns a fileName (default: next.config.js) even if
3636
* one does not exist in the app's root: https://github.com/vercel/next.js/blob/23681508ca34b66a6ef55965c5eac57de20eb67f/packages/next/src/server/config.ts#L1115
3737
*/
38-
const userNextConfigExists = await exists(join(root, originalConfig.configFileName));
39-
await overrideNextConfig(root, originalConfig.configFileName, userNextConfigExists);
40-
await validateNextConfigOverride(
41-
root,
42-
opts.projectDirectory,
43-
originalConfig.configFileName,
44-
userNextConfigExists,
45-
);
38+
39+
await overrideNextConfig(root, originalConfig.configFileName);
40+
await validateNextConfigOverride(root, opts.projectDirectory, originalConfig.configFileName);
4641

4742
await runBuild();
4843

packages/@apphosting/adapter-nextjs/src/overrides.ts

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -16,12 +16,9 @@ const DEFAULT_NEXT_CONFIG_FILE = "next.config.js";
1616
* Overrides the user's Next Config file (next.config.[ts|js|mjs]) to add configs
1717
* optimized for Firebase App Hosting.
1818
*/
19-
export async function overrideNextConfig(
20-
projectRoot: string,
21-
nextConfigFileName: string,
22-
userNextConfigExists: boolean,
23-
) {
19+
export async function overrideNextConfig(projectRoot: string, nextConfigFileName: string) {
2420
console.log(`Overriding Next Config to add configs optmized for Firebase App Hosting`);
21+
const userNextConfigExists = await exists(join(projectRoot, nextConfigFileName));
2522
if (!userNextConfigExists) {
2623
console.log(`No Next config file found, creating one with Firebase App Hosting overrides`);
2724
try {
@@ -149,25 +146,28 @@ function defaultNextConfigForFAH() {
149146
export async function validateNextConfigOverride(
150147
root: string,
151148
projectRoot: string,
152-
originalConfigFileName: string,
153-
userNextConfigExists: boolean,
149+
configFileName: string,
154150
) {
151+
const userNextConfigExists = await exists(join(projectRoot, configFileName));
155152
if (userNextConfigExists) {
156153
// Ensure user's existing next config is preserved in a next.config.origin.* file
157-
const originalConfigExtension = extname(originalConfigFileName);
158-
const prservedConfigFileName = `next.config.original${originalConfigExtension}`;
159-
const preservedConfigFilePath = join(root, prservedConfigFileName);
154+
const originalConfigExtension = extname(configFileName);
155+
const preservedConfigFileName = `next.config.original${originalConfigExtension}`;
156+
const preservedConfigFilePath = join(root, preservedConfigFileName);
160157
if (!(await exists(preservedConfigFilePath))) {
161158
throw new Error(
162159
`Next Config Override Failed: User's original Next.js config file not preserved ${preservedConfigFilePath}`,
163160
);
164161
}
165162
}
166163

167-
const originalNextConfigFilePath = join(root, originalConfigFileName);
168-
if (!(await exists(originalNextConfigFilePath))) {
164+
const configFilePath = join(
165+
root,
166+
userNextConfigExists ? configFileName : DEFAULT_NEXT_CONFIG_FILE,
167+
);
168+
if (!(await exists(configFilePath))) {
169169
throw new Error(
170-
`Next Config Override Failed: Next.js config file not found at ${originalNextConfigFilePath}`,
170+
`Next Config Override Failed: Next.js config file not found at ${configFilePath}`,
171171
);
172172
}
173173

0 commit comments

Comments
 (0)