diff --git a/plugins/adr-backend/package.json b/plugins/adr-backend/package.json index ace4f5dbc7..0216a8d4a1 100644 --- a/plugins/adr-backend/package.json +++ b/plugins/adr-backend/package.json @@ -48,7 +48,6 @@ }, "devDependencies": { "@backstage/cli": "workspace:^", - "@types/marked": "^5.0.0", "@types/supertest": "^2.0.8", "supertest": "^6.1.3" }, diff --git a/plugins/adr-backend/src/search/madrParser.ts b/plugins/adr-backend/src/search/madrParser.ts index 0dd1437538..bb466d13c3 100644 --- a/plugins/adr-backend/src/search/madrParser.ts +++ b/plugins/adr-backend/src/search/madrParser.ts @@ -15,29 +15,27 @@ */ import { DateTime } from 'luxon'; -import { marked } from 'marked'; +import { marked, Tokens, TokensList } from 'marked'; import { MADR_DATE_FORMAT, parseMadrWithFrontmatter, } from '@backstage/plugin-adr-common'; -const getTitle = (tokens: marked.TokensList): string | undefined => { +const getTitle = (tokens: TokensList): string | undefined => { return ( - tokens.find( - t => t.type === 'heading' && t.depth === 1, - ) as marked.Tokens.Heading + tokens.find(t => t.type === 'heading' && t.depth === 1) as Tokens.Heading )?.text; }; -const getStatusForV2Format = (tokens: marked.TokensList): string | undefined => - (tokens.find(t => t.type === 'list') as marked.Tokens.List)?.items +const getStatusForV2Format = (tokens: TokensList): string | undefined => + (tokens.find(t => t.type === 'list') as Tokens.List)?.items ?.find(t => /^status:/i.test(t.text)) ?.text.replace(/^status:/i, '') .trim() .toLocaleLowerCase('en-US'); -const getDateForV2Format = (tokens: marked.TokensList): string | undefined => { - const listTokens = (tokens.find(t => t.type === 'list') as marked.Tokens.List) +const getDateForV2Format = (tokens: TokensList): string | undefined => { + const listTokens = (tokens.find(t => t.type === 'list') as Tokens.List) ?.items; const adrDateTime = listTokens ?.find(t => /^date:/i.test(t.text)) @@ -47,13 +45,13 @@ const getDateForV2Format = (tokens: marked.TokensList): string | undefined => { }; const getStatus = ( - tokens: marked.TokensList, + tokens: TokensList, frontMatterStatus?: string, ): string | undefined => { return frontMatterStatus ?? getStatusForV2Format(tokens); }; const getDate = ( - tokens: marked.TokensList, + tokens: TokensList, dateFormat: string, frontMatterDate?: string, ): string | undefined => { diff --git a/yarn.lock b/yarn.lock index d09104f1bd..35933fbed2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4225,7 +4225,6 @@ __metadata: "@backstage/plugin-adr-common": "workspace:^" "@backstage/plugin-search-common": "workspace:^" "@types/express": ^4.17.6 - "@types/marked": ^5.0.0 "@types/supertest": ^2.0.8 express: ^4.17.1 express-promise-router: ^4.1.0 @@ -18900,13 +18899,6 @@ __metadata: languageName: node linkType: hard -"@types/marked@npm:^5.0.0": - version: 5.0.2 - resolution: "@types/marked@npm:5.0.2" - checksum: 2875618970bd5aaba472e313c799bbe241fe9e31d1e79782841a0cc04e08ab2a98653166f1fb99bf8bcf140d3878c3ab960a12aa8f0fb949d8277e8a01d3411b - languageName: node - linkType: hard - "@types/mdast@npm:^3.0.0, @types/mdast@npm:^3.0.3": version: 3.0.10 resolution: "@types/mdast@npm:3.0.10"