@orangecheck/app-design 1.7.0 → 1.8.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/dist/index.d.mts CHANGED
@@ -2,12 +2,12 @@ export { APP_ATTRIBUTE, APP_ID, appColors, appFonts, darkPalette, lightPalette }
2
2
  export { Accordion, AccordionItem, Badge, BadgeProps, Button, ButtonProps, Card, CardContent, CardDescription, CardFooter, CardHeader, CardNumeral, CardProps, CardTitle, Checkbox, ConfirmOptions, Density, DensityProvider, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogHost, DialogTitle, DialogTrigger, DropdownMenu, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuTrigger, Field, FieldControlProps, FieldProps, Input, InputProps, Kbd, Label, Pagination, Popover, PopoverAnchor, PopoverContent, PopoverTrigger, PromptOptions, QrCode, RadioGroup, RadioGroupItem, ScrollFade, ScrollFadeProps, Select, SelectContent, SelectGroup, SelectItem, SelectTrigger, SelectValue, Separator, Sheet, SheetClose, SheetContent, SheetDescription, SheetTitle, SheetTrigger, Skeleton, Spinner, StatusDot, StatusPill, Switch, Tabs, TabsContent, TabsList, TabsTrigger, Textarea, Toaster, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, badgeVariants, buttonVariants, cardVariants, cn, confirm, prompt, useDensity, useTimedOut } from './primitives.mjs';
3
3
  export { S as Statement, a as Status, b as StatusBadge, c as StatusBadgeProps, s as statusWord } from './status-badge-BBbCO6ZA.mjs';
4
4
  export { AppIcon, AppIconProps, Crowd, CrowdProps, HalftoneCanvas, HalftoneCanvasProps, HalftoneSphere, HalftoneSphereProps, IsoCheck, IsoCheckProps, Lockup, LockupProps, MARK_FACES, Mark, MarkProps, SPHERE_GRADIENT, Tone, portraitTone } from './brand.mjs';
5
- export { Accent, ActivityItem, ActivityList, BrowserFrame, ChartFrame, ChartTone, CheckState, ChoiceCard, ChoiceGroup, Closing, Column, CommandDialog, Container, CopyButton, CopyButtonProps, CountdownRing, DataTable, Display, DisplayProps, EmptyLine, EmptyState, Endpoint, EndpointList, ErrorBoundary, ErrorPage, Eyebrow, FactBlock, FactRow, FactRows, Faq, FloatChip, Footnote, HashChip, HudCard, KeyValueItem, KeyValueList, Lead, LegalBlock, LegalDocument, LegalSource, LegendItem, ListCard, LoadingBlock, LockedPreview, Monogram, Notice, PackageCard, PackageItem, PageHeader, Panel, PhoneFrame, PlanCard, ProgressStep, ProgressSteps, ProofStrip, Prose, Reveal, Sats, SatsFigure, SatsProps, SatsTextOptions, ScrollStory, SearchButton, SearchDialog, SearchDialogProps, SearchGroup, SearchQuery, SearchResult, Section, SectionHeading, SectionIntro, SectionProps, SectionTitle, SignMessage, SourceNote, SourceNoteProps, Sparkline, SplitBar, SplitSegment, StatCard, StatCardProps, StatGrid, StatGridProps, StepGrid, StepGridProps, StepItem, StepState, TextLink, Ticker, TruthRow, TruthStatus, TruthTable, UsdApprox, ValueTone, VerifyCheck, VerifyReport, chartColor, monogramGround, monogramLetter, satsText, sectionVariants, useCopy, useInView } from './components.mjs';
5
+ export { Accent, ActivityItem, ActivityList, Avatar, BrowserFrame, ChartFrame, ChartTone, CheckState, ChoiceCard, ChoiceGroup, Closing, Column, CommandDialog, Container, CopyButton, CopyButtonProps, CountdownRing, DataTable, Display, DisplayProps, EmptyLine, EmptyState, Endpoint, EndpointList, ErrorBoundary, ErrorPage, Eyebrow, FactBlock, FactRow, FactRows, Faq, FloatChip, Footnote, HashChip, HudCard, KeyValueItem, KeyValueList, Lead, LegalBlock, LegalDocument, LegalSource, LegendItem, ListCard, ListRow, LoadingBlock, LockedPreview, Monogram, Notice, PackageCard, PackageItem, PageHeader, Panel, PhoneFrame, PlanCard, ProgressStep, ProgressSteps, ProofStrip, Prose, Reveal, Sats, SatsFigure, SatsProps, SatsTextOptions, ScrollStory, SearchButton, SearchDialog, SearchDialogProps, SearchGroup, SearchQuery, SearchResult, Section, SectionHeading, SectionIntro, SectionProps, SectionTitle, SignMessage, SourceNote, SourceNoteProps, Sparkline, SplitBar, SplitSegment, StatCard, StatCardProps, StatGrid, StatGridProps, StepGrid, StepGridProps, StepItem, StepState, TextLink, Ticker, TruthRow, TruthStatus, TruthTable, UsdApprox, ValueTone, VerifyCheck, VerifyReport, chartColor, monogramGround, monogramLetter, satsText, sectionVariants, useCopy, useInView } from './components.mjs';
6
6
  export { D as DocHeader, a as DocLayout, P as PageHero, b as PageHeroProps, T as TocItem, u as useActiveHeading } from './hero-Dn37il-9.mjs';
7
7
  export { A as ApiRow, a as ApiTable, b as AppCard, c as AppCardProps, d as AppGrid, B as Breadcrumbs, C as Callout, e as CardGrid, f as CodeBlock, g as CodeBlockProps, h as CodeTab, i as CodeTabs, j as ComparisonColumn, k as ComparisonRow, l as ComparisonTable, m as Crumb, D as Diagram, n as DocsHeading, o as DocsPager, I as InstallTabs, L as LinkCard, M as MdxTable, p as MermaidLike, q as MermaidLoader, O as OnThisPage, P as PagerLink, r as ProtocolGrid, s as ProtocolHero, t as ProtocolNav, S as SpecCard, u as SpecCardProps, v as SpecFileKind, w as Step, x as Steps, V as VerifyBox, y as languageName, z as useHeadings } from './docs-B9G1BNXI.mjs';
