@master/internal-site 0.1.1 → 0.1.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/README.md CHANGED
@@ -67,3 +67,14 @@ The CSS-specific subpaths require the matching optional compiler, tooling, schem
67
67
  From the Master repository, run `bun run build:packages`, `bun run --cwd packages/internal-site type-check` and `bun run --cwd packages/internal-site test`. Astro checks `.astro` implementations and Svelte checks interactive components separately. The root `build` builds the Node entrypoints before the site.
68
68
 
69
69
  Before publishing, inspect the tarball, install it in the Master CSS consumer and validate both sites, including local CSS imports, themes, mobile navigation and lazy page styles. Publish an immutable version, update exact consumer pins and lockfiles, then deploy preview builds. Roll back by restoring the previous dependency version and deployment; do not unpublish a release in use.
70
+
71
+
72
+ ## Publishing
73
+
74
+ Master's `publish.yml` workflow validates the site and packages, retains the
75
+ packed archives, then publishes those exact bytes through npm Trusted Publishing.
76
+ The trusted publisher is GitHub repository `master-co/master`, workflow
77
+ `publish.yml`, with no GitHub environment. Versions are committed before dispatch;
78
+ consumers upgrade exact pins after registry integrity verification. No npm token
79
+ is stored in GitHub. Master remains private, so these releases use OIDC
80
+ without public provenance attestations.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@master/internal-site",
3
- "version": "0.1.1",
3
+ "version": "0.1.2",
4
4
  "type": "module",
5
5
  "description": "First-party Astro and Svelte website framework for Master sites.",
6
6
  "engines": {
@@ -23,7 +23,7 @@
23
23
  <script lang="ts">
24
24
  import '../../styles/docs-shell/footer.css'
25
25
  import clsx from 'clsx'
26
- import Link from './Link.svelte'
26
+ import FooterNavLink from './FooterLink.svelte'
27
27
  import LanguageSelect from './LanguageSelect.svelte'
28
28
  import ThemeSelect from './ThemeSelect.svelte'
29
29
  import { useThemeMode } from '../contexts/theme-mode.svelte'
@@ -53,7 +53,7 @@
53
53
  <ul>
54
54
  {#each group.links as link (link.href || link.name)}
55
55
  <li>
56
- <Link href={link.href} disabled={link.disabled}>{t(link.name)}</Link>
56
+ <FooterNavLink href={link.href} disabled={link.disabled}>{t(link.name)}</FooterNavLink>
57
57
  </li>
58
58
  {/each}
59
59
  </ul>
@@ -0,0 +1,17 @@
1
+ <script lang="ts">
2
+ import type { Snippet } from 'svelte'
3
+ import IconArrowUpRight from '@tabler/icons-svelte-runes/icons/arrow-up-right'
4
+ import Link from './Link.svelte'
5
+ import '../../styles/docs-shell/footer-link.css'
6
+
7
+ let { href, disabled, class: className, children }: {
8
+ href?: string
9
+ disabled?: boolean
10
+ class?: string
11
+ children?: Snippet
12
+ } = $props()
13
+ </script>
14
+
15
+ <Link {href} {disabled} class={className}>
16
+ <span>{@render children?.()}{#if href?.startsWith('http') && !disabled}<span class="ui-footer-link-mark" aria-hidden="true"><IconArrowUpRight size={10} stroke={1.5} /></span>{/if}</span>
17
+ </Link>
@@ -6,7 +6,7 @@
6
6
  import IconMoon from '@tabler/icons-svelte-runes/icons/moon'
7
7
  import IconSun from '@tabler/icons-svelte-runes/icons/sun'
8
8
  import LanguageSelect from '@master/internal-site/components/LanguageSelect.svelte'
9
- import Link from '@master/internal-site/components/Link.svelte'
9
+ import FooterNavLink from '../docs-shell/components/FooterLink.svelte'
10
10
  import ThemeSelect from '@master/internal-site/components/ThemeSelect.svelte'
11
11
  import { useThemeMode } from '@master/internal-site/contexts/theme-mode.svelte'
12
12
  import { getSite } from '@master/internal-site/site'
@@ -32,7 +32,7 @@
32
32
  <ul class="home-footer-links">
33
33
  {#each group.links as link (link.href)}
34
34
  <li>
35
- <Link class="home-footer-link" href={link.href}>{t(link.name)}</Link>
35
+ <FooterNavLink class="home-footer-link" href={link.href} disabled={link.disabled}>{t(link.name)}</FooterNavLink>
36
36
  </li>
37
37
  {/each}
38
38
  </ul>
@@ -0,0 +1,5 @@
1
+ @layer components {
2
+ /* Keep the raised mark with its text inside both inline and flex footer links. */
3
+ .ui-footer-link-mark { display: inline-block; width: .625rem; height: .625rem; margin-inline-start: .1875rem; vertical-align: .25em; line-height: 0; }
4
+ .ui-footer-link-mark > svg { display: block; width: 100%; height: 100%; }
5
+ }