From 602e69e757e1eac5a516928a0e899a9ae389c269 Mon Sep 17 00:00:00 2001 From: Sybren W Date: Thu, 5 Feb 2026 22:44:09 +0100 Subject: [PATCH 1/9] feat: add copy readme button for package page with html --- app/pages/package/[...package].vue | 45 ++++++++++++++++++++++++++---- 1 file changed, 39 insertions(+), 6 deletions(-) diff --git a/app/pages/package/[...package].vue b/app/pages/package/[...package].vue index 514e64635..6fb7bddbb 100644 --- a/app/pages/package/[...package].vue +++ b/app/pages/package/[...package].vue @@ -70,6 +70,12 @@ const { data: readmeData } = useLazyFetch( { default: () => ({ html: '', playgroundLinks: [], toc: [] }) }, ) +//copy README file +const { copied: copiedReadme, copy: copyReadme } = useClipboard({ + source: readmeData.value?.html ?? '', + copiedDuring: 2000, +}) + // Track active TOC item based on scroll position const tocItems = computed(() => readmeData.value?.toc ?? []) const { activeId: activeTocId, scrollToHeading } = useActiveTocItem(tocItems) @@ -1130,12 +1136,39 @@ onKeyStroke( - +
+ + + + +
From 7e816a6f0cca78476913ca3c1180784ff2c41817 Mon Sep 17 00:00:00 2001 From: Sybren W Date: Thu, 5 Feb 2026 23:10:14 +0100 Subject: [PATCH 2/9] feat: add i18n en translation --- app/pages/package/[...package].vue | 16 ++++++++-------- i18n/locales/en.json | 3 ++- lunaria/files/en-GB.json | 3 ++- lunaria/files/en-US.json | 3 ++- 4 files changed, 14 insertions(+), 11 deletions(-) diff --git a/app/pages/package/[...package].vue b/app/pages/package/[...package].vue index 6fb7bddbb..475d6d84d 100644 --- a/app/pages/package/[...package].vue +++ b/app/pages/package/[...package].vue @@ -1139,27 +1139,27 @@ onKeyStroke(
Date: Thu, 5 Feb 2026 23:29:02 +0100 Subject: [PATCH 3/9] feat: also pass the original content as md when fetching readmeData --- app/pages/package/[...package].vue | 11 ++++++----- server/utils/readme.ts | 3 ++- shared/types/readme.ts | 2 ++ 3 files changed, 10 insertions(+), 6 deletions(-) diff --git a/app/pages/package/[...package].vue b/app/pages/package/[...package].vue index 475d6d84d..7421111c8 100644 --- a/app/pages/package/[...package].vue +++ b/app/pages/package/[...package].vue @@ -67,12 +67,12 @@ const { data: readmeData } = useLazyFetch( const version = requestedVersion.value return version ? `${base}/v/${version}` : base }, - { default: () => ({ html: '', playgroundLinks: [], toc: [] }) }, + { default: () => ({ html: '', md: '', playgroundLinks: [], toc: [] }) }, ) -//copy README file +//copy README file as Markdown const { copied: copiedReadme, copy: copyReadme } = useClipboard({ - source: readmeData.value?.html ?? '', + source: readmeData.value?.md ?? '', copiedDuring: 2000, }) @@ -1137,15 +1137,16 @@ onKeyStroke(
+