8
8
  export { A as AnchorState, a as AnchorStatus, b as ArtifactView, B as BlockCountdown, c as BlockHeight, C as ChosenFile, D as DropZone, F as FilterChips, d as FilterOption, e as FormSection, M as Meter, S as SectionStatus, f as StateBadge, g as StateDef, h as StateTone, T as ToolGrid, i as ToolItem, j as createStateBadge } from './tools-CKO8IseL.mjs';
9
9
  export { AccountCta, DOCS_HEADER_NAV, DocsNav, DocsNavItem, DocsNavSection, DocsShell, DocsShellProps, FamilyMenu, OchkIoFooter, ShellContext, ShellPlace, SignInFrame, SiteBanner, SiteFooter, SiteFooterProps, SiteHeader, SiteHeaderProps, SkipLink, useShellPlace } from './chrome.mjs';
10
- export { A as AccountMenu, a as AccountMenuItem, b as AppShell, c as AppShellProps, O as OCHK_APP_ACCOUNT, S as SessionAccountView, d as SessionState, e as ShellNavGroup, f as ShellNavItem, g as ShellSection, T as ThemeToggle, h as ToolColumn, i as ToolShell, j as ToolShellProps, u as useSignInHref } from './tool-shell-DQFEMLLe.mjs';
10
+ export { A as AccountMenu, a as AccountMenuItem, b as AppShell, c as AppShellProps, O as OCHK_APP_ACCOUNT, P as PaneHeader, S as SessionAccountView, d as SessionState, e as ShellNavGroup, f as ShellNavItem, g as ShellSection, T as ThemeToggle, h as ToolColumn, i as ToolShell, j as ToolShellProps, u as useSignInHref } from './tool-shell-Dxw5o2rH.mjs';
11
11
  export { D as DOCS_HREF, F as FAMILY, a as FAMILY_GROUPS, b as FamilyGroup, c as FamilySite, d as FamilySlug, e as FooterColumn, G as GET_AN_ACCOUNT, L as LEGAL_LINKS, N as NavItem, O as OCHK_APP, f as OCHK_IO, g as OCHK_IO_FOOTER, h as OCHK_IO_NAV, P as PROTOCOLS, i as PROTOCOL_ORDER, j as ProtocolSite, k as ProtocolSlug, S as SELF_HOSTED_LEGAL_LINKS, l as SIGN_IN_LABEL, m as SiteStatus, n as familyByGroup, o as familySite, p as protocolSite } from './index-Bkl49Vgy.mjs';
12
12
  export { CODE_LANGS, CodeLine, CodeMeta, DiffMark, LineMarks, RehypeCodeOptions, TOKEN_CLASS, Token, TokenKind, escapeHtml, grammarOf, highlight, highlightToHtml, linesToHtml, parseCodeMeta, parseLineRanges, readDiff, rehypeCode } from './code.mjs';
13
13
  export { ExplorerKind, Network, blocksToDuration, explorerUrl, formatBlockHeight, formatBytes, formatUtc, shortenMiddle } from './format.mjs';
package/dist/index.d.ts CHANGED
@@ -2,12 +2,12 @@ export { APP_ATTRIBUTE, APP_ID, appColors, appFonts, darkPalette, lightPalette }
2
2
  export { Accordion, AccordionItem, Badge, BadgeProps, Button, ButtonProps, Card, CardContent, CardDescription, CardFooter, CardHeader, CardNumeral, CardProps, CardTitle, Checkbox, ConfirmOptions, Density, DensityProvider, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogHost, DialogTitle, DialogTrigger, DropdownMenu, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuTrigger, Field, FieldControlProps, FieldProps, Input, InputProps, Kbd, Label, Pagination, Popover, PopoverAnchor, PopoverContent, PopoverTrigger, PromptOptions, QrCode, RadioGroup, RadioGroupItem, ScrollFade, ScrollFadeProps, Select, SelectContent, SelectGroup, SelectItem, SelectTrigger, SelectValue, Separator, Sheet, SheetClose, SheetContent, SheetDescription, SheetTitle, SheetTrigger, Skeleton, Spinner, StatusDot, StatusPill, Switch, Tabs, TabsContent, TabsList, TabsTrigger, Textarea, Toaster, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, badgeVariants, buttonVariants, cardVariants, cn, confirm, prompt, useDensity, useTimedOut } from './primitives.js';
3
3
  export { S as Statement, a as Status, b as StatusBadge, c as StatusBadgeProps, s as statusWord } from './status-badge-CHHxtFkP.js';
4
4
  export { AppIcon, AppIconProps, Crowd, CrowdProps, HalftoneCanvas, HalftoneCanvasProps, HalftoneSphere, HalftoneSphereProps, IsoCheck, IsoCheckProps, Lockup, LockupProps, MARK_FACES, Mark, MarkProps, SPHERE_GRADIENT, Tone, portraitTone } from './brand.js';
