@rxova/brand 0.8.1 → 0.8.2
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/package.json
CHANGED
|
@@ -35,11 +35,15 @@ interface Props {
|
|
|
35
35
|
/**
|
|
36
36
|
* The standalone surfaces to list under "Site", below Home.
|
|
37
37
|
*
|
|
38
|
-
*
|
|
39
|
-
*
|
|
40
|
-
*
|
|
41
|
-
*
|
|
42
|
-
*
|
|
38
|
+
* It is a prop because only the umbrella repo knows which *mounted* surfaces
|
|
39
|
+
* are actually deployed — `sources.json` gates the mount and the link
|
|
40
|
+
* together — and a hardcoded list advertises a 404 for a surface whose first
|
|
41
|
+
* build has not landed yet. Same reason `Header` takes `items`.
|
|
42
|
+
*
|
|
43
|
+
* The default covers the caller that cannot know: a docs site, or this
|
|
44
|
+
* package's own shell. /about is safe to include there unconditionally
|
|
45
|
+
* because it is a page of the landing's Astro build rather than a mount —
|
|
46
|
+
* there is no artifact to wait for, so it exists whenever the landing does.
|
|
43
47
|
*/
|
|
44
48
|
site?: readonly SiteLink[]
|
|
45
49
|
}
|
|
@@ -51,6 +55,7 @@ const year = new Date().getFullYear()
|
|
|
51
55
|
const surfaces: readonly SiteLink[] = site ?? [
|
|
52
56
|
{ label: 'Blog', href: siteUrl('/blog') },
|
|
53
57
|
{ label: 'Updates', href: siteUrl('/updates') },
|
|
58
|
+
{ label: 'About', href: siteUrl('/about') },
|
|
54
59
|
]
|
|
55
60
|
---
|
|
56
61
|
|
|
@@ -39,6 +39,12 @@ const canonical = `${RXOVA_ORIGIN}${path}`
|
|
|
39
39
|
*/
|
|
40
40
|
const base = import.meta.env.BASE_URL.replace(/\/$/, '')
|
|
41
41
|
|
|
42
|
+
/**
|
|
43
|
+
* The surfaces that can be the *current* one here — the mounted ones this shell
|
|
44
|
+
* is ever built for. /about is not among them: it is a page of the landing's own
|
|
45
|
+
* Astro build rather than a mount, so it can never match `base`, and it is added
|
|
46
|
+
* as a fixed trailing item below.
|
|
47
|
+
*/
|
|
42
48
|
const SECTIONS = [
|
|
43
49
|
{ label: 'Blog', path: '/blog' },
|
|
44
50
|
{ label: 'Updates', path: '/updates' },
|
|
@@ -65,6 +71,12 @@ const items: HeaderItem[] = [
|
|
|
65
71
|
? { label: section.label, href: inside(), current: true }
|
|
66
72
|
: { label: section.label, href: siteUrl(section.path) },
|
|
67
73
|
),
|
|
74
|
+
// Fixed trailing item, like Projects is a fixed leading one, and for the same
|
|
75
|
+
// reason: it belongs to the landing's build, so it is always deployed and can
|
|
76
|
+
// never be the current surface here. The landing grew an About entry and these
|
|
77
|
+
// two did not, which left a reader on a post with no way to reach it — the
|
|
78
|
+
// failure mode this shell exists to prevent.
|
|
79
|
+
{ label: 'About', href: siteUrl('/about') },
|
|
68
80
|
]
|
|
69
81
|
---
|
|
70
82
|
|