Skip to content

Commit 67c310f

Browse files
committed
added year to publications + whether it is a review or not
1 parent 297e16d commit 67c310f

File tree

3 files changed

+30
-3
lines changed

3 files changed

+30
-3
lines changed

src/components/PublicationsTabs.tsx

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,14 @@ export default function PublicationsTabsLoaded({ publications, featuredPmids }:
7878
<div className="flex justify-between items-start gap-4">
7979
<CardTitle className="text-xl">{publication.title}</CardTitle>
8080
<div className="flex flex-wrap gap-2 justify-end">
81+
<Badge variant="secondary" className="text-xs">
82+
{publication.year}
83+
</Badge>
84+
{publication.isReview && (
85+
<Badge variant="outline" className="bg-blue-50 text-blue-700 dark:bg-blue-900/20 dark:text-blue-400">
86+
Review
87+
</Badge>
88+
)}
8189
{publication.isPreprint && (
8290
<Badge variant="outline" className="bg-amber-50 text-amber-700 dark:bg-amber-900/20 dark:text-amber-400">
8391
Preprint
@@ -157,6 +165,14 @@ export default function PublicationsTabsLoaded({ publications, featuredPmids }:
157165
<div className="flex justify-between items-start gap-4">
158166
<CardTitle className="text-xl">{publication.title}</CardTitle>
159167
<div className="flex flex-wrap gap-2 justify-end">
168+
<Badge variant="secondary" className="text-xs">
169+
{publication.year}
170+
</Badge>
171+
{publication.isReview && (
172+
<Badge variant="outline" className="bg-blue-50 text-blue-700 dark:bg-blue-900/20 dark:text-blue-400">
173+
Review
174+
</Badge>
175+
)}
160176
{publication.isPreprint && (
161177
<Badge variant="outline" className="bg-amber-50 text-amber-700 dark:bg-amber-900/20 dark:text-amber-400">
162178
Preprint

src/content/loaders/pmc.ts

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -39,9 +39,11 @@ export function pmcLoader(options: { orcid: string }): Loader {
3939
authors: z.string(),
4040
firstAuthor: z.string(),
4141
date: z.string(),
42+
year: z.number(),
4243
journal: z.string(),
4344
link: z.string().url(),
4445
isPreprint: z.boolean(),
46+
isReview: z.boolean(),
4547
pmid: z.string().optional(),
4648
doi: z.string().optional(),
4749
pmcid: z.string().optional(),
@@ -84,22 +86,29 @@ export function pmcLoader(options: { orcid: string }): Loader {
8486

8587
for (const pub of data.resultList.result) {
8688

89+
const publicationDate = pub.firstPublicationDate || '';
90+
const year = publicationDate ? new Date(publicationDate).getFullYear() : new Date().getFullYear();
91+
const pubTypeString = pub.pubType?.toLowerCase() || '';
92+
const titleString = (pub.title || '').toLowerCase();
93+
8794
const processedPub = {
8895
title: pub.title || '',
8996
authors: pub.authorString || '',
9097
firstAuthor: pub.authorString ? pub.authorString.split(',')[0].trim() : '',
91-
date: pub.firstPublicationDate || '',
98+
date: publicationDate,
99+
year: year,
92100
journal: pub.journalTitle || 'Unknown Journal',
93101
link: pub.source && pub.id
94102
? `http://europepmc.org/abstract/${pub.source}/${pub.id}`
95103
: pub.doi
96104
? `https://doi.org/${pub.doi}`
97105
: '',
98-
isPreprint: pub.pubType?.toLowerCase().includes('preprint') || false,
106+
isPreprint: pubTypeString.includes('preprint'),
107+
isReview: pubTypeString.includes('review') || titleString.includes('review'),
99108
pmid: pub.pmid,
100109
doi: pub.doi,
101110
pmcid: pub.pmcid,
102-
isOpenAccess: pub.isOpenAccess === 'Y' || pub.pubType?.toLowerCase().includes('preprint'),
111+
isOpenAccess: pub.isOpenAccess === 'Y' || pubTypeString.includes('preprint'),
103112
volume: pub.journalVolume,
104113
issue: pub.issue,
105114
pages: pub.pageInfo,

src/types/types.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,8 +56,10 @@ export interface Publication {
5656
issue?: string;
5757
pages?: string;
5858
date: string;
59+
year: number;
5960
isOpenAccess?: boolean;
6061
isPreprint?: boolean;
62+
isReview?: boolean;
6163
link?: string;
6264
doi?: string;
6365
pmid?: string;

0 commit comments

Comments
 (0)