@treeseed/core 0.10.21 → 0.11.0
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 +69 -125
- package/dist/content.js +1 -0
- package/dist/dev-watch.js +2 -1
- package/dist/dev.d.ts +1 -1
- package/dist/dev.js +51 -35
- package/dist/pages/404.astro +1 -1
- package/dist/pages/[slug].astro +4 -4
- package/dist/pages/agents/[slug].astro +3 -3
- package/dist/pages/agents/index.astro +3 -3
- package/dist/pages/books/[slug].astro +3 -3
- package/dist/pages/books/index.astro +3 -3
- package/dist/pages/contact.astro +2 -2
- package/dist/pages/decisions/[slug].astro +3 -3
- package/dist/pages/decisions/index.astro +3 -3
- package/dist/pages/docs-runtime/[...slug].astro +3 -3
- package/dist/pages/docs-runtime/index.astro +3 -3
- package/dist/pages/index.astro +11 -11
- package/dist/pages/notes/[slug].astro +3 -3
- package/dist/pages/notes/index.astro +3 -3
- package/dist/pages/objectives/[slug].astro +3 -3
- package/dist/pages/objectives/index.astro +3 -3
- package/dist/pages/people/[slug].astro +3 -3
- package/dist/pages/people/index.astro +3 -3
- package/dist/pages/proposals/[slug].astro +3 -3
- package/dist/pages/proposals/index.astro +3 -3
- package/dist/pages/questions/[slug].astro +3 -3
- package/dist/pages/questions/index.astro +3 -3
- package/dist/pages/ui/index.astro +23 -23
- package/dist/platform-resources.js +5 -1
- package/dist/scripts/build-dist.js +2 -0
- package/dist/scripts/release-verify.js +24 -2
- package/dist/scripts/workspace-bootstrap.js +3 -0
- package/dist/site.js +49 -11
- package/dist/styles/global.css +5 -5
- package/dist/templates.d.ts +2 -0
- package/dist/templates.js +8 -6
- package/package.json +3 -45
- package/templates/github/deploy-web.workflow.yml +36 -2
- package/dist/components/DevWatchReload.astro +0 -45
- package/dist/components/SiteTitle.astro +0 -51
- package/dist/components/content/ContentStatusLegend.astro +0 -18
- package/dist/components/content/StatusBadge.astro +0 -11
- package/dist/components/docs/BookFontControls.astro +0 -180
- package/dist/components/docs/DesktopSidebarToggle.astro +0 -88
- package/dist/components/docs/DownloadBook.astro +0 -34
- package/dist/components/docs/Footer.astro +0 -112
- package/dist/components/docs/Header.astro +0 -157
- package/dist/components/docs/PageFrame.astro +0 -260
- package/dist/components/docs/PageSidebar.astro +0 -63
- package/dist/components/docs/PageTitle.astro +0 -39
- package/dist/components/docs/Sidebar.astro +0 -41
- package/dist/components/docs/ThemeSelect.astro +0 -5
- package/dist/components/forms/ContactForm.astro +0 -233
- package/dist/components/forms/FooterSubscribeForm.astro +0 -188
- package/dist/components/site/BookList.astro +0 -27
- package/dist/components/site/CTASection.astro +0 -24
- package/dist/components/site/ChronicleList.astro +0 -33
- package/dist/components/site/Hero.astro +0 -18
- package/dist/components/site/NotesList.astro +0 -29
- package/dist/components/site/PathCard.astro +0 -16
- package/dist/components/site/ProfileList.astro +0 -30
- package/dist/components/site/PublishedContentBody.astro +0 -5
- package/dist/components/site/RouteNotFound.astro +0 -25
- package/dist/components/site/SectionIntro.astro +0 -9
- package/dist/components/site/StageBanner.astro +0 -8
- package/dist/components/site/TrustCallout.astro +0 -9
- package/dist/components/starlight.js +0 -6
- package/dist/components/ui/data/ActionList.astro +0 -51
- package/dist/components/ui/data/Badge.astro +0 -19
- package/dist/components/ui/data/DataTable.astro +0 -51
- package/dist/components/ui/data/KeyValueList.astro +0 -28
- package/dist/components/ui/data/MetricCard.astro +0 -25
- package/dist/components/ui/data/MetricGrid.astro +0 -27
- package/dist/components/ui/data/StatusPill.astro +0 -20
- package/dist/components/ui/forms/Button.astro +0 -59
- package/dist/components/ui/forms/Field.astro +0 -39
- package/dist/components/ui/forms/FormActions.astro +0 -12
- package/dist/components/ui/forms/PasswordMeter.astro +0 -80
- package/dist/components/ui/forms/RadioGroup.astro +0 -55
- package/dist/components/ui/forms/Select.astro +0 -47
- package/dist/components/ui/forms/TextInput.astro +0 -58
- package/dist/components/ui/forms/Textarea.astro +0 -45
- package/dist/components/ui/layout/PageHeader.astro +0 -45
- package/dist/components/ui/shell/AppShell.astro +0 -130
- package/dist/components/ui/shell/BottomNav.astro +0 -42
- package/dist/components/ui/shell/ProjectHeader.astro +0 -66
- package/dist/components/ui/shell/PublicFooter.astro +0 -39
- package/dist/components/ui/shell/PublicShell.astro +0 -184
- package/dist/components/ui/shell/RailNav.astro +0 -42
- package/dist/components/ui/shell/ShellIconLink.astro +0 -30
- package/dist/components/ui/shell/TopBar.astro +0 -52
- package/dist/components/ui/surface/Card.astro +0 -46
- package/dist/components/ui/surface/EmptyState.astro +0 -45
- package/dist/components/ui/surface/Panel.astro +0 -54
- package/dist/components/ui/theme/ThemeMenu.astro +0 -58
- package/dist/components/ui/theme/ThemePreviewSwatch.astro +0 -18
- package/dist/components/ui/theme/ThemeScript.astro +0 -112
- package/dist/components/ui/theme/ThemeSelector.astro +0 -202
- package/dist/components/ui/types.js +0 -0
- package/dist/layouts/AuthoredEntryLayout.astro +0 -195
- package/dist/layouts/BookLayout.astro +0 -35
- package/dist/layouts/BridgeLayout.astro +0 -11
- package/dist/layouts/ContentLayout.astro +0 -24
- package/dist/layouts/MainLayout.astro +0 -76
- package/dist/layouts/NoteLayout.astro +0 -26
- package/dist/layouts/ProfileLayout.astro +0 -85
- package/dist/styles/app-shell.css +0 -626
- package/dist/styles/forms.css +0 -274
- package/dist/styles/theme.css +0 -198
- package/dist/styles/tokens.css +0 -65
- package/dist/styles/ui.css +0 -551
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
import MainLayout from './MainLayout.astro';
|
|
3
|
-
|
|
4
|
-
const { entry, currentPath } = Astro.props;
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
<MainLayout title={entry.title} description={entry.description} currentPath={currentPath}>
|
|
8
|
-
<div class="space-y-10">
|
|
9
|
-
<slot />
|
|
10
|
-
</div>
|
|
11
|
-
</MainLayout>
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
import MainLayout from './MainLayout.astro';
|
|
3
|
-
import StatusBadge from '../components/content/StatusBadge.astro';
|
|
4
|
-
import StageBanner from '../components/site/StageBanner.astro';
|
|
5
|
-
|
|
6
|
-
const { entry, currentPath } = Astro.props;
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
<MainLayout title={entry.title} description={entry.description} currentPath={currentPath}>
|
|
10
|
-
<div class="space-y-8">
|
|
11
|
-
<StageBanner />
|
|
12
|
-
<section class="max-w-5xl space-y-5 border-b border-[color:var(--ts-color-border)] pb-8">
|
|
13
|
-
<div class="flex flex-wrap items-center gap-3">
|
|
14
|
-
<StatusBadge status={entry.status} />
|
|
15
|
-
<p class="text-sm font-medium text-[color:var(--ts-color-text-subtle)]">Updated {entry.updated.toISOString().slice(0, 10)}</p>
|
|
16
|
-
</div>
|
|
17
|
-
<h1 class="max-w-4xl font-serif text-5xl font-bold tracking-tight text-[color:var(--ts-color-text)] md:text-7xl">{entry.title}</h1>
|
|
18
|
-
<p class="max-w-4xl text-xl leading-10 text-[color:var(--ts-color-text-muted)]">{entry.summary}</p>
|
|
19
|
-
</section>
|
|
20
|
-
<article class="prose max-w-4xl">
|
|
21
|
-
<slot />
|
|
22
|
-
</article>
|
|
23
|
-
</div>
|
|
24
|
-
</MainLayout>
|
|
@@ -1,76 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
import '../styles/global.css';
|
|
3
|
-
import PublicShell from '../components/ui/shell/PublicShell.astro';
|
|
4
|
-
import ShellIconLink from '../components/ui/shell/ShellIconLink.astro';
|
|
5
|
-
import { SITE_NAV_GROUPS } from '../utils/routes';
|
|
6
|
-
import { SITE } from '../utils/seo';
|
|
7
|
-
import { SITE_THEME_CSS } from '../utils/site-config';
|
|
8
|
-
import { normalizeThemePreference } from '../utils/theme.js';
|
|
9
|
-
|
|
10
|
-
const { title, description, currentPath = '/' } = Astro.props;
|
|
11
|
-
const appearance = normalizeThemePreference({
|
|
12
|
-
scheme: SITE.theme?.defaultScheme,
|
|
13
|
-
mode: SITE.theme?.defaultMode,
|
|
14
|
-
});
|
|
15
|
-
const navItems = SITE_NAV_GROUPS.flatMap((group) => group.items);
|
|
16
|
-
---
|
|
17
|
-
|
|
18
|
-
<PublicShell
|
|
19
|
-
title={title ? `${title} | ${SITE.name}` : SITE.name}
|
|
20
|
-
description={description ?? SITE.description}
|
|
21
|
-
currentPath={currentPath}
|
|
22
|
-
appearance={appearance}
|
|
23
|
-
brand={{
|
|
24
|
-
name: SITE.name,
|
|
25
|
-
tag: SITE.statement,
|
|
26
|
-
href: '/',
|
|
27
|
-
logoSrc: SITE.logo.src,
|
|
28
|
-
logoAlt: SITE.logo.alt,
|
|
29
|
-
}}
|
|
30
|
-
navItems={navItems}
|
|
31
|
-
navGroups={SITE_NAV_GROUPS}
|
|
32
|
-
contentWidth="content"
|
|
33
|
-
>
|
|
34
|
-
<Fragment slot="head">
|
|
35
|
-
{SITE_THEME_CSS && <style is:global>{SITE_THEME_CSS}</style>}
|
|
36
|
-
</Fragment>
|
|
37
|
-
<Fragment slot="actions">
|
|
38
|
-
<ShellIconLink href="/app/" label="Manager" icon="manager" />
|
|
39
|
-
<a
|
|
40
|
-
href={SITE.githubRepository}
|
|
41
|
-
target="_blank"
|
|
42
|
-
rel="noreferrer"
|
|
43
|
-
aria-label={`${SITE.name} GitHub repository`}
|
|
44
|
-
title={`${SITE.name} GitHub repository`}
|
|
45
|
-
class="ts-public-shell__icon-link"
|
|
46
|
-
>
|
|
47
|
-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" aria-hidden="true" focusable="false">
|
|
48
|
-
<path d="M8 0C3.58 0 0 3.67 0 8.2c0 3.63 2.29 6.7 5.47 7.78.4.08.55-.18.55-.39 0-.2-.01-.85-.01-1.54-2.01.38-2.53-.5-2.69-.95-.09-.24-.48-.95-.82-1.15-.28-.15-.68-.54-.01-.55.63-.01 1.08.59 1.23.84.72 1.24 1.87.89 2.33.68.07-.54.28-.89.5-1.09-1.78-.21-3.64-.92-3.64-4.08 0-.9.31-1.64.82-2.22-.08-.21-.36-1.06.08-2.2 0 0 .67-.22 2.2.85A7.34 7.34 0 0 1 8 4.83c.68 0 1.37.09 2.01.27 1.53-1.07 2.2-.85 2.2-.85.44 1.14.16 1.99.08 2.2.51.58.82 1.31.82 2.22 0 3.17-1.87 3.87-3.65 4.08.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.19 0 .21.15.48.55.39A8.22 8.22 0 0 0 16 8.2C16 3.67 12.42 0 8 0Z" />
|
|
49
|
-
</svg>
|
|
50
|
-
</a>
|
|
51
|
-
<a
|
|
52
|
-
href={SITE.discordLink}
|
|
53
|
-
target="_blank"
|
|
54
|
-
rel="noreferrer"
|
|
55
|
-
aria-label={`${SITE.name} Discord`}
|
|
56
|
-
title={`${SITE.name} Discord`}
|
|
57
|
-
class="ts-public-shell__icon-link"
|
|
58
|
-
>
|
|
59
|
-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" focusable="false">
|
|
60
|
-
<path d="M20.317 4.369A19.791 19.791 0 0 0 15.885 3c-.191.328-.403.762-.554 1.104a18.27 18.27 0 0 0-5.314 0A11.64 11.64 0 0 0 9.463 3a19.736 19.736 0 0 0-4.433 1.369C2.227 8.617 1.468 12.759 1.848 16.845a19.9 19.9 0 0 0 5.437 2.755c.438-.6.825-1.236 1.157-1.902-.637-.241-1.246-.545-1.818-.9.152-.111.3-.229.444-.347 3.507 1.648 7.316 1.648 10.782 0 .145.118.293.236.444.347-.573.355-1.183.659-1.82.9.332.666.719 1.302 1.158 1.902a19.87 19.87 0 0 0 5.438-2.755c.446-4.737-.762-8.842-3.753-12.476ZM9.954 14.379c-1.053 0-1.918-.966-1.918-2.153 0-1.188.845-2.153 1.918-2.153 1.082 0 1.938.975 1.918 2.153 0 1.187-.846 2.153-1.918 2.153Zm4.092 0c-1.053 0-1.918-.966-1.918-2.153 0-1.188.845-2.153 1.918-2.153 1.082 0 1.938.975 1.918 2.153 0 1.187-.836 2.153-1.918 2.153Z" />
|
|
61
|
-
</svg>
|
|
62
|
-
</a>
|
|
63
|
-
<a
|
|
64
|
-
href="/contact/"
|
|
65
|
-
aria-label={`Contact ${SITE.name}`}
|
|
66
|
-
title={`Contact ${SITE.name}`}
|
|
67
|
-
class="ts-public-shell__icon-link ts-public-shell__icon-link--stroke"
|
|
68
|
-
>
|
|
69
|
-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" focusable="false">
|
|
70
|
-
<path d="M3.75 6.75h16.5v10.5H3.75z" />
|
|
71
|
-
<path d="m4.5 7.5 7.5 6 7.5-6" />
|
|
72
|
-
</svg>
|
|
73
|
-
</a>
|
|
74
|
-
</Fragment>
|
|
75
|
-
<slot />
|
|
76
|
-
</PublicShell>
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
import MainLayout from './MainLayout.astro';
|
|
3
|
-
import StatusBadge from '../components/content/StatusBadge.astro';
|
|
4
|
-
|
|
5
|
-
const { note } = Astro.props;
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
<MainLayout title={note.title} description={note.description} currentPath="/notes/">
|
|
9
|
-
<article class="max-w-4xl space-y-8">
|
|
10
|
-
<div class="space-y-4 border-b border-[color:var(--ts-color-border)] pb-8">
|
|
11
|
-
<div class="flex flex-wrap items-center gap-3">
|
|
12
|
-
<StatusBadge status={note.status} />
|
|
13
|
-
<p class="text-sm font-medium text-[color:var(--ts-color-text-subtle)]">{note.date.toISOString().slice(0, 10)}</p>
|
|
14
|
-
<p class="text-sm text-[color:var(--ts-color-text-subtle)]">{note.author}</p>
|
|
15
|
-
</div>
|
|
16
|
-
<h1 class="max-w-4xl font-serif text-5xl font-bold tracking-tight text-[color:var(--ts-color-text)] md:text-6xl">{note.title}</h1>
|
|
17
|
-
<p class="max-w-3xl text-xl leading-10 text-[color:var(--ts-color-text-muted)]">{note.summary}</p>
|
|
18
|
-
{note.tags.length > 0 && (
|
|
19
|
-
<p class="text-sm uppercase tracking-[0.14em] text-[color:var(--ts-color-accent-strong)]">{note.tags.join(' / ')}</p>
|
|
20
|
-
)}
|
|
21
|
-
</div>
|
|
22
|
-
<div class="prose">
|
|
23
|
-
<slot />
|
|
24
|
-
</div>
|
|
25
|
-
</article>
|
|
26
|
-
</MainLayout>
|
|
@@ -1,85 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
import MainLayout from './MainLayout.astro';
|
|
3
|
-
import StatusBadge from '../components/content/StatusBadge.astro';
|
|
4
|
-
import type { RuntimeReferenceEntry } from '../utils/site-content-runtime';
|
|
5
|
-
|
|
6
|
-
function entryTitle(entry: RuntimeReferenceEntry) {
|
|
7
|
-
return entry.data.title ?? entry.data.name ?? entry.id;
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
const {
|
|
11
|
-
entry,
|
|
12
|
-
currentPath,
|
|
13
|
-
metaLabel,
|
|
14
|
-
metaValue,
|
|
15
|
-
relatedQuestions = [],
|
|
16
|
-
relatedObjectives = [],
|
|
17
|
-
} = Astro.props as {
|
|
18
|
-
entry: {
|
|
19
|
-
name: string;
|
|
20
|
-
description: string;
|
|
21
|
-
summary: string;
|
|
22
|
-
status?: 'live' | 'in progress' | 'exploratory' | 'planned' | 'speculative';
|
|
23
|
-
tags: string[];
|
|
24
|
-
links: { label: string; href: string }[];
|
|
25
|
-
};
|
|
26
|
-
currentPath: string;
|
|
27
|
-
metaLabel: string;
|
|
28
|
-
metaValue: string;
|
|
29
|
-
relatedQuestions?: RuntimeReferenceEntry[];
|
|
30
|
-
relatedObjectives?: RuntimeReferenceEntry[];
|
|
31
|
-
};
|
|
32
|
-
---
|
|
33
|
-
|
|
34
|
-
<MainLayout title={entry.name} description={entry.description} currentPath={currentPath}>
|
|
35
|
-
<article class="max-w-4xl space-y-8">
|
|
36
|
-
<div class="space-y-4 border-b border-[color:var(--ts-color-border)] pb-8">
|
|
37
|
-
<div class="flex flex-wrap items-center gap-3">
|
|
38
|
-
{'status' in entry && entry.status && <StatusBadge status={entry.status} />}
|
|
39
|
-
<p class="text-sm font-medium text-[color:var(--ts-color-text-subtle)]">{metaLabel}: {metaValue}</p>
|
|
40
|
-
</div>
|
|
41
|
-
<h1 class="max-w-4xl font-serif text-5xl font-bold tracking-tight text-[color:var(--ts-color-text)] md:text-6xl">{entry.name}</h1>
|
|
42
|
-
<p class="max-w-3xl text-xl leading-10 text-[color:var(--ts-color-text-muted)]">{entry.summary}</p>
|
|
43
|
-
{entry.tags.length > 0 && (
|
|
44
|
-
<p class="text-sm uppercase tracking-[0.14em] text-[color:var(--ts-color-accent-strong)]">{entry.tags.join(' / ')}</p>
|
|
45
|
-
)}
|
|
46
|
-
</div>
|
|
47
|
-
<div class="grid gap-6 md:grid-cols-[1.3fr_0.7fr]">
|
|
48
|
-
<div class="prose">
|
|
49
|
-
<slot />
|
|
50
|
-
</div>
|
|
51
|
-
<div class="space-y-6">
|
|
52
|
-
{entry.links.length > 0 && (
|
|
53
|
-
<div class="border border-[color:var(--ts-color-border)] bg-[color:var(--ts-color-surface)] p-5">
|
|
54
|
-
<p class="text-sm font-semibold uppercase tracking-[0.14em] text-[color:var(--ts-color-info-text)]">Links</p>
|
|
55
|
-
<ul class="mt-3 space-y-2 text-[color:var(--ts-color-text-muted)]">
|
|
56
|
-
{entry.links.map((link) => (
|
|
57
|
-
<li><a href={link.href} class="hover:text-[color:var(--ts-color-text)]">{link.label}</a></li>
|
|
58
|
-
))}
|
|
59
|
-
</ul>
|
|
60
|
-
</div>
|
|
61
|
-
)}
|
|
62
|
-
{relatedQuestions.length > 0 && (
|
|
63
|
-
<div class="border border-[color:var(--ts-color-border)] bg-[color:var(--ts-color-surface)] p-5">
|
|
64
|
-
<p class="text-sm font-semibold uppercase tracking-[0.14em] text-[color:var(--ts-color-info-text)]">Questions</p>
|
|
65
|
-
<ul class="mt-3 space-y-2 text-[color:var(--ts-color-text-muted)]">
|
|
66
|
-
{relatedQuestions.map((question) => (
|
|
67
|
-
<li><a href={`/questions/${question.id}/`} class="hover:text-[color:var(--ts-color-text)]">{entryTitle(question)}</a></li>
|
|
68
|
-
))}
|
|
69
|
-
</ul>
|
|
70
|
-
</div>
|
|
71
|
-
)}
|
|
72
|
-
{relatedObjectives.length > 0 && (
|
|
73
|
-
<div class="border border-[color:var(--ts-color-border)] bg-[color:var(--ts-color-surface)] p-5">
|
|
74
|
-
<p class="text-sm font-semibold uppercase tracking-[0.14em] text-[color:var(--ts-color-info-text)]">Objectives</p>
|
|
75
|
-
<ul class="mt-3 space-y-2 text-[color:var(--ts-color-text-muted)]">
|
|
76
|
-
{relatedObjectives.map((objective) => (
|
|
77
|
-
<li><a href={`/objectives/${objective.id}/`} class="hover:text-[color:var(--ts-color-text)]">{entryTitle(objective)}</a></li>
|
|
78
|
-
))}
|
|
79
|
-
</ul>
|
|
80
|
-
</div>
|
|
81
|
-
)}
|
|
82
|
-
</div>
|
|
83
|
-
</div>
|
|
84
|
-
</article>
|
|
85
|
-
</MainLayout>
|