Skip to content

Commit 95c11db

Browse files
authored
feat: add changelog system (#9134)
This implements a new changelog system to the docs so it's easy to browse it and subscribe via RSS. Fixes MRGFY-5981
1 parent 1de127b commit 95c11db

File tree

17 files changed

+976
-48
lines changed

17 files changed

+976
-48
lines changed

eslint.config.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ export default [
1616
'node_modules/**',
1717
'.github/**',
1818
'public/scalar-api-reference.js',
19+
'src/content/changelog/',
1920
],
2021
},
2122

package-lock.json

Lines changed: 41 additions & 34 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,7 @@
6767
"@astrojs/check": "^0.9.5",
6868
"@astrojs/react": "^4.4.1",
6969
"@astrojs/vue": "^5.1.2",
70+
"@astrojs/rss": "^4.0.13",
7071
"@fontsource/ibm-plex-mono": "^5.2.7",
7172
"@fontsource/poppins": "^5.2.7",
7273
"@scalar/api-reference": "^1.39.1",

src/@types/changelog-content.d.ts

Whitespace-only changes.

src/components/Breadcrumbs.astro

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,18 @@ for (const [p, t] of trails.entries()) {
4040
}
4141
}
4242
43+
// Handle dynamic changelog entries
44+
if (currentPath.startsWith('/changelog/') && currentPath !== '/changelog') {
45+
// This is a specific changelog entry page
46+
matchedTrail = [{ title: 'Changelog', path: '/changelog' }];
47+
48+
// Add the current page title from props if available
49+
const { breadcrumbTitle } = Astro.props as { breadcrumbTitle?: string };
50+
if (breadcrumbTitle) {
51+
matchedTrail.push({ title: breadcrumbTitle });
52+
}
53+
}
54+
4355
if (matchedTrail.length >= 2) {
4456
const filtered: TrailEntry[] = [];
4557
for (const entry of matchedTrail) {

src/components/Button.astro

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,12 +23,20 @@ export interface Props {
2323
href?: string;
2424
icon: Function;
2525
variant?: 'ghost' | 'solid';
26+
target?: string;
2627
}
27-
const { colorScheme, style, href, icon, variant = 'solid' } = Astro.props as Props;
28+
const {
29+
colorScheme,
30+
style,
31+
href,
32+
icon,
33+
variant = 'solid',
34+
target = '_blank',
35+
} = Astro.props as Props;
2836
---
2937

3038
<div role="presentation" class:list={['button', `button-${colorScheme}`, variant]} {style}>
31-
<a href={href} target="_blank">
39+
<a href={href} target={target}>
3240
{icon && <Astro.props.icon />}
3341
<slot />
3442
</a>

0 commit comments

Comments
 (0)