Skip to content

Commit 2a89267

Browse files
authoredFeb 23, 2024
chore(rename): Be consistent with 'for' prefix for babel plugin option (#10059)
1 parent 553f4ac commit 2a89267

File tree

6 files changed

+37
-32
lines changed

6 files changed

+37
-32
lines changed
 

‎packages/babel-config/src/plugins/babel-plugin-redwood-routes-auto-loader.ts

+14-9
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@ import {
1212
} from '@redwoodjs/project-config'
1313

1414
interface PluginOptions {
15-
prerender?: boolean
16-
vite?: boolean
15+
forPrerender?: boolean
16+
forVite?: boolean
1717
}
1818

1919
/**
@@ -39,7 +39,7 @@ const withRelativeImports = (page: PagesDependency) => {
3939

4040
export default function (
4141
{ types: t }: { types: typeof types },
42-
{ prerender = false, vite = false }: PluginOptions
42+
{ forPrerender = false, forVite = false }: PluginOptions
4343
): PluginObj {
4444
// @NOTE: This var gets mutated inside the visitors
4545
let pages = processPagesDir().map(withRelativeImports)
@@ -102,7 +102,7 @@ export default function (
102102
// This is to make sure that all the imported "Page modules" are normal
103103
// imports and not asynchronous ones.
104104
// Note that jest in a user's project does not enter this block, but our tests do
105-
if (prerender) {
105+
if (forPrerender) {
106106
// Match import paths, const name could be different
107107

108108
const pageThatUserImported = pages.find((page) => {
@@ -195,7 +195,12 @@ export default function (
195195
t.identifier('prerenderLoader'),
196196
t.arrowFunctionExpression(
197197
[t.identifier('name')],
198-
prerenderLoaderImpl(prerender, vite, relativeImport, t)
198+
prerenderLoaderImpl(
199+
forPrerender,
200+
forVite,
201+
relativeImport,
202+
t
203+
)
199204
)
200205
),
201206
t.objectProperty(
@@ -224,12 +229,12 @@ export default function (
224229
}
225230

226231
function prerenderLoaderImpl(
227-
prerender: boolean,
228-
vite: boolean,
232+
forPrerender: boolean,
233+
forVite: boolean,
229234
relativeImport: string,
230235
t: typeof types
231236
) {
232-
if (prerender) {
237+
if (forPrerender) {
233238
// This works for both vite and webpack
234239
return t.callExpression(t.identifier('require'), [
235240
t.stringLiteral(relativeImport),
@@ -243,7 +248,7 @@ function prerenderLoaderImpl(
243248
// Manually imported pages will be bundled in the main bundle and will be
244249
// loaded by the code in `normalizePage` in util.ts
245250
let implForBuild
246-
if (vite) {
251+
if (forVite) {
247252
implForBuild = t.objectExpression([
248253
t.objectProperty(
249254
t.identifier('default'),

‎packages/babel-config/src/web.ts

+12-12
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,13 @@ import {
1515
getPathsFromTypeScriptConfig,
1616
} from './common'
1717

18+
// These flags toggle on/off certain features
19+
export interface Flags {
20+
forJest?: boolean // will change the alias for module-resolver plugin
21+
forPrerender?: boolean // changes what babel-plugin-redwood-routes-auto-loader does
22+
forVite?: boolean
23+
}
24+
1825
export const getWebSideBabelPlugins = (
1926
{ forJest, forVite }: Flags = { forJest: false, forVite: false }
2027
) => {
@@ -99,8 +106,8 @@ export const getWebSideBabelPlugins = (
99106
}
100107

101108
export const getWebSideOverrides = (
102-
{ prerender, forVite }: Flags = {
103-
prerender: false,
109+
{ forPrerender, forVite }: Flags = {
110+
forPrerender: false,
104111
forVite: false,
105112
}
106113
): Array<TransformOptions> => {
@@ -119,8 +126,8 @@ export const getWebSideOverrides = (
119126
[
120127
require('./plugins/babel-plugin-redwood-routes-auto-loader').default,
121128
{
122-
prerender,
123-
vite: forVite,
129+
forPrerender,
130+
forVite,
124131
},
125132
],
126133
],
@@ -202,13 +209,6 @@ export const getWebSideBabelConfigPath = () => {
202209
}
203210
}
204211

205-
// These flags toggle on/off certain features
206-
export interface Flags {
207-
forJest?: boolean // will change the alias for module-resolver plugin
208-
prerender?: boolean // changes what babel-plugin-redwood-routes-auto-loader does
209-
forVite?: boolean
210-
}
211-
212212
export const getWebSideDefaultBabelConfig = (options: Flags = {}) => {
213213
// NOTE:
214214
// Even though we specify the config file, babel will still search for .babelrc
@@ -240,7 +240,7 @@ export const registerWebSideBabelHook = ({
240240
// We only register for prerender currently
241241
// Static importing pages makes sense
242242
overrides: [
243-
...getWebSideOverrides({ prerender: true, forVite }),
243+
...getWebSideOverrides({ forPrerender: true, forVite }),
244244
...overrides,
245245
],
246246
})

‎packages/internal/src/__tests__/build_web.test.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ test('Check routes are imported with require when staticImports flag is enabled'
6464
const routesFile = getPaths().web.routes
6565

6666
const prerendered = prebuildWebFile(routesFile, {
67-
prerender: true,
67+
forPrerender: true,
6868
forJest: true,
6969
})?.code
7070

‎packages/internal/src/__tests__/nestedPages.test.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ describe('User specified imports, with static imports', () => {
3535
const routesFile = getPaths().web.routes
3636

3737
outputWithStaticImports = prebuildWebFile(routesFile, {
38-
prerender: true,
38+
forPrerender: true,
3939
forJest: true,
4040
})?.code
4141
outputWithStaticImports &&= normalizeStr(outputWithStaticImports)

‎packages/prerender/src/runPrerender.tsx

+8-8
Original file line numberDiff line numberDiff line change
@@ -150,7 +150,7 @@ async function recursivelyRender(
150150
function insertChunkLoadingScript(
151151
indexHtmlTree: CheerioAPI,
152152
renderPath: string,
153-
vite: boolean
153+
forVite: boolean
154154
) {
155155
const prerenderRoutes = detectPrerenderRoutes()
156156

@@ -175,7 +175,7 @@ function insertChunkLoadingScript(
175175

176176
const chunkPaths: Array<string> = []
177177

178-
if (!vite) {
178+
if (!forVite) {
179179
// Webpack
180180

181181
const pageChunkPath = buildManifest[`${route?.pageIdentifier}.js`]
@@ -219,7 +219,7 @@ function insertChunkLoadingScript(
219219
})
220220
}
221221
}
222-
} else if (vite && route?.filePath) {
222+
} else if (forVite && route?.filePath) {
223223
const pagesIndex =
224224
route.filePath.indexOf(path.join('web', 'src', 'pages')) + 8
225225
const pagePath = ensurePosixPath(route.filePath.slice(pagesIndex))
@@ -245,12 +245,12 @@ function insertChunkLoadingScript(
245245
chunkPaths.forEach((chunkPath) => {
246246
indexHtmlTree('head').prepend(
247247
`<script defer="defer" src="${chunkPath}" ${
248-
vite ? 'type="module"' : ''
248+
forVite ? 'type="module"' : ''
249249
}></script>`
250250
)
251251
})
252252

253-
if (!vite) {
253+
if (!forVite) {
254254
return
255255
}
256256

@@ -323,12 +323,12 @@ export const runPrerender = async ({
323323
})
324324

325325
const gqlHandler = await getGqlHandler()
326-
const vite = getConfig().web.bundler !== 'webpack'
326+
const forVite = getConfig().web.bundler !== 'webpack'
327327

328328
// Prerender specific configuration
329329
// extends projects web/babelConfig
330330
registerWebSideBabelHook({
331-
forVite: vite,
331+
forVite,
332332
overrides: [
333333
{
334334
plugins: [
@@ -400,7 +400,7 @@ export const runPrerender = async ({
400400
// or possible cache merge conflicts
401401
prerenderApolloClient.resetStore()
402402

403-
insertChunkLoadingScript(indexHtmlTree, renderPath, vite)
403+
insertChunkLoadingScript(indexHtmlTree, renderPath, forVite)
404404

405405
indexHtmlTree('#redwood-app').append(componentAsHtml)
406406

‎packages/vite/src/__tests__/viteNestedPages.test.mts

+1-1
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ describe('User specified imports, with static imports', () => {
7171

7272
const routesFile = getPaths().web.routes
7373
const prerenderResult = await vitePrebuildWebFile(routesFile, {
74-
prerender: true,
74+
forPrerender: true,
7575
forJest: true,
7676
forVite: true,
7777
})

0 commit comments

Comments
 (0)