@@ -20,14 +20,23 @@ export const resolvePagePermalink = ({
2020 pathInferred : string | null
2121 pathLocale : string
2222} ) : string | null => {
23- // use permalink in frontmatter directly
23+ // frontmatter.permalink has the highest priority
24+ if ( frontmatter . permalink === null ) {
25+ return null
26+ }
2427 if ( isString ( frontmatter . permalink ) ) {
2528 return frontmatter . permalink
2629 }
2730
28- // get permalink pattern
29- const permalinkPattern = getPermalinkPattern ( { app, frontmatter } )
30- if ( permalinkPattern === null ) {
31+ // frontmatter.permalinkPattern has higher priority than app.options.permalinkPattern
32+ if ( frontmatter . permalinkPattern === null ) {
33+ return null
34+ }
35+
36+ const permalinkPattern =
37+ frontmatter . permalinkPattern || app . options . permalinkPattern
38+
39+ if ( ! isString ( permalinkPattern ) ) {
3140 return null
3241 }
3342
@@ -45,22 +54,3 @@ export const resolvePagePermalink = ({
4554
4655 return ensureLeadingSlash ( link )
4756}
48-
49- /**
50- * Get permalink pattern from frontmatter or app options
51- */
52- const getPermalinkPattern = ( {
53- app,
54- frontmatter,
55- } : {
56- app : App
57- frontmatter : PageFrontmatter
58- } ) : string | null => {
59- if ( frontmatter . permalinkPattern === null ) {
60- return null
61- }
62- if ( isString ( frontmatter . permalinkPattern ) ) {
63- return frontmatter . permalinkPattern
64- }
65- return app . options . permalinkPattern
66- }
0 commit comments