From 0b92d004890969e06f6e74eccc4d2501378a7a42 Mon Sep 17 00:00:00 2001 From: Sunny Zanchi Date: Tue, 11 Jun 2024 12:23:36 -0400 Subject: [PATCH 1/3] remove hardcoded 'v' for docs release notes --- .../docs-release-notes/docs-3-15-2024.mdx | 2 +- .../docs-release-notes/docs-3-22-2024.mdx | 2 +- .../docs-release-notes/docs-3-29-2024.mdx | 2 +- .../docs-release-notes/docs-4-12-2024.mdx | 2 +- .../docs-release-notes/docs-4-19-2024.mdx | 2 +- .../docs-release-notes/docs-4-26-2024.mdx | 2 +- .../docs-release-notes/docs-4-5-2024.mdx | 2 +- .../docs-release-notes/docs-5-10-2024.mdx | 2 +- .../docs-release-notes/docs-5-17-2024.mdx | 2 +- .../docs-release-notes/docs-5-24-2024.mdx | 2 +- .../docs-release-notes/docs-5-3-2024.mdx | 2 +- .../docs-release-notes/docs-5-31-2024.mdx | 2 +- .../docs-release-notes/docs-6-7-2024.mdx | 2 +- src/templates/releaseNote.js | 10 ++-------- src/templates/releaseNoteLandingPage.js | 6 +++--- src/utils/releaseNotes.js | 17 +++++++++++++++++ 16 files changed, 35 insertions(+), 24 deletions(-) create mode 100644 src/utils/releaseNotes.js diff --git a/src/content/docs/release-notes/docs-release-notes/docs-3-15-2024.mdx b/src/content/docs/release-notes/docs-release-notes/docs-3-15-2024.mdx index aab2bf54022..0dc274e7205 100644 --- a/src/content/docs/release-notes/docs-release-notes/docs-3-15-2024.mdx +++ b/src/content/docs/release-notes/docs-release-notes/docs-3-15-2024.mdx @@ -1,7 +1,7 @@ --- subject: "Docs" releaseDate: '2024-03-15' -version: 'ersion: March 8–14, 2024' +version: 'version: March 8–14, 2024' --- diff --git a/src/content/docs/release-notes/docs-release-notes/docs-3-22-2024.mdx b/src/content/docs/release-notes/docs-release-notes/docs-3-22-2024.mdx index 3f66aa8588e..2c6b364562a 100644 --- a/src/content/docs/release-notes/docs-release-notes/docs-3-22-2024.mdx +++ b/src/content/docs/release-notes/docs-release-notes/docs-3-22-2024.mdx @@ -1,7 +1,7 @@ --- subject: "Docs" releaseDate: '2024-03-22' -version: 'ersion: March 15–21, 2024' +version: 'version: March 15–21, 2024' --- diff --git a/src/content/docs/release-notes/docs-release-notes/docs-3-29-2024.mdx b/src/content/docs/release-notes/docs-release-notes/docs-3-29-2024.mdx index b40b9743daa..67c060f01f9 100644 --- a/src/content/docs/release-notes/docs-release-notes/docs-3-29-2024.mdx +++ b/src/content/docs/release-notes/docs-release-notes/docs-3-29-2024.mdx @@ -1,7 +1,7 @@ --- subject: "Docs" releaseDate: '2024-03-29' -version: 'ersion: March 22–28, 2024' +version: 'version: March 22–28, 2024' --- diff --git a/src/content/docs/release-notes/docs-release-notes/docs-4-12-2024.mdx b/src/content/docs/release-notes/docs-release-notes/docs-4-12-2024.mdx index 5facf6a6cf0..bdde02990b9 100644 --- a/src/content/docs/release-notes/docs-release-notes/docs-4-12-2024.mdx +++ b/src/content/docs/release-notes/docs-release-notes/docs-4-12-2024.mdx @@ -1,7 +1,7 @@ --- subject: "Docs" releaseDate: '2024-04-12' -version: 'ersion: April 5–11, 2024' +version: 'version: April 5–11, 2024' --- diff --git a/src/content/docs/release-notes/docs-release-notes/docs-4-19-2024.mdx b/src/content/docs/release-notes/docs-release-notes/docs-4-19-2024.mdx index 4e1506ac05a..f88cda0a689 100644 --- a/src/content/docs/release-notes/docs-release-notes/docs-4-19-2024.mdx +++ b/src/content/docs/release-notes/docs-release-notes/docs-4-19-2024.mdx @@ -1,7 +1,7 @@ --- subject: "Docs" releaseDate: '2024-04-19' -version: 'ersion: April 12–18, 2024' +version: 'version: April 12–18, 2024' --- diff --git a/src/content/docs/release-notes/docs-release-notes/docs-4-26-2024.mdx b/src/content/docs/release-notes/docs-release-notes/docs-4-26-2024.mdx index 4ef6e84811b..bacb8c97647 100644 --- a/src/content/docs/release-notes/docs-release-notes/docs-4-26-2024.mdx +++ b/src/content/docs/release-notes/docs-release-notes/docs-4-26-2024.mdx @@ -1,7 +1,7 @@ --- subject: "Docs" releaseDate: '2024-04-26' -version: 'ersion: April 19–25, 2024' +version: 'version: April 19–25, 2024' --- ### New docs diff --git a/src/content/docs/release-notes/docs-release-notes/docs-4-5-2024.mdx b/src/content/docs/release-notes/docs-release-notes/docs-4-5-2024.mdx index 9b0319c31db..6156c55e59e 100644 --- a/src/content/docs/release-notes/docs-release-notes/docs-4-5-2024.mdx +++ b/src/content/docs/release-notes/docs-release-notes/docs-4-5-2024.mdx @@ -1,7 +1,7 @@ --- subject: "Docs" releaseDate: '2024-04-05' -version: 'ersion: March 29–April 4, 2024' +version: 'version: March 29–April 4, 2024' --- diff --git a/src/content/docs/release-notes/docs-release-notes/docs-5-10-2024.mdx b/src/content/docs/release-notes/docs-release-notes/docs-5-10-2024.mdx index 9d09a4482b2..63056edfb65 100644 --- a/src/content/docs/release-notes/docs-release-notes/docs-5-10-2024.mdx +++ b/src/content/docs/release-notes/docs-release-notes/docs-5-10-2024.mdx @@ -1,7 +1,7 @@ --- subject: "Docs" releaseDate: '2024-05-10' -version: 'ersion: May 3-9, 2024' +version: 'version: May 3-9, 2024' --- ### New docs diff --git a/src/content/docs/release-notes/docs-release-notes/docs-5-17-2024.mdx b/src/content/docs/release-notes/docs-release-notes/docs-5-17-2024.mdx index b49c31cc26f..2b78bdc4051 100644 --- a/src/content/docs/release-notes/docs-release-notes/docs-5-17-2024.mdx +++ b/src/content/docs/release-notes/docs-release-notes/docs-5-17-2024.mdx @@ -1,7 +1,7 @@ --- subject: "Docs" releaseDate: '2024-05-17' -version: 'ersion: May 10-16, 2024' +version: 'version: May 10-16, 2024' --- ### New docs diff --git a/src/content/docs/release-notes/docs-release-notes/docs-5-24-2024.mdx b/src/content/docs/release-notes/docs-release-notes/docs-5-24-2024.mdx index ae00c3549e7..fb493e08416 100644 --- a/src/content/docs/release-notes/docs-release-notes/docs-5-24-2024.mdx +++ b/src/content/docs/release-notes/docs-release-notes/docs-5-24-2024.mdx @@ -1,7 +1,7 @@ --- subject: "Docs" releaseDate: '2024-05-24' -version: 'ersion: May 17-23, 2024' +version: 'version: May 17-23, 2024' --- ### New docs diff --git a/src/content/docs/release-notes/docs-release-notes/docs-5-3-2024.mdx b/src/content/docs/release-notes/docs-release-notes/docs-5-3-2024.mdx index 047b5d5bf08..8a4a6762a68 100644 --- a/src/content/docs/release-notes/docs-release-notes/docs-5-3-2024.mdx +++ b/src/content/docs/release-notes/docs-release-notes/docs-5-3-2024.mdx @@ -1,7 +1,7 @@ --- subject: "Docs" releaseDate: '2024-05-03' -version: 'ersion: April 26–May 2, 2024' +version: 'version: April 26–May 2, 2024' --- ### New docs diff --git a/src/content/docs/release-notes/docs-release-notes/docs-5-31-2024.mdx b/src/content/docs/release-notes/docs-release-notes/docs-5-31-2024.mdx index 1c5bbc014be..e37d3fc1182 100644 --- a/src/content/docs/release-notes/docs-release-notes/docs-5-31-2024.mdx +++ b/src/content/docs/release-notes/docs-release-notes/docs-5-31-2024.mdx @@ -1,7 +1,7 @@ --- subject: "Docs" releaseDate: '2024-05-31' -version: 'ersion: May 24-30, 2024' +version: 'version: May 24-30, 2024' --- ### New docs diff --git a/src/content/docs/release-notes/docs-release-notes/docs-6-7-2024.mdx b/src/content/docs/release-notes/docs-release-notes/docs-6-7-2024.mdx index 9aff6887438..62ebf5734b6 100644 --- a/src/content/docs/release-notes/docs-release-notes/docs-6-7-2024.mdx +++ b/src/content/docs/release-notes/docs-release-notes/docs-6-7-2024.mdx @@ -1,7 +1,7 @@ --- subject: "Docs" releaseDate: '2024-06-07' -version: 'ersion: May 31-June 6, 2024' +version: 'version: May 31-June 6, 2024' --- ### New docs diff --git a/src/templates/releaseNote.js b/src/templates/releaseNote.js index 9155c3b8cb0..5a9131b49ea 100644 --- a/src/templates/releaseNote.js +++ b/src/templates/releaseNote.js @@ -3,19 +3,13 @@ import PropTypes from 'prop-types'; import { css } from '@emotion/react'; import { graphql } from 'gatsby'; import { Icon, Layout, Link } from '@newrelic/gatsby-theme-newrelic'; + import PageTitle from '../components/PageTitle'; import MDXContainer from '../components/MDXContainer'; import SEO from '../components/SEO'; import ErrorBoundary from '../components/ErrorBoundary'; import { TYPES } from '../utils/constants'; - -const getTitle = ({ title, version, subject }) => { - if (title) { - return title; - } - - return version ? `${subject} v${version}` : subject; -}; +import { getTitle } from '../utils/releaseNotes'; const ReleaseNoteTemplate = ({ data, location, pageContext }) => { const { diff --git a/src/templates/releaseNoteLandingPage.js b/src/templates/releaseNoteLandingPage.js index f224fdf4fe0..4da2a4b210f 100644 --- a/src/templates/releaseNoteLandingPage.js +++ b/src/templates/releaseNoteLandingPage.js @@ -8,6 +8,7 @@ import SEO from '../components/SEO'; import { Button, Icon, Layout, Link } from '@newrelic/gatsby-theme-newrelic'; import { TYPES } from '../utils/constants'; import MDXContainer from '../components/MDXContainer'; +import { getTitle } from '../utils/releaseNotes'; const sortByVersion = ( { frontmatter: { version: versionA } }, @@ -137,9 +138,7 @@ const ReleaseNoteLandingPage = ({ data, pageContext, location }) => { margin-bottom: 0.5rem; `} > - {post.frontmatter.title - ? post.frontmatter.title - : `${subject} v${post.frontmatter.version}`} + {getTitle(post.frontmatter)}

{ + const { title, version, subject } = frontmatter; + + if (title) { + return title; + } + + if (subject?.startsWith('Docs')) { + return `${subject} ${version}`; + } + + return version ? `${subject} v${version}` : subject; +}; From 3870108d28e77a7a32e0b4497aabb0bbcdf75193 Mon Sep 17 00:00:00 2001 From: Sunny Zanchi Date: Tue, 11 Jun 2024 13:00:18 -0400 Subject: [PATCH 2/3] update title logic in `gatsby-source-nav` plugin MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit had to convert `src/utils/releaseNotes.js` to a CJS module so the plugin could import it 😩 --- plugins/gatsby-source-nav/gatsby-node.js | 17 ++++++----------- src/utils/releaseNotes.js | 6 +++++- 2 files changed, 11 insertions(+), 12 deletions(-) diff --git a/plugins/gatsby-source-nav/gatsby-node.js b/plugins/gatsby-source-nav/gatsby-node.js index e4cbba318a0..2303c3e9cff 100644 --- a/plugins/gatsby-source-nav/gatsby-node.js +++ b/plugins/gatsby-source-nav/gatsby-node.js @@ -1,3 +1,4 @@ +const { getTitle } = require('../../src/utils/releaseNotes'); const hasOwnProperty = (obj, key) => Object.prototype.hasOwnProperty.call(obj, key); @@ -169,17 +170,11 @@ const createReleaseNotesNav = async ({ createNodeId, nodeModel }) => { ); const formatReleaseNotePosts = (posts) => - posts.map((post) => { - const derivedTitle = post.frontmatter.version - ? `${post.frontmatter.subject} v${post.frontmatter.version}` - : post.frontmatter.subject; - - return { - title: post.frontmatter.title ? post.frontmatter.title : derivedTitle, - url: post.fields.slug, - pages: [], - }; - }); + posts.map((post) => ({ + title: getTitle(post.frontmatter), + url: post.fields.slug, + pages: [], + })); const filterBySubject = (subject, posts) => posts.filter((post) => post.frontmatter.subject === subject); diff --git a/src/utils/releaseNotes.js b/src/utils/releaseNotes.js index 0bdfa7d3de8..6135d115310 100644 --- a/src/utils/releaseNotes.js +++ b/src/utils/releaseNotes.js @@ -2,7 +2,7 @@ * given a release note's frontmatter, * return what the title of the release note should be. */ -export const getTitle = (frontmatter) => { +const getTitle = (frontmatter) => { const { title, version, subject } = frontmatter; if (title) { @@ -15,3 +15,7 @@ export const getTitle = (frontmatter) => { return version ? `${subject} v${version}` : subject; }; + +module.exports = { + getTitle, +}; From a79b76ff54200130447b42800171b51b31ba059d Mon Sep 17 00:00:00 2001 From: Sunny Zanchi Date: Tue, 11 Jun 2024 13:08:09 -0400 Subject: [PATCH 3/3] update title logic in `gatsby-plugin-release-note-rss` --- plugins/gatsby-plugin-release-note-rss/gatsby-node.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/plugins/gatsby-plugin-release-note-rss/gatsby-node.js b/plugins/gatsby-plugin-release-note-rss/gatsby-node.js index 75ae9adfabc..52bf95fb60f 100644 --- a/plugins/gatsby-plugin-release-note-rss/gatsby-node.js +++ b/plugins/gatsby-plugin-release-note-rss/gatsby-node.js @@ -11,6 +11,7 @@ const removeExports = require('remark-mdx-remove-exports'); const parseISO = preferDefault(require('date-fns/parseISO')); const jsxImagesToChildren = require('../utils/jsxImagesToChildren'); const handlers = require('../utils/handlers'); +const { getTitle } = require('../../src/utils/releaseNotes'); // NOTE: remove-imports and remove-exports are now depreciated const htmlGenerator = unified() @@ -106,7 +107,7 @@ const getFeedItem = (node, siteMetadata, imageHashMap) => { return { guid: id, - title: `${subject} ${version}`, + title: getTitle(frontmatter), custom_elements: [ { link }, { pubDate },