@@ -16,6 +16,7 @@ interface BuildManifest {
16
16
}
17
17
18
18
interface Configuration {
19
+ name ?: string
19
20
paths ?: Record < string , string [ ] >
20
21
}
21
22
@@ -173,6 +174,12 @@ async function generateSourceToPageMap(
173
174
return sourceToPageMap
174
175
}
175
176
177
+ async function getGitPrefix ( ) : Promise < string | null > {
178
+ const { stdout } = await asyncExec ( 'git rev-parse --show-prefix' )
179
+ const prefix = stdout . trim ( )
180
+ return prefix ?? null
181
+ }
182
+
176
183
async function getGitChangedFiles (
177
184
baseBranch : string ,
178
185
branch : string
@@ -184,7 +191,14 @@ async function getGitChangedFiles(
184
191
const { stdout } = await asyncExec (
185
192
`git --no-pager diff --name-only 'origin/${ branch } ' '${ mergeBase } '`
186
193
)
187
- return stdout . split ( os . EOL )
194
+ const prefix = await getGitPrefix ( )
195
+ return stdout . split ( os . EOL ) . map ( ( p ) => {
196
+ if ( prefix && p . startsWith ( prefix ) ) {
197
+ return p . replace ( prefix , '' )
198
+ }
199
+
200
+ return p
201
+ } )
188
202
}
189
203
190
204
export function getListOfUrls (
@@ -230,15 +244,20 @@ export function generateCommentMarkdown(
230
244
branch,
231
245
deployUrl,
232
246
dynamicPathsConfig,
247
+ packageName,
233
248
} : {
234
249
baseBranch ?: string
235
250
baseBranchDeployUrl ?: string
236
251
branch ?: string
237
252
deployUrl ?: string
238
253
dynamicPathsConfig ?: Record < string , string [ ] >
254
+ packageName ?: string
239
255
}
240
256
) : string {
241
- let comment = summary . addHeading ( 'Changed Pages' , 2 )
257
+ let comment = summary . addHeading (
258
+ packageName ? `Changed Pages for ${ packageName } ` : 'Changed Pages' ,
259
+ 2
260
+ )
242
261
if ( changedPages . length > 0 ) {
243
262
comment = comment . addTable ( [
244
263
[
@@ -285,12 +304,15 @@ async function printCommentMarkdown(
285
304
286
305
async function loadConfig ( ) : Promise < Configuration > {
287
306
try {
288
- // eslint-disable-next-line @typescript-eslint/no-var-requires
307
+ /* eslint-disable @typescript-eslint/no-var-requires */
289
308
const config = require ( path . join (
290
309
process . cwd ( ) ,
291
310
'next-touched-pages.config.js'
292
311
) )
293
- return config as Configuration
312
+ const pkg = require ( path . join ( process . cwd ( ) , 'package.json' ) )
313
+ /* eslint-enable @typescript-eslint/no-var-requires */
314
+
315
+ return { name : pkg . name , ...config } as Configuration
294
316
} catch {
295
317
return { }
296
318
}
@@ -377,6 +399,7 @@ export default async function main() {
377
399
baseBranch : argv . baseBranch ,
378
400
baseBranchDeployUrl : argv . baseBranchDeployUrl ,
379
401
dynamicPathsConfig : config . paths ,
402
+ packageName : config . name ,
380
403
} )
381
404
break
382
405
}
0 commit comments