@hagicode/hagilight-starlight 0.2.3-dev.23.1.f56e71c → 0.2.3-dev.25.1.22dbabb
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Footer.astro +11 -1
- package/index.mjs +15 -2
- package/locales.mjs +1 -1
- package/package.json +2 -2
package/Footer.astro
CHANGED
|
@@ -7,12 +7,22 @@ interface Props {
|
|
|
7
7
|
locale?: string;
|
|
8
8
|
links?: SiteLinksOptions;
|
|
9
9
|
rssFeedUrl?: string;
|
|
10
|
+
rssLocaleFeedUrls?: Readonly<Record<string, string>>;
|
|
10
11
|
}
|
|
11
12
|
|
|
12
|
-
const {
|
|
13
|
+
const {
|
|
14
|
+
locale = Astro.locals?.starlightRoute?.locale,
|
|
15
|
+
links,
|
|
16
|
+
rssFeedUrl,
|
|
17
|
+
rssLocaleFeedUrls,
|
|
18
|
+
} = Astro.props;
|
|
19
|
+
const currentLanguage = Astro.locals?.starlightRoute?.lang;
|
|
13
20
|
const resolvedLinks = resolveSiteLinks(locale, {
|
|
14
21
|
...links,
|
|
15
22
|
...(rssFeedUrl === undefined ? {} : { rssFeedUrl }),
|
|
23
|
+
...(currentLanguage && rssLocaleFeedUrls?.[currentLanguage]
|
|
24
|
+
? { rssLocaleFeedUrl: rssLocaleFeedUrls[currentLanguage] }
|
|
25
|
+
: {}),
|
|
16
26
|
});
|
|
17
27
|
---
|
|
18
28
|
|
package/index.mjs
CHANGED
|
@@ -92,6 +92,7 @@ function createConfiguredIntegration(
|
|
|
92
92
|
instanceId,
|
|
93
93
|
serializedOptions,
|
|
94
94
|
rssConfig,
|
|
95
|
+
rssLocaleFeedUrls,
|
|
95
96
|
componentIds,
|
|
96
97
|
getConfiguredRssFeed,
|
|
97
98
|
generateRss,
|
|
@@ -134,6 +135,7 @@ import options from '${optionsId}';
|
|
|
134
135
|
locale={Astro.locals?.starlightRoute?.locale}
|
|
135
136
|
links={options.links}
|
|
136
137
|
rssFeedUrl={options.rssFeedUrl}
|
|
138
|
+
rssLocaleFeedUrls={options.rssLocaleFeedUrls}
|
|
137
139
|
/>
|
|
138
140
|
${promotionRender}
|
|
139
141
|
${analyticsRender}
|
|
@@ -185,6 +187,7 @@ const isNotFound = /(?:^|\\/)404(?:\\.html)?\\/?$/u.test(Astro.url.pathname);
|
|
|
185
187
|
return `export default ${JSON.stringify({
|
|
186
188
|
...serializedOptions,
|
|
187
189
|
rssFeedUrl: getConfiguredRssFeed(),
|
|
190
|
+
rssLocaleFeedUrls,
|
|
188
191
|
})};`;
|
|
189
192
|
}
|
|
190
193
|
if (moduleId === rssConfigId) return `export default ${JSON.stringify(rssConfig)};`;
|
|
@@ -326,13 +329,23 @@ export default function hagilight(options = {}) {
|
|
|
326
329
|
throw new Error('Hagilight RSS requires the Astro site option. Set site or disable RSS with rss: { enabled: false }.');
|
|
327
330
|
}
|
|
328
331
|
const rssLocales = generateRss ? resolveRssLocales(config.locales) : [];
|
|
329
|
-
const
|
|
330
|
-
? new URL(
|
|
332
|
+
const baseUrl = generateRss
|
|
333
|
+
? new URL((astroConfig.base ?? '/').replace(/\/?$/u, '/'), astroConfig.site)
|
|
331
334
|
: undefined;
|
|
335
|
+
const rssFeedUrl = baseUrl ? new URL('rss.xml', baseUrl).toString() : undefined;
|
|
336
|
+
const rssLocaleFeedUrls = baseUrl
|
|
337
|
+
? Object.fromEntries(rssLocales
|
|
338
|
+
.filter(({ filename }) => filename !== 'en')
|
|
339
|
+
.map(({ lang, filename }) => [
|
|
340
|
+
lang,
|
|
341
|
+
new URL(`rss.${filename}.xml`, baseUrl).toString(),
|
|
342
|
+
]))
|
|
343
|
+
: {};
|
|
332
344
|
addIntegration(createConfiguredIntegration(
|
|
333
345
|
instanceId,
|
|
334
346
|
serializedOptions,
|
|
335
347
|
{ options: rssOptions, locales: rssLocales },
|
|
348
|
+
rssLocaleFeedUrls,
|
|
336
349
|
componentIds,
|
|
337
350
|
() => getRssFeedUrl(config) ?? rssFeedUrl,
|
|
338
351
|
generateRss,
|
package/locales.mjs
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hagicode/hagilight-starlight",
|
|
3
|
-
"version": "0.2.3-dev.
|
|
3
|
+
"version": "0.2.3-dev.25.1.22dbabb",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Starlight customizations for HagiCode documentation",
|
|
6
6
|
"repository": {
|
|
@@ -37,7 +37,7 @@
|
|
|
37
37
|
],
|
|
38
38
|
"dependencies": {
|
|
39
39
|
"@astrojs/rss": "^4.0.19",
|
|
40
|
-
"@hagicode/hagilight": "0.2.3-dev.
|
|
40
|
+
"@hagicode/hagilight": "0.2.3-dev.25.1.22dbabb"
|
|
41
41
|
},
|
|
42
42
|
"peerDependencies": {
|
|
43
43
|
"@astrojs/starlight": "^0.42.4",
|