5
- export { Accent, ActivityItem, ActivityList, BrowserFrame, ChartFrame, ChartTone, CheckState, ChoiceCard, ChoiceGroup, Closing, Column, CommandDialog, Container, CopyButton, CopyButtonProps, CountdownRing, DataTable, Display, DisplayProps, EmptyLine, EmptyState, Endpoint, EndpointList, ErrorBoundary, ErrorPage, Eyebrow, FactBlock, FactRow, FactRows, Faq, FloatChip, Footnote, HashChip, HudCard, KeyValueItem, KeyValueList, Lead, LegalBlock, LegalDocument, LegalSource, LegendItem, ListCard, LoadingBlock, LockedPreview, Monogram, Notice, PackageCard, PackageItem, PageHeader, Panel, PhoneFrame, PlanCard, ProgressStep, ProgressSteps, ProofStrip, Prose, Reveal, Sats, SatsFigure, SatsProps, SatsTextOptions, ScrollStory, SearchButton, SearchDialog, SearchDialogProps, SearchGroup, SearchQuery, SearchResult, Section, SectionHeading, SectionIntro, SectionProps, SectionTitle, SignMessage, SourceNote, SourceNoteProps, Sparkline, SplitBar, SplitSegment, StatCard, StatCardProps, StatGrid, StatGridProps, StepGrid, StepGridProps, StepItem, StepState, TextLink, Ticker, TruthRow, TruthStatus, TruthTable, UsdApprox, ValueTone, VerifyCheck, VerifyReport, chartColor, monogramGround, monogramLetter, satsText, sectionVariants, useCopy, useInView } from './components.js';
5
+ export { Accent, ActivityItem, ActivityList, Avatar, BrowserFrame, ChartFrame, ChartTone, CheckState, ChoiceCard, ChoiceGroup, Closing, Column, CommandDialog, Container, CopyButton, CopyButtonProps, CountdownRing, DataTable, Display, DisplayProps, EmptyLine, EmptyState, Endpoint, EndpointList, ErrorBoundary, ErrorPage, Eyebrow, FactBlock, FactRow, FactRows, Faq, FloatChip, Footnote, HashChip, HudCard, KeyValueItem, KeyValueList, Lead, LegalBlock, LegalDocument, LegalSource, LegendItem, ListCard, ListRow, LoadingBlock, LockedPreview, Monogram, Notice, PackageCard, PackageItem, PageHeader, Panel, PhoneFrame, PlanCard, ProgressStep, ProgressSteps, ProofStrip, Prose, Reveal, Sats, SatsFigure, SatsProps, SatsTextOptions, ScrollStory, SearchButton, SearchDialog, SearchDialogProps, SearchGroup, SearchQuery, SearchResult, Section, SectionHeading, SectionIntro, SectionProps, SectionTitle, SignMessage, SourceNote, SourceNoteProps, Sparkline, SplitBar, SplitSegment, StatCard, StatCardProps, StatGrid, StatGridProps, StepGrid, StepGridProps, StepItem, StepState, TextLink, Ticker, TruthRow, TruthStatus, TruthTable, UsdApprox, ValueTone, VerifyCheck, VerifyReport, chartColor, monogramGround, monogramLetter, satsText, sectionVariants, useCopy, useInView } from './components.js';
6
6
  export { D as DocHeader, a as DocLayout, P as PageHero, b as PageHeroProps, T as TocItem, u as useActiveHeading } from './hero-Dn37il-9.js';
7
7
  export { A as ApiRow, a as ApiTable, b as AppCard, c as AppCardProps, d as AppGrid, B as Breadcrumbs, C as Callout, e as CardGrid, f as CodeBlock, g as CodeBlockProps, h as CodeTab, i as CodeTabs, j as ComparisonColumn, k as ComparisonRow, l as ComparisonTable, m as Crumb, D as Diagram, n as DocsHeading, o as DocsPager, I as InstallTabs, L as LinkCard, M as MdxTable, p as MermaidLike, q as MermaidLoader, O as OnThisPage, P as PagerLink, r as ProtocolGrid, s as ProtocolHero, t as ProtocolNav, S as SpecCard, u as SpecCardProps, v as SpecFileKind, w as Step, x as Steps, V as VerifyBox, y as languageName, z as useHeadings } from './docs-BWWnm5Jv.js';
8
8
  export { A as AnchorState, a as AnchorStatus, b as ArtifactView, B as BlockCountdown, c as BlockHeight, C as ChosenFile, D as DropZone, F as FilterChips, d as FilterOption, e as FormSection, M as Meter, S as SectionStatus, f as StateBadge, g as StateDef, h as StateTone, T as ToolGrid, i as ToolItem, j as createStateBadge } from './tools-CzjFPng4.js';
9
9
  export { AccountCta, DOCS_HEADER_NAV, DocsNav, DocsNavItem, DocsNavSection, DocsShell, DocsShellProps, FamilyMenu, OchkIoFooter, ShellContext, ShellPlace, SignInFrame, SiteBanner, SiteFooter, SiteFooterProps, SiteHeader, SiteHeaderProps, SkipLink, useShellPlace } from './chrome.js';
10
- export { A as AccountMenu, a as AccountMenuItem, b as AppShell, c as AppShellProps, O as OCHK_APP_ACCOUNT, S as SessionAccountView, d as SessionState, e as ShellNavGroup, f as ShellNavItem, g as ShellSection, T as ThemeToggle, h as ToolColumn, i as ToolShell, j as ToolShellProps, u as useSignInHref } from './tool-shell-CnZ3NUSi.js';
10
+ export { A as AccountMenu, a as AccountMenuItem, b as AppShell, c as AppShellProps, O as OCHK_APP_ACCOUNT, P as PaneHeader, S as SessionAccountView, d as SessionState, e as ShellNavGroup, f as ShellNavItem, g as ShellSection, T as ThemeToggle, h as ToolColumn, i as ToolShell, j as ToolShellProps, u as useSignInHref } from './tool-shell-Cg51cRHJ.js';
11
11
  export { D as DOCS_HREF, F as FAMILY, a as FAMILY_GROUPS, b as FamilyGroup, c as FamilySite, d as FamilySlug, e as FooterColumn, G as GET_AN_ACCOUNT, L as LEGAL_LINKS, N as NavItem, O as OCHK_APP, f as OCHK_IO, g as OCHK_IO_FOOTER, h as OCHK_IO_NAV, P as PROTOCOLS, i as PROTOCOL_ORDER, j as ProtocolSite, k as ProtocolSlug, S as SELF_HOSTED_LEGAL_LINKS, l as SIGN_IN_LABEL, m as SiteStatus, n as familyByGroup, o as familySite, p as protocolSite } from './index-Bkl49Vgy.js';
12
12
  export { CODE_LANGS, CodeLine, CodeMeta, DiffMark, LineMarks, RehypeCodeOptions, TOKEN_CLASS, Token, TokenKind, escapeHtml, grammarOf, highlight, highlightToHtml, linesToHtml, parseCodeMeta, parseLineRanges, readDiff, rehypeCode } from './code.js';
13
13
  export { ExplorerKind, Network, blocksToDuration, explorerUrl, formatBlockHeight, formatBytes, formatUtc, shortenMiddle } from './format.js';
package/dist/index.js CHANGED
@@ -21,7 +21,7 @@ var PopoverPrimitive = require('@radix-ui/react-popover');
21
21
  var TooltipPrimitive = require('@radix-ui/react-tooltip');
22
22
  var TabsPrimitive = require('@radix-ui/react-tabs');
23
23
  var QRCode = require('qrcode');
24
- var Link6 = require('next/link');
24
+ var Link7 = require('next/link');
25
25
  var router = require('next/compat/router');
26
26
 
27
27
  function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
@@ -56,7 +56,7 @@ var PopoverPrimitive__namespace = /*#__PURE__*/_interopNamespace(PopoverPrimitiv
56
56
  var TooltipPrimitive__namespace = /*#__PURE__*/_interopNamespace(TooltipPrimitive);
57
57
  var TabsPrimitive__namespace = /*#__PURE__*/_interopNamespace(TabsPrimitive);
58
58
  var QRCode__default = /*#__PURE__*/_interopDefault(QRCode);
59
- var Link6__default = /*#__PURE__*/_interopDefault(Link6);
59
+ var Link7__default = /*#__PURE__*/_interopDefault(Link7);
60
60
 
61
61
  // src/tokens/palette.ts
62
62
  var lightPalette = {
@@ -906,7 +906,8 @@ var DropdownMenuItem = react.forwardRef(function DropdownMenuItem2({ className,
906
906
  {
907
907
  ref,
908
908
  className: cn(
909
- "flex h-10 cursor-default select-none items-center gap-2.5 rounded-xl px-3 text-[0.9375rem] outline-none",
909
+ // A thumb's 44px on a phone.
910
+ "flex h-10 cursor-default select-none items-center gap-2.5 rounded-xl px-3 text-[0.9375rem] outline-none max-md:h-11",
910
911
  "data-[highlighted]:bg-accent data-[disabled]:opacity-50 [&_svg]:size-4 [&_svg]:text-muted-foreground",
911
912
  destructive && "text-destructive [&_svg]:text-destructive",
912
913
  className
@@ -2202,7 +2203,7 @@ var JS_TAG = /<\/?(?=[A-Za-z])/y;
2202
2203
  var JS_TAG_NAME = /[A-Za-z][\w$.:-]*/y;
2203
2204
  var JS_PUNCT = /=>|\.\.\.|[{}()[\];,.<>=+\-*/%!?:&|^~#]/y;
2204
2205
  var JSX_BEFORE = /* @__PURE__ */ new Set(["(", ",", "=", "?", ":", "{", "[", ";", ">", "&&", "||", "=>", "return"]);
2205
- function scanJs(src, emit2, jsx53) {
2206
+ function scanJs(src, emit2, jsx54) {
2206
2207
  let i = 0;
2207
2208
  let prev = "";
2208
2209
  let tagDepth = 0;
@@ -2228,7 +2229,7 @@ function scanJs(src, emit2, jsx53) {
2228
2229
  sig('"');
2229
2230
  continue;
2230
2231
  }
2231
- if (jsx53 && tagDepth === 0 && (m = at(JS_TAG, src, i)) && (prev === "" || JSX_BEFORE.has(prev))) {
2232
+ if (jsx54 && tagDepth === 0 && (m = at(JS_TAG, src, i)) && (prev === "" || JSX_BEFORE.has(prev))) {
2232
2233
  const name = at(JS_TAG_NAME, src, i + m.length);
2233
2234
  if (name) {
2234
2235
  emit2(m);
@@ -2240,7 +2241,7 @@ function scanJs(src, emit2, jsx53) {
2240
2241
  continue;
2241
2242
  }
2242
2243
  }
2243
- if (jsx53 && tagDepth > 0 && braceInTag === 0) {
2244
+ if (jsx54 && tagDepth > 0 && braceInTag === 0) {
2244
2245
  if (src.startsWith("/>", i) || src[i] === ">") {
2245
2246
  const close = src[i] === ">" ? ">" : "/>";
2246
2247
  emit2(close);
@@ -2260,7 +2261,7 @@ function scanJs(src, emit2, jsx53) {
2260
2261
  continue;
2261
2262
  }
2262
2263
  if (src[i] === "{") braceInTag = 1;
2263
- } else if (jsx53 && tagDepth > 0 && braceInTag > 0) {
2264
+ } else if (jsx54 && tagDepth > 0 && braceInTag > 0) {
2264
2265
  if (src[i] === "{") braceInTag++;
2265
2266
  else if (src[i] === "}") braceInTag--;
2266
2267
  }
@@ -2977,6 +2978,7 @@ function Notice({
2977
2978
  title,
2978
2979
  children,
2979
2980
  action,
2981
+ icon,
2980
2982
  role,
2981
2983
  className
2982
2984
  }) {
@@ -2993,7 +2995,17 @@ function Notice({
2993
2995
  ),
2994
2996
  children: [
2995
2997
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex min-w-0 gap-3", children: [
2996
- kind !== "neutral" ? /* @__PURE__ */ jsxRuntime.jsx(
2998
+ icon ? /* @__PURE__ */ jsxRuntime.jsx(
2999
+ "span",
3000
+ {
3001
+ "aria-hidden": true,
3002
+ className: cn(
3003
+ "mt-0.5 shrink-0 [&_svg]:size-[1.125rem]",
3004
+ kind === "brand" ? "text-oca-accent-ink" : kind === "danger" ? "text-destructive" : "text-muted-foreground"
3005
+ ),
3006
+ children: icon
3007
+ }
3008
+ ) : kind !== "neutral" ? /* @__PURE__ */ jsxRuntime.jsx(
2997
3009
  "span",
2998
3010
  {
2999
3011
  "aria-hidden": true,
@@ -4010,7 +4022,7 @@ function ErrorPage({
4010
4022
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: "oca-lead oca-enter [--enter-delay:150ms]", children: detail ?? words.detail }),
4011
4023
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "oca-enter flex flex-wrap gap-3 [--enter-delay:230ms]", children: actions ?? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
4012
4024
  server ? /* @__PURE__ */ jsxRuntime.jsx(Button, { onClick: () => window.location.reload(), children: "Try again" }) : null,
4013
- /* @__PURE__ */ jsxRuntime.jsx(Button, { asChild: true, variant: server ? "secondary" : "primary", children: /* @__PURE__ */ jsxRuntime.jsx(Link6__default.default, { href: homeHref, children: "Go home" }) })
4025
+ /* @__PURE__ */ jsxRuntime.jsx(Button, { asChild: true, variant: server ? "secondary" : "primary", children: /* @__PURE__ */ jsxRuntime.jsx(Link7__default.default, { href: homeHref, children: "Go home" }) })
4014
4026
  ] }) })
4015
4027
  ] }),
4016
4028
  art !== null ? /* @__PURE__ */ jsxRuntime.jsx("div", { "aria-hidden": true, className: "oca-enter hidden justify-center md:col-span-5 md:flex [--enter-delay:120ms]", children: art ?? /* @__PURE__ */ jsxRuntime.jsx(MarkOutline, { className: "w-full max-w-[20rem] text-oca-hairline-strong" }) }) : null
@@ -4451,7 +4463,7 @@ function TextLink({
4451
4463
  const internal = href.startsWith("/") && !href.startsWith("/api/") && !href.startsWith("/.well-known/");
4452
4464
  const offsite = external ?? /^https?:\/\//.test(href);
4453
4465
  if (internal && !offsite) {
4454
- return /* @__PURE__ */ jsxRuntime.jsx(Link6__default.default, { href, className: cn(LINK, className), children });
4466
+ return /* @__PURE__ */ jsxRuntime.jsx(Link7__default.default, { href, className: cn(LINK, className), children });
4455
4467
  }
4456
4468
  return /* @__PURE__ */ jsxRuntime.jsxs("a", { href, className: cn(LINK, className), ...offsite ? { target: "_blank", rel: "noreferrer" } : {}, children: [
4457
4469
  children,
@@ -4585,7 +4597,7 @@ function ProtocolGrid({
4585
4597
  ] }),
4586
4598
  p.status !== "live" ? /* @__PURE__ */ jsxRuntime.jsx(StatusBadge, { status: p.status }) : null
4587
4599
  ] }),
4588
- /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "oca-display-3", children: link === "docs" && inDocs ? /* @__PURE__ */ jsxRuntime.jsx(Link6__default.default, { href: `/${p.slug}`, className: STRETCH, children: p.label }) : /* @__PURE__ */ jsxRuntime.jsx(
4600
+ /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "oca-display-3", children: link === "docs" && inDocs ? /* @__PURE__ */ jsxRuntime.jsx(Link7__default.default, { href: `/${p.slug}`, className: STRETCH, children: p.label }) : /* @__PURE__ */ jsxRuntime.jsx(
4589
4601
  "a",
4590
4602
  {
4591
4603
  href: link === "tool" ? p.toolHref : link === "docs" ? `${DOCS_HREF}/${p.slug}` : p.pageHref,
@@ -4645,7 +4657,7 @@ function AppGrid({
4645
4657
  }
4646
4658
  var isInternal = (href) => href.startsWith("/") || href.startsWith("#");
4647
4659
  function DocLink({ href, className, children, ...rest }) {
4648
- return isInternal(href) ? /* @__PURE__ */ jsxRuntime.jsx(Link6__default.default, { href, className, ...rest, children }) : /* @__PURE__ */ jsxRuntime.jsx("a", { href, className, ...rest, children });
4660
+ return isInternal(href) ? /* @__PURE__ */ jsxRuntime.jsx(Link7__default.default, { href, className, ...rest, children }) : /* @__PURE__ */ jsxRuntime.jsx("a", { href, className, ...rest, children });
4649
4661
  }
4650
4662
  function Breadcrumbs({ items, action, className }) {
4651
4663
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("flex min-h-11 items-center justify-between gap-4 sm:min-h-0", className), children: [
@@ -5475,6 +5487,66 @@ function ListCard({
5475
5487
  }) {
5476
5488
  return /* @__PURE__ */ jsxRuntime.jsx(Tag, { className: cn("divide-y divide-border overflow-clip rounded-[1.25rem] border border-border bg-card", className), ...props });
5477
5489
  }
5490
+ var ROW_LOOK = {
5491
+ // In a ListCard: full width, the card's hairlines between rows.
5492
+ card: { box: "px-5", hover: "hover:bg-accent/60", current: "bg-accent" },
5493
+ // In a pane's list (threads, contacts): rounded, lifted when current.
5494
+ pane: { box: "rounded-xl px-3", hover: "hover:bg-accent", current: "bg-card shadow-sm ring-1 ring-border" }
5495
+ };
5496
+ function ListRow({
5497
+ title,
5498
+ meta,
5499
+ description,
5500
+ leading,
5501
+ trailing,
5502
+ actions,
5503
+ revealActions = "always",
5504
+ href,
5505
+ onSelect,
5506
+ current: current2 = false,
5507
+ unread = false,
5508
+ variant = "card",
5509
+ as: Tag = "li",
5510
+ className
5511
+ }) {
5512
+ const tight = useDensity() === "compact";
5513
+ const look = ROW_LOOK[variant];
5514
+ const interactive = href !== void 0 || onSelect !== void 0;
5515
+ const cls = cn(
5516
+ "flex min-h-11 w-full min-w-0 items-center gap-3 text-left outline-none transition-colors",
5517
+ "focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring",
5518
+ look.box,
5519
+ variant === "pane" ? "py-2" : tight ? "py-3" : "py-4",
5520
+ interactive && !current2 && look.hover,
5521
+ current2 && look.current,
5522
+ actions && "pr-14"
5523
+ );
5524
+ const body = /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
5525
+ leading ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "flex shrink-0", children: leading }) : null,
5526
+ /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "flex min-w-0 flex-1 flex-col gap-0.5", children: [
5527
+ /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "flex min-w-0 items-baseline justify-between gap-3", children: [
5528
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: cn("truncate text-[0.9375rem] text-foreground", unread ? "font-semibold" : "font-medium"), children: title }),
5529
+ meta ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "oca-tabular shrink-0 text-[0.8125rem] text-muted-foreground", children: meta }) : null
5530
+ ] }),
5531
+ description ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: cn("truncate text-[0.875rem]", unread ? "text-foreground" : "text-muted-foreground"), children: description }) : null
5532
+ ] }),
5533
+ trailing ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "flex shrink-0 items-center gap-2", children: trailing }) : null
5534
+ ] });
5535
+ const aria = current2 ? { "aria-current": "true" } : {};
5536
+ return /* @__PURE__ */ jsxRuntime.jsxs(Tag, { className: cn("group/row relative", className), children: [
5537
+ href !== void 0 ? href.startsWith("/") ? /* @__PURE__ */ jsxRuntime.jsx(Link7__default.default, { href, className: cls, ...aria, children: body }) : /* @__PURE__ */ jsxRuntime.jsx("a", { href, className: cls, ...aria, children: body }) : onSelect ? /* @__PURE__ */ jsxRuntime.jsx("button", { type: "button", onClick: onSelect, className: cls, ...aria, children: body }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: cls, children: body }),
5538
+ actions ? /* @__PURE__ */ jsxRuntime.jsx(
5539
+ "div",
5540
+ {
5541
+ className: cn(
5542
+ "absolute right-2 top-1/2 flex -translate-y-1/2 items-center",
5543
+ revealActions === "hover" && "transition-opacity md:opacity-0 md:focus-within:opacity-100 md:group-hover/row:opacity-100 md:has-[[data-state=open]]:opacity-100"
5544
+ ),
5545
+ children: actions
5546
+ }
5547
+ ) : null
5548
+ ] });
5549
+ }
5478
5550
  var ChoiceSize = react.createContext("md");
5479
5551
  var COLUMNS = { 1: "", 2: "sm:grid-cols-2", 3: "sm:grid-cols-2 lg:grid-cols-3" };
5480
5552
  function ChoiceGroup({
@@ -5541,6 +5613,54 @@ function ChoiceCard({
5541
5613
  }
5542
5614
  );
5543
5615
  }
5616
+ var SIZES2 = {
5617
+ "2xs": "size-7 text-[0.6875rem] [&_svg]:size-3.5",
5618
+ xs: "size-8 text-[0.75rem] [&_svg]:size-4",
5619
+ sm: "size-9 text-[0.8125rem] [&_svg]:size-4",
5620
+ md: "size-11 text-[0.9375rem] [&_svg]:size-5",
5621
+ lg: "size-14 text-[1.1875rem] [&_svg]:size-6"
5622
+ };
5623
+ function personInitials(name) {
5624
+ return name.trim().split(/\s+/).slice(0, 2).map((w) => w.match(/[\p{L}\p{N}]/u)?.[0] ?? "").join("").toLocaleUpperCase();
5625
+ }
5626
+ function avatarHue(seed) {
5627
+ let h = 2166136261;
5628
+ for (let i = 0; i < seed.length; i++) {
5629
+ h ^= seed.charCodeAt(i);
5630
+ h = Math.imul(h, 16777619);
5631
+ }
5632
+ return (h >>> 0) % 360;
5633
+ }
5634
+ function Avatar({
5635
+ seed,
5636
+ name,
5637
+ src,
5638
+ size = "sm",
5639
+ className
5640
+ }) {
5641
+ const [failed, setFailed] = react.useState(null);
5642
+ const box = cn("inline-flex shrink-0 select-none items-center justify-center overflow-hidden rounded-full", SIZES2[size], className);
5643
+ if (src && failed !== src) {
5644
+ return (
5645
+ // eslint-disable-next-line @next/next/no-img-element
5646
+ /* @__PURE__ */ jsxRuntime.jsx("img", { src, alt: "", "aria-hidden": true, className: cn(box, "object-cover"), onError: () => setFailed(src) })
5647
+ );
5648
+ }
5649
+ const initials = name ? personInitials(name) : "";
5650
+ return /* @__PURE__ */ jsxRuntime.jsx(
5651
+ "span",
5652
+ {
5653
+ "aria-hidden": true,
5654
+ className: cn(box, "font-medium leading-none"),
5655
+ style: {
5656
+ "--oca-avatar-h": avatarHue(seed),
5657
+ backgroundColor: "hsl(var(--oca-avatar-h) 60% var(--oca-avatar-bg-l))",
5658
+ color: "hsl(var(--oca-avatar-h) 45% var(--oca-avatar-fg-l))"
5659
+ },
5660
+ children: initials || /* @__PURE__ */ jsxRuntime.jsx(lucideReact.UserRound, {})
5661
+ }
5662
+ );
5663
+ }
5544
5664
  function useMacKeys() {
5545
5665
  const [mac, setMac] = react.useState(true);
5546
5666
  react.useEffect(() => {
@@ -6368,7 +6488,7 @@ function ToolGrid({
6368
6488
  ] }),
6369
6489
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-1.5", children: [
6370
6490
  /* @__PURE__ */ jsxRuntime.jsx(Heading, { className: "oca-title-sm", children: /* @__PURE__ */ jsxRuntime.jsx(
6371
- Link6__default.default,
6491
+ Link7__default.default,
6372
6492
  {
6373
6493
  href: t.href,
6374
6494
  className: "outline-none after:absolute after:inset-0 after:rounded-[1.25rem] after:content-['']",
@@ -6465,7 +6585,7 @@ function SideNav({ groups, onNavigate }) {
6465
6585
  return /* @__PURE__ */ jsxRuntime.jsx("nav", { "aria-label": "Pages", className: "flex flex-col gap-5", children: groups.map((g, gi) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-0.5", children: [
6466
6586
  g.label ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "px-3 pb-1 text-[0.8125rem] text-muted-foreground", children: g.label }) : null,
6467
6587
  g.items.map((it) => /* @__PURE__ */ jsxRuntime.jsxs(
6468
- Link6__default.default,
6588
+ Link7__default.default,
6469
6589
  {
6470
6590
  href: it.href,
6471
6591
  onClick: onNavigate,
@@ -6500,7 +6620,7 @@ function SectionSwitch({
6500
6620
  children: sections.map((sec) => {
6501
6621
  const on = sec.id === current2.id;
6502
6622
  return /* @__PURE__ */ jsxRuntime.jsx(
6503
- Link6__default.default,
6623
+ Link7__default.default,
6504
6624
  {
6505
6625
  href: sec.href,
6506
6626
  onClick: onNavigate,
@@ -6573,7 +6693,7 @@ function TabBar({ items }) {
6573
6693
  style: { gridTemplateColumns: `repeat(${shown.length + (overflow ? 1 : 0)}, minmax(0, 1fr))` },
6574
6694
  children: [
6575
6695
  shown.map((it) => /* @__PURE__ */ jsxRuntime.jsx(
6576
- Link6__default.default,
6696
+ Link7__default.default,
6577
6697
  {
6578
6698
  href: it.href,
6579
6699
  "aria-current": it.active ? "page" : void 0,
@@ -6593,7 +6713,7 @@ function TabBar({ items }) {
6593
6713
  /* @__PURE__ */ jsxRuntime.jsxs(SheetContent, { side: "bottom", className: "pb-[calc(1.5rem+env(safe-area-inset-bottom))]", children: [
6594
6714
  /* @__PURE__ */ jsxRuntime.jsx(SheetTitle, { className: "px-1 text-[1.0625rem] font-medium", children: "More" }),
6595
6715
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-4 grid grid-cols-3 gap-2", children: rest.map((it) => /* @__PURE__ */ jsxRuntime.jsxs(
6596
- Link6__default.default,
6716
+ Link7__default.default,
6597
6717
  {
6598
6718
  href: it.href,
6599
6719
  onClick: () => setMore(false),
@@ -6707,7 +6827,7 @@ function SidebarShell({
6707
6827
  footer ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-auto flex flex-col gap-3", children: footer }) : null
6708
6828
  ] })
6709
6829
  ] }),
6710
- /* @__PURE__ */ jsxRuntime.jsx(Link6__default.default, { href: home, "aria-label": "Home", className: "rounded-lg p-1", children: /* @__PURE__ */ jsxRuntime.jsx(Lockup, { size: 22 }) }),
6830
+ /* @__PURE__ */ jsxRuntime.jsx(Link7__default.default, { href: home, "aria-label": "Home", className: "rounded-lg p-1", children: /* @__PURE__ */ jsxRuntime.jsx(Lockup, { size: 22 }) }),
6711
6831
  familyMenu,
6712
6832
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "ml-auto flex items-center", children: account })
6713
6833
  ] }),
@@ -6732,7 +6852,7 @@ function SidebarShell({
6732
6852
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mx-auto flex w-full max-w-[90rem]", children: [
6733
6853
  /* @__PURE__ */ jsxRuntime.jsxs("aside", { className: "sticky top-0 hidden h-dvh w-[17rem] shrink-0 flex-col gap-6 overflow-y-auto px-4 py-6 lg:flex", children: [
6734
6854
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-1", children: [
6735
- /* @__PURE__ */ jsxRuntime.jsx(Link6__default.default, { href: home, className: "px-2", "aria-label": "Home", children: /* @__PURE__ */ jsxRuntime.jsx(Lockup, { size: 26 }) }),
6855
+ /* @__PURE__ */ jsxRuntime.jsx(Link7__default.default, { href: home, className: "px-2", "aria-label": "Home", children: /* @__PURE__ */ jsxRuntime.jsx(Lockup, { size: 26 }) }),
6736
6856
  familyMenu
6737
6857
  ] }),
6738
6858
  switcher,
@@ -6753,7 +6873,7 @@ function SidebarShell({
6753
6873
  function RailItem({ item }) {
6754
6874
  return /* @__PURE__ */ jsxRuntime.jsxs(Tooltip, { children: [
6755
6875
  /* @__PURE__ */ jsxRuntime.jsx(TooltipTrigger, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsxs(
6756
- Link6__default.default,
6876
+ Link7__default.default,
6757
6877
  {
6758
6878
  href: item.href,
6759
6879
  "aria-current": item.active ? "page" : void 0,
@@ -6808,6 +6928,9 @@ function RailShell({ nav = [], persistent = [], page: pageOverride, header, acco
6808
6928
  tabs ? /* @__PURE__ */ jsxRuntime.jsx(TabBar, { items: tabs }) : null
6809
6929
  ] }) }) });
6810
6930
  }
6931
+ function PaneHeader({ children, className }) {
6932
+ return /* @__PURE__ */ jsxRuntime.jsx("header", { className: cn("flex h-14 shrink-0 items-center gap-3 border-b border-border px-4 md:px-5", className), children });
6933
+ }
6811
6934
  function AccountMenu({
6812
6935
  name,
6813
6936
  detail,
@@ -6844,7 +6967,7 @@ function AccountMenu({
6844
6967
  ] }),
6845
6968
  /* @__PURE__ */ jsxRuntime.jsx(DropdownMenuSeparator, {}),
6846
6969
  items.map(
6847
- (it, i) => it === "separator" ? /* @__PURE__ */ jsxRuntime.jsx(DropdownMenuSeparator, {}, `sep-${i}`) : it.href ? /* @__PURE__ */ jsxRuntime.jsx(DropdownMenuItem, { asChild: true, destructive: it.destructive, children: /* @__PURE__ */ jsxRuntime.jsxs(Link6__default.default, { href: it.href, children: [
6970
+ (it, i) => it === "separator" ? /* @__PURE__ */ jsxRuntime.jsx(DropdownMenuSeparator, {}, `sep-${i}`) : it.href ? /* @__PURE__ */ jsxRuntime.jsx(DropdownMenuItem, { asChild: true, destructive: it.destructive, children: /* @__PURE__ */ jsxRuntime.jsxs(Link7__default.default, { href: it.href, children: [
6848
6971
  it.icon,
6849
6972
  it.label
6850
6973
  ] }) }, it.label) : /* @__PURE__ */ jsxRuntime.jsxs(DropdownMenuItem, { onSelect: it.onSelect, destructive: it.destructive, children: [
@@ -6893,7 +7016,7 @@ function NavLink({
6893
7016
  if (item.external) {
6894
7017
  return /* @__PURE__ */ jsxRuntime.jsx("a", { href: item.href, className: cls, rel: "noreferrer", onClick: onNavigate, children: item.label });
6895
7018
  }
6896
- return /* @__PURE__ */ jsxRuntime.jsx(Link6__default.default, { href: item.href, className: cls, "aria-current": item.active ? "page" : void 0, onClick: onNavigate, children: item.label });
7019
+ return /* @__PURE__ */ jsxRuntime.jsx(Link7__default.default, { href: item.href, className: cls, "aria-current": item.active ? "page" : void 0, onClick: onNavigate, children: item.label });
6897
7020
  }
6898
7021
  function NavRow({ item, onNavigate }) {
6899
7022
  const body = /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
@@ -6904,7 +7027,7 @@ function NavRow({ item, onNavigate }) {
6904
7027
  "flex flex-col gap-0.5 rounded-xl px-3 py-2 transition-colors hover:bg-accent",
6905
7028
  item.active && "bg-muted hover:bg-muted dark:bg-white/[0.06]"
6906
7029
  );
6907
- return item.external ? /* @__PURE__ */ jsxRuntime.jsx("a", { href: item.href, className: cls, rel: "noreferrer", onClick: onNavigate, children: body }) : /* @__PURE__ */ jsxRuntime.jsx(Link6__default.default, { href: item.href, className: cls, "aria-current": item.active ? "page" : void 0, onClick: onNavigate, children: body });
7030
+ return item.external ? /* @__PURE__ */ jsxRuntime.jsx("a", { href: item.href, className: cls, rel: "noreferrer", onClick: onNavigate, children: body }) : /* @__PURE__ */ jsxRuntime.jsx(Link7__default.default, { href: item.href, className: cls, "aria-current": item.active ? "page" : void 0, onClick: onNavigate, children: body });
6908
7031
  }
6909
7032
  var seeAll = (item) => typeof item.label === "string" ? `All ${item.label.toLowerCase()}` : "See all";
6910
7033
  function NavDropdown({ item }) {
@@ -6996,7 +7119,7 @@ function SiteHeader({
6996
7119
  ),
6997
7120
  children: [
6998
7121
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("flex min-w-0 items-center gap-1", tool ? "md:gap-1" : "justify-self-start"), children: [
6999
- /* @__PURE__ */ jsxRuntime.jsxs(Link6__default.default, { href: home, className: "-ml-1 min-w-0 rounded-lg p-1", children: [
7122
+ /* @__PURE__ */ jsxRuntime.jsxs(Link7__default.default, { href: home, className: "-ml-1 min-w-0 rounded-lg p-1", children: [
7000
7123
  brandNode,
7001
7124
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: " home" })
7002
7125
  ] }),
@@ -7098,7 +7221,7 @@ function SiteBanner({
7098
7221
  var FOOT_LINK = "inline-flex min-h-11 items-center transition-colors hover:text-foreground md:min-h-0";
7099
7222
  function LegalRow({ links }) {
7100
7223
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-x-6 gap-y-2 sm:flex-row sm:items-center sm:justify-between", children: [
7101
- /* @__PURE__ */ jsxRuntime.jsx("nav", { "aria-label": "Legal", children: /* @__PURE__ */ jsxRuntime.jsx("ul", { className: "flex flex-wrap gap-x-5", children: links.map((l, i) => /* @__PURE__ */ jsxRuntime.jsx("li", { children: l.href.startsWith("/") ? /* @__PURE__ */ jsxRuntime.jsx(Link6__default.default, { href: l.href, className: FOOT_LINK, children: l.label }) : /* @__PURE__ */ jsxRuntime.jsx("a", { href: l.href, className: FOOT_LINK, children: l.label }) }, `${i}:${l.label}`)) }) }),
7224
+ /* @__PURE__ */ jsxRuntime.jsx("nav", { "aria-label": "Legal", children: /* @__PURE__ */ jsxRuntime.jsx("ul", { className: "flex flex-wrap gap-x-5", children: links.map((l, i) => /* @__PURE__ */ jsxRuntime.jsx("li", { children: l.href.startsWith("/") ? /* @__PURE__ */ jsxRuntime.jsx(Link7__default.default, { href: l.href, className: FOOT_LINK, children: l.label }) : /* @__PURE__ */ jsxRuntime.jsx("a", { href: l.href, className: FOOT_LINK, children: l.label }) }, `${i}:${l.label}`)) }) }),
7102
7225
  /* @__PURE__ */ jsxRuntime.jsxs("p", { children: [
7103
7226
  "\xA9 ",
7104
7227
  (/* @__PURE__ */ new Date()).getFullYear(),
@@ -7241,12 +7364,12 @@ function SignInFrame({
7241
7364
  children: [
7242
7365
  /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "flex flex-col px-4 pb-8 pt-5 sm:px-8 lg:px-14 lg:pt-8", children: [
7243
7366
  /* @__PURE__ */ jsxRuntime.jsxs("header", { className: "flex items-center justify-between gap-4", children: [
7244
- /* @__PURE__ */ jsxRuntime.jsxs(Link6__default.default, { href: homeHref, className: "w-fit rounded-lg", children: [
7367
+ /* @__PURE__ */ jsxRuntime.jsxs(Link7__default.default, { href: homeHref, className: "w-fit rounded-lg", children: [
7245
7368
  brand ?? /* @__PURE__ */ jsxRuntime.jsx(ProductLockup, { size: 28, product: product ?? (protocol2 ? protocolSite(protocol2).label : void 0) }),
7246
7369
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: " home" })
7247
7370
  ] }),
7248
7371
  back === void 0 ? /* @__PURE__ */ jsxRuntime.jsx(
7249
- Link6__default.default,
7372
+ Link7__default.default,
7250
7373
  {
7251
7374
  href: homeHref,
7252
7375
  className: "text-[0.9375rem] text-muted-foreground underline-offset-4 hover:text-foreground hover:underline",
@@ -7341,7 +7464,7 @@ function DocsNav({
7341
7464
  const on = pathOf(item.href) === here;
7342
7465
  const badge = typeof item.badge === "string" && STATUS_WORDS.has(item.badge) ? /* @__PURE__ */ jsxRuntime.jsx(StatusBadge, { status: item.badge }) : item.badge ? /* @__PURE__ */ jsxRuntime.jsx(Badge, { tone: "muted", children: item.badge }) : null;
7343
7466
  return /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsxs(
7344
- Link6__default.default,
7467
+ Link7__default.default,
7345
7468
  {
7346
7469
  href: item.href,
7347
7470
  ref: on ? activeRef : void 0,
@@ -7753,6 +7876,7 @@ exports.AppGrid = AppGrid;
7753
7876
  exports.AppIcon = AppIcon;
7754
7877
  exports.AppShell = AppShell;
7755
7878
  exports.ArtifactView = ArtifactView;
7879
+ exports.Avatar = Avatar;
7756
7880
  exports.Badge = Badge;
7757
7881
  exports.BlockCountdown = BlockCountdown;
7758
7882
  exports.BlockHeight = BlockHeight;
@@ -7844,6 +7968,7 @@ exports.Lead = Lead;
7844
7968
  exports.LegalDocument = LegalDocument;
7845
7969
  exports.LinkCard = LinkCard;
7846
7970
  exports.ListCard = ListCard;
7971
+ exports.ListRow = ListRow;
7847
7972
  exports.LoadingBlock = LoadingBlock;
7848
7973
  exports.LockedPreview = LockedPreview;
7849
7974
  exports.Lockup = Lockup;
@@ -7866,6 +7991,7 @@ exports.PackageCard = PackageCard;
7866
7991
  exports.PageHeader = PageHeader;
7867
7992
  exports.PageHero = PageHero;
7868
7993
  exports.Pagination = Pagination;
7994
+ exports.PaneHeader = PaneHeader;
7869
7995
  exports.Panel = Panel;
7870
7996
  exports.PhoneFrame = PhoneFrame;
7871
7997
  exports.PlanCard = PlanCard;