@suzumiyaaoba/mdxr 0.10.0 → 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 CHANGED
@@ -35,7 +35,7 @@ mdxr render plan.mdx --format json # machine-readable errors
35
35
 
36
36
  ### `mdxr serve [file]`
37
37
 
38
- Preview a document in the browser with live reload (`-p, --port`, default `3737`; `--open` to launch the browser once serving).
38
+ Preview a document in the browser with live reload (`-p, --port`, default `3737`; if taken, the next free port is used; `--open` to launch the browser once serving).
39
39
 
40
40
  ### Review the rendered document
41
41
 
package/dist/cli.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
- import { $g as REPORT_SPECS, A_ as parseDiff, Bv as parseLineRange, Dh as RESEARCH_CLAIM_SCHEMA, Eh as PERFORMANCE_TARGET_SCHEMA, Ev as numOf, Gv as isComponent, Ha as shadcnModules, Hv as SKIP_LANGS, Iv as parseProps, Jv as own, Kv as isRecord, Nm as PlanHeader, Nv as takeUsedIcons, Oh as performanceDetails, Pv as DocContext, Rv as fenceFilename, Th as PERFORMANCE_LABELS, Tv as attrTrue, Vv as splitPathLines, Wv as langForPath, Xg as calculate, Xv as urlScheme, Yv as safeHref, __ as parseJson, b_ as tableRecords, bm as plotModel, dp as dependencyMatrixModel, e_ as reportModel, fp as queryPlanModel, g_ as numberValue, h_ as isDataRecord, hv as textList, kh as performanceResult, m_ as display, mp as flameModel, mv as numList, n_ as schemaRows, p_ as columnsOf, pp as diagramModel, qv as nonEmpty, rv as isStatus, t as builtinComponents, t_ as comparisonModel, tv as STATUSES, up as bundleModel, v_ as readRecords, wh as CLAIM_LABELS, y_ as records, ym as PLOT_NAMES, zv as fenceLang } from "./ui-4uP9HfXd.mjs";
3
- import { a as loadUserModule, c as srcDir, i as importBundledCode, n as loadConfig, o as resolveModuleEntry, r as SHARED_PACKAGES, s as pkgRoot } from "./config-C8uMevwJ.mjs";
2
+ import { $g as REPORT_SPECS, A_ as parseDiff, Bv as parseLineRange, Dh as RESEARCH_CLAIM_SCHEMA, Eh as PERFORMANCE_TARGET_SCHEMA, Ev as numOf, Gv as isComponent, Ha as shadcnModules, Hv as SKIP_LANGS, Iv as parseProps, Jv as own, Kv as isRecord, Nm as PlanHeader, Nv as takeUsedIcons, Oh as performanceDetails, Pv as DocContext, Rv as fenceFilename, Th as PERFORMANCE_LABELS, Tv as attrTrue, Vv as splitPathLines, Wv as langForPath, Xg as calculate, Xv as urlScheme, Yv as safeHref, __ as parseJson, b_ as tableRecords, bm as plotModel, dp as dependencyMatrixModel, e_ as reportModel, fp as queryPlanModel, g_ as numberValue, h_ as isDataRecord, hv as textList, kh as performanceResult, m_ as display, mp as flameModel, mv as numList, n_ as schemaRows, p_ as columnsOf, pp as diagramModel, qv as nonEmpty, rv as isStatus, t as builtinComponents, t_ as comparisonModel, tv as STATUSES, up as bundleModel, v_ as readRecords, wh as CLAIM_LABELS, y_ as records, ym as PLOT_NAMES, zv as fenceLang } from "./ui-4Kk2-bYc.mjs";
3
+ import { a as loadUserModule, c as srcDir, i as importBundledCode, n as loadConfig, o as resolveModuleEntry, r as SHARED_PACKAGES, s as pkgRoot } from "./config-BtcDfvuR.mjs";
4
4
  import module from "node:module";
5
5
  import fsp, { access, mkdir, readFile, readdir, rename, writeFile } from "node:fs/promises";
6
6
  import path from "node:path";
@@ -29,8 +29,9 @@ import { icons as icons$1 } from "@iconify-json/vscode-icons";
29
29
  import { differenceInCalendarDays, isValid, parseISO } from "date-fns";
30
30
  import { createHash, randomUUID } from "node:crypto";
31
31
  import { build } from "esbuild";
32
+ import { execFile, spawn } from "node:child_process";
32
33
  import os, { homedir } from "node:os";
33
- import { spawn } from "node:child_process";
34
+ import { promisify } from "node:util";
34
35
  import { once } from "node:events";
35
36
  import { compile } from "@mdx-js/mdx";
36
37
  import { renderToStaticMarkup, renderToString } from "react-dom/server";
@@ -5556,7 +5557,11 @@ const CONVENTIONS = [
5556
5557
  }
5557
5558
  ];
5558
5559
  const formatCatalog = (entries) => {
5559
- const lines = ["Components:", ""];
5560
+ const lines = [
5561
+ "Components:",
5562
+ " Pick the most specific component for the job: a dedicated semantic component (<Steps>, <Tests>, <Endpoints>, <Findings>, …) beats a generic Card/Table/bullet list, which loses its badges, counts, and file links. shadcn/ui and Wireframe* entries are generic building blocks for content with no dedicated component.",
5563
+ ""
5564
+ ];
5560
5565
  for (const e of entries) {
5561
5566
  const props = Object.entries(e.props).map(([k, p]) => `${k}${p.required ? "" : "?"}: ${p.type}`).join(", ");
5562
5567
  lines.push(` <${e.name}${props === "" ? "" : ` ${props}`}>`);
@@ -5599,11 +5604,32 @@ const docsDirIsIgnored = (source) => {
5599
5604
  }
5600
5605
  return ignored;
5601
5606
  };
5607
+ const execFileAsync = promisify(execFile);
5608
+ /** `git config --get core.excludesFile`, or git's default global ignore. */
5609
+ const globalExcludesFile = async () => {
5610
+ const fallback = path.join(os.homedir(), ".config", "git", "ignore");
5611
+ try {
5612
+ const { stdout } = await execFileAsync("git", [
5613
+ "config",
5614
+ "--get",
5615
+ "core.excludesFile"
5616
+ ]);
5617
+ const configured = stdout.trim();
5618
+ if (configured === "") return fallback;
5619
+ return configured.startsWith("~/") ? path.join(os.homedir(), configured.slice(2)) : configured;
5620
+ } catch {
5621
+ return fallback;
5622
+ }
5623
+ };
5602
5624
  /**
5603
5625
  * Ensures the project's .gitignore covers `.mdxr/` — created or appended
5604
- * as needed. Returns "present" when an existing rule already covers it.
5626
+ * as needed. Returns "present" when an existing project rule covers it,
5627
+ * "global" when the user's global excludes file already does (nothing is
5628
+ * written — the project file would just duplicate it).
5605
5629
  */
5606
5630
  const ensureDocsDirIgnored = async (base) => {
5631
+ const globalIgnore = await fsp.readFile(await globalExcludesFile(), "utf-8").catch(() => null);
5632
+ if (globalIgnore !== null && docsDirIsIgnored(globalIgnore)) return "global";
5607
5633
  const file = path.join(base, ".gitignore");
5608
5634
  const existing = await fsp.readFile(file, "utf-8").catch(() => null);
5609
5635
  if (existing !== null && docsDirIsIgnored(existing)) return "present";
@@ -9526,6 +9552,26 @@ const SKIP_DIRS = /* @__PURE__ */ new Set([
9526
9552
  "node_modules",
9527
9553
  "storybook-static"
9528
9554
  ]);
9555
+ /** Upper bound on consecutive EADDRINUSE retries before give-up. */
9556
+ const MAX_PORT_ATTEMPTS = 100;
9557
+ /**
9558
+ * Bind `server` on loopback to `port`, or to the next free port after it —
9559
+ * a probe-then-bind helper would just race the real listen. Port 0 already
9560
+ * asks the OS for a port, so it binds once and never retries.
9561
+ */
9562
+ const listenOnFreePort = async (server, port) => {
9563
+ for (let attempt = 0;; attempt += 1) {
9564
+ const candidate = port + attempt;
9565
+ try {
9566
+ server.listen(candidate, "127.0.0.1");
9567
+ await once(server, "listening");
9568
+ if (attempt > 0) console.log(`mdxr: port ${port} is taken, using ${candidate}`);
9569
+ return;
9570
+ } catch (error) {
9571
+ if (!(error instanceof Error && error.code === "EADDRINUSE") || port === 0 || attempt >= MAX_PORT_ATTEMPTS || candidate >= 65535) throw error;
9572
+ }
9573
+ }
9574
+ };
9529
9575
  const handleDocumentResponse = (req, res, target, html) => {
9530
9576
  if (req.url?.startsWith("/__mdxr_history") === true) {
9531
9577
  handleDocumentHistoryRequest(req, res, target.history, target.historyFile);
@@ -9741,8 +9787,7 @@ const servePreview = async (target, port) => {
9741
9787
  reloading = rebuild(notify);
9742
9788
  await reloading;
9743
9789
  try {
9744
- server.listen(port, "127.0.0.1");
9745
- await once(server, "listening");
9790
+ await listenOnFreePort(server, port);
9746
9791
  } catch (error) {
9747
9792
  server.close();
9748
9793
  throw error;
@@ -9887,7 +9932,7 @@ cli.command("render [file]", "Render an .mdx document to a standalone HTML file"
9887
9932
  fail(error, json);
9888
9933
  }
9889
9934
  });
9890
- cli.command("serve [file]", "Preview a document in the browser with live reload").option("-p, --port <port>", "Port", { default: 3737 }).option("--open", "Open the preview in the default browser once serving").option("--agent <agent>", "Chat with codex or claude in the preview").option("--session <id>", "Send to an existing Codex thread").option("--server <url>", "Codex App Server ws:// or unix:// endpoint").action(async (file, opts) => {
9935
+ cli.command("serve [file]", "Preview a document in the browser with live reload").option("-p, --port <port>", "Preferred port; if taken, the next free port is used", { default: 3737 }).option("--open", "Open the preview in the default browser once serving").option("--agent <agent>", "Chat with codex or claude in the preview").option("--session <id>", "Send to an existing Codex thread").option("--server <url>", "Codex App Server ws:// or unix:// endpoint").action(async (file, opts) => {
9891
9936
  try {
9892
9937
  const port = Number(opts.port);
9893
9938
  if (!Number.isInteger(port) || port < 0 || port > 65535) throw new Error(`invalid --port: ${opts.port}`);
@@ -9966,7 +10011,11 @@ cli.command("init", "Install mdxr instructions for Codex and Claude").option("--
9966
10011
  }
9967
10012
  if (!global) {
9968
10013
  const status = await ensureDocsDirIgnored(process.cwd());
9969
- console.log(status === "added" ? "mdxr: added .mdxr/ to .gitignore" : "mdxr: .gitignore already covers .mdxr/");
10014
+ console.log({
10015
+ added: "mdxr: added .mdxr/ to .gitignore",
10016
+ global: "mdxr: .mdxr/ is already covered by your global git excludes",
10017
+ present: "mdxr: .gitignore already covers .mdxr/"
10018
+ }[status]);
9970
10019
  }
9971
10020
  } catch (error) {
9972
10021
  fail(error, false);
@@ -1,4 +1,4 @@
1
- import { $ as WireframeSidebarTrigger, $a as CalendarHeatmap, $c as Quadrant, $i as wireframeToast, $l as Endpoint, $n as WireframeTextParagraph, $o as Include, $r as WireframeDrawerTitle, $s as Summary, $t as WireframeContextMenuPortal, $u as ComponentMeta, A as WireframeSidebarContent, Aa as DeprecationTimeline, Ac as RISK_LEVELS, Ai as WireframeBreadcrumbList, Al as Node, An as WireframeTableRow, Ao as DocumentHistory, Ar as WireframeMenubarShortcut, As as Waterfall, At as WireframeCarouselItemWireframe, Au as CHANGE_KINDS, B as WireframeSidebarMenu, Ba as Sunburst, Bc as Commit, Bi as WireframeAlertTitle, Bl as Stage, Bn as WireframeToggle, Bo as TokenUsage, Br as WireframeInput, Bs as Trace, Bt as WireframeFieldLabelWireframe, Bu as BENCH_BETTER, C as WireframeChartLegend, Ca as ServiceTopology, Cc as DbField, Ci as WireframeCardHeader, Cl as HYPOTHESIS_STATUSES, Cn as WireframeTableCaption, Co as SLO, Cr as WireframeMenubarItem, Cs as Wizard, Ct as WireframeButtonGroup, Cu as Comments, D as WireframeChartTooltipContent, Da as CliReference, Dc as Scatter, Di as WireframeBreadcrumbEllipsis, Dl as Grid, Dn as WireframeTableHead, Do as Reproduction, Dr as WireframeMenubarRadioGroup, Ds as DownloadData, Dt as WireframeCarousel, Du as CHECK_STATUSES, E as WireframeChartTooltip, Ea as ApiParams, Ec as Point, Ei as WireframeBreadcrumb, El as Cell, En as WireframeTableFooter, Eo as Logs, Er as WireframeMenubarPortal, Es as DataTable, Et as WireframeButtonGroupTextWireframe, Eu as Cmd, F as WireframeSidebarGroupLabel, Fa as Coverage, Fc as Req, Fi as WireframeAvatar, Fl as Gauges, Fn as WireframeTooltip, Fo as DatasetProfile, Fr as WireframeMenubarWireframeExample, Fs as Venn, Ft as WireframeFieldDescription, Fu as BUMP_KINDS, G as WireframeSidebarMenuItem, Ga as Histogram, Gc as Prop, Gi as WireframeAccordionTrigger, Gl as Findings, Gn as WireframeTabsTrigger, Go as Conversation, Gr as WireframeDrawer, Gs as TEST_STATUSES, Gt as WireframeContextMenu, Gu as Audit, H as WireframeSidebarMenuBadge, Ha as RidgelinePlot, Hc as PR, Hi as WireframeAccordion, Hl as FlowStep, Hn as WireframeTabs, Ho as ApiExample, Hr as WireframeHoverCardContent, Hs as Toc, Ht as WireframeFieldSeparator, Hu as Benchmarks, I as WireframeSidebarGroupLabelWireframe, Ia as TestHistory, Ic as Reqs, Ii as WireframeAvatarFallback, Il as Gantt, In as WireframeTooltipContent, Io as EvalCase, Ir as WireframeLabel, Is as Tile, It as WireframeFieldDescriptionWireframe, Iu as Bump, J as WireframeSidebarMenuSubButton, Ja as DumbbellChart, Jc as Priority, Ji as useWireframeSidebar, Jl as Files, Jn as WireframeToaster, Jo as Response, Jr as WireframeDrawerDescription, Js as formatDuration, Jt as WireframeContextMenuGroup, Ju as Choice, K as WireframeSidebarMenuSkeleton, Ka as Heatmap, Kc as Props, Ki as useWireframeForm, Kl as FILE_KINDS, Kn as WireframeSwitch, Ko as PackageInstall, Kr as WireframeDrawerClose, Ks as Test, Kt as WireframeContextMenuCheckboxItem, Ku as Vuln, L as WireframeSidebarHeader, La as TestMatrix, Lc as ENTRY_KINDS, Li as WireframeAvatarImage, Ll as Milestone, Ln as WireframeTooltipProvider, Lo as EvalReport, Lr as WireframeKbd, Ls as Treemap, Lt as WireframeFieldError, Lu as Bumps, M as WireframeSidebarGroup, Ma as AccessibilityReport, Mc as Comment, Mi as WireframeBreadcrumbSeparator, Ml as Term, Mn as WireframeListGroup, Mo as Limitations, Mr as WireframeMenubarSubContent, Ms as Verdict, Mt as WireframeCarouselPrevious, Mu as Changes, N as WireframeSidebarGroupAction, Na as BenchmarkSuite, Nc as REVIEW_VERDICTS, Ni as WireframeBadge, Nl as GAUGE_TONES, Nn as WireframeHeading, No as Provenance, Nr as WireframeMenubarSubTrigger, Ns as Overlap, Nt as WireframeField, Nu as CALLOUT_KINDS, O as WireframeChartWireframe, Oa as CompatibilityMatrix, Oc as Link, Oi as WireframeBreadcrumbItem, Ol as Graph, On as WireframeTableHeadWireframe, Oo as SymbolOutline, Or as WireframeMenubarRadioItem, Os as FilterPanel, Ot as WireframeCarouselContent, Ou as Check, P as WireframeSidebarGroupContent, Pa as ContractResults, Pc as Review, Pi as WireframeBadgeWireframe, Pl as Gauge, Pn as WireframeParagraph, Po as DataValidation, Pr as WireframeMenubarTrigger, Ps as Set, Pt as WireframeFieldContent, Pu as Callout, Q as WireframeSidebarSeparator, Qa as ChordDiagram, Qc as Pin, Qi as wireframeTextVariants, Ql as EnvVars, Qn as WireframeTextLabel, Qo as CrossRef, Qr as WireframeDrawerPortal, Qs as SymbolRef, Qt as WireframeContextMenuLabelWireframe, Qu as Approvals, R as WireframeSidebarInput, Ra as ViolinPlot, Rc as Entry, Ri as WireframeAlert, Rl as Task, Rn as WireframeTooltipTrigger, Ro as Experiment, Rr as WireframeKbdGroup, Rs as Tree, Rt as WireframeFieldGroup, Ru as Bridge, S as WireframeChartContainer, Sa as SequenceDiagram, Sc as Score, Si as WireframeCardFooter, Sl as normalizeIconName, Sn as WireframeTableBody, So as Runbook, Sr as WireframeMenubarGroup, Ss as Ranking, St as WireframeInputGroupTextarea, Su as Lane, T as WireframeChartStyle, Ta as Swimlane, Tc as Schema, Ti as WireframeButton, Tl as Hypothesis, Tn as WireframeTableCellWireframe, To as ObjectSchema, Tr as WireframeMenubarMenu, Ts as RecordItem, Tt as WireframeButtonGroupText, Tu as Columns, U as WireframeSidebarMenuButton, Ua as ParetoChart, Uc as Ref, Ui as WireframeAccordionContent, Ul as CONFIDENCES, Un as WireframeTabsContent, Uo as CodeGroup, Ur as WireframeHoverCardTrigger, Us as Event, Ut as WireframeFieldSet, Uu as Bar, V as WireframeSidebarMenuAction, Va as SlopeChart, Vc as Issue, Vi as WireframeAlertWireframe, Vl as Flow, Vn as WireframeTextarea, Vo as ToolCall, Vr as WireframeHoverCard, Vs as TraceFrame, Vt as WireframeFieldLegend, Vu as Bench, W as WireframeSidebarMenuButtonWireframe, Wa as IntervalPlot, Wc as Radar, Wi as WireframeAccordionItem, Wl as Finding, Wn as WireframeTabsList, Wo as CodeWalkthrough, Wr as WireframeHoverCardWireframeExample, Ws as Timeline, Wt as WireframeFieldTitle, Wu as BarChart, X as WireframeSidebarProvider, Xa as ConfusionMatrix, Xc as Plan, Xi as wireframeButtonGroupVariants, Xl as Figure, Xn as WireframeTextCaption, Xo as TabItem, Xr as WireframeDrawerHeader, Xs as Terminal, Xt as WireframeContextMenuItemWireframe, Xu as Question, Y as WireframeSidebarMenuSubItem, Ya as DotPlot, Yc as Pre, Yi as wireframeBadgeVariants, Yl as FileRef, Yn as WireframeText, Yo as SyncedTabs, Yr as WireframeDrawerFooter, Ys as parseDuration, Yt as WireframeContextMenuItem, Yu as QUESTION_TYPES, Z as WireframeSidebarRail, Za as CohortTable, Zc as PlanHeader, Zi as wireframeButtonVariants, Zl as EnvVar, Zn as WireframeTextHeading, Zo as Cite, Zr as WireframeDrawerOverlay, Zs as SYMBOL_KINDS, Zt as WireframeContextMenuLabel, Zu as Approval, _ as WireframeEmptyMedia, _a as EntityRelations, _c as Severity, _i as WireframeCheckbox, _l as Ins, _n as WireframeItemMediaWireframe, _o as MaintenanceWindow, _r as WireframePaginationNext, _s as AnswerSheet, _t as WireframeInputGroup, _u as Decision, a as WireframeProductGrid, aa as WireframeStack, ac as Service, ai as WireframeDialogDescription, al as PACKAGE_KINDS, an as WireframeContextMenuSubContent, ao as DecisionMatrix, ar as WireframeSelectItem, as as TableOfFigures, at as WireframeSheetFooter, au as DiffStat, b as WireframeEmptyTitleWireframe, ba as MindMap, bc as Search, bi as WireframeCardContent, bl as Icon, bn as WireframeItemTitleWireframe, bo as Remediation, br as WireframeMenubarCheckboxItem, bs as DocumentSearch, bt as WireframeInputGroupInput, bu as Board, c as WireframeContactForm, ca as DatasetDiff, cc as STATUSES, ci as WireframeDialogOverlay, cl as Owner, cn as WireframeItem, co as KeyResults, cr as WireframeSelectScrollUpButton, cs as AnnotatedImage, ct as WireframeSheetTitleWireframe, cu as FileDiff, d as WireframeHeroSection, da as SmallMultiples, dc as Stats, di as WireframeDialogTrigger, dl as Meta, dn as WireframeItemDescription, do as RiskRegister, dr as WireframeSelectValue, ds as ImageGallery, dt as WireframeFormControl, du as DEP_KINDS, ea as wireframeToggleVariants, ec as Step, ed as MdxrComponent, ei as WireframeDrawerTrigger, el as PieChart, en as WireframeContextMenuRadioGroup, eo as BumpChart, er as WireframeSlider, es as NumberedEquation, et as WireframeSheet, eu as Endpoints, f as WireframeEmpty, fa as Architecture, fc as SPARK_TONES, fi as WireframeDialogWireframeExample, fl as MetaItem, fn as WireframeItemDescriptionWireframe, fo as Scope, fr as WireframePagination, fs as PageBreak, ft as WireframeFormDescription, fu as Dep, g as WireframeEmptyHeader, ga as DependencyMatrix, gc as SEVERITY_LEVELS, gi as WireframeCollapsibleWireframeExample, gl as Del, gn as WireframeItemMedia, go as FeatureFlags, gr as WireframePaginationLink, gs as VisualDiff, gt as WireframeFormMessage, gu as DECISION_STATUSES, h as WireframeEmptyDescriptionWireframe, ha as DecisionTree, hc as Stack, hi as WireframeCollapsibleTrigger, hl as Json, hn as WireframeItemHeader, ho as ErrorBudget, hr as WireframePaginationItem, hs as Video, ht as WireframeFormLabel, hu as PerformanceTarget, i as WireframeProfilePage, ia as WireframeSection, ic as SERVICE_STATUSES, ii as WireframeDialogContent, il as Stop, in as WireframeContextMenuSub, io as CapacityPlan, ir as WireframeSelectGroup, is as Sources, it as WireframeSheetDescriptionWireframe, iu as Due, j as WireframeSidebarFooter, ja as ErrorCatalog, jc as Risk, ji as WireframeBreadcrumbPage, jl as Glossary, jn as WireframeList, jo as Evidence, jr as WireframeMenubarSub, js as VERDICTS, jt as WireframeCarouselNext, ju as Change, k as WireframeSidebar, ka as ConfigReference, kc as Sankey, ki as WireframeBreadcrumbLink, kl as Edge, kn as WireframeTableHeader, ko as Assumptions, kr as WireframeMenubarSeparator, ks as Span, kt as WireframeCarouselItem, ku as Checks, l as WireframeRegisterForm, la as JsonDiff, lc as StatusBadge, li as WireframeDialogPortal, ll as OPTION_STATUSES, ln as WireframeItemActions, lo as Objectives, lr as WireframeSelectSeparator, ls as AudioTranscript, lt as WireframeSheetTrigger, lu as parseDiff, m as WireframeEmptyDescription, ma as DataLineage, mc as Row, mi as WireframeCollapsibleContent, ml as LineChart, mn as WireframeItemGroup, mo as AlertRules, mr as WireframePaginationEllipsis, ms as PrintLayout, mt as WireframeFormItem, mu as ResearchClaim, n as builtinComponents, na as ChartConfig$1, nc as DAY_STATUSES, nd as textOf, ni as WireframeDialog, nl as Phase, nn as WireframeContextMenuSeparator, no as BoxPlot, nr as WireframeSelect, ns as Sidenote, nt as WireframeSheetContent, nu as EFFORT_SIZES, o as WireframePricing, oa as ApiDiff, oc as StatusPage, oi as WireframeDialogFooter, ol as Package, on as WireframeContextMenuSubTrigger, oo as DependencyPlan, or as WireframeSelectLabel, os as TermRef, ot as WireframeSheetHeader, ou as DiffCommentSpec, p as WireframeEmptyContent, pa as BundleReport, pc as Spark, pi as WireframeCollapsible, pl as Matrix, pn as WireframeItemFooter, po as Traceability, pr as WireframePaginationContent, ps as PdfPreview, pt as WireframeFormField, pu as Deps, q as WireframeSidebarMenuSub, qa as ECDF, qc as PRIORITY_LEVELS, qi as useWireframeFormField, ql as File, qn as WireframeSonnerWireframeExample, qo as Request, qr as WireframeDrawerContent, qs as Tests, qt as WireframeContextMenuContent, qu as Ask, r as WireframeSettingsPage, ra as Wireframe, rc as Day, ri as WireframeDialogClose, rl as Pathway, rn as WireframeContextMenuShortcut, ro as ActionItems, rr as WireframeSelectContent, rs as Source, rt as WireframeSheetDescription, ru as Effort, s as WireframeDashboard, sa as ConfigDiff, sc as Uptime, si as WireframeDialogHeader, sl as Packages, sn as WireframeContextMenuTrigger, so as Estimate, sr as WireframeSelectScrollDownButton, ss as Theorem, st as WireframeSheetTitle, su as DiffView, t as DocContext, ta as CarouselApi$1, tc as Steps, td as defineComponent, ti as WireframeDrawerWireframeExample, tl as Slice, tn as WireframeContextMenuRadioItem, to as BulletChart, tr as WireframeSeparator, ts as Proof, tt as WireframeSheetClose, tu as HTTP_METHODS, u as WireframeLoginForm, ua as SchemaDiff, uc as Stat, ui as WireframeDialogTitle, ul as Option, un as WireframeItemContent, uo as RACI, ur as WireframeSelectTrigger, us as ImageCompare, ut as WireframeForm, uu as Details, v as WireframeEmptyMediaWireframe, va as Flamegraph, vc as isSeverity, vi as WireframeCard, vl as INCIDENT_STATUSES, vn as WireframeItemSeparator, vo as PermissionMatrix, vr as WireframePaginationPrevious, vs as Calculator, vt as WireframeInputGroupAddon, vu as After, w as WireframeChartLegendContent, wa as StateDiagram, wc as DbTable, wi as WireframeCardTitle, wl as Hypotheses, wn as WireframeTableCell, wo as ThreatModel, wr as WireframeMenubarLabel, ws as JourneyMap, wt as WireframeButtonGroupSeparator, wu as Column, x as WireframeChart, xa as QueryPlan, xc as Searches, xi as WireframeCardDescription, xl as hasIcon, xn as WireframeTable, xo as Rollout, xr as WireframeMenubarContent, xs as PromptTemplate, xt as WireframeInputGroupText, xu as BoardCard, y as WireframeEmptyTitle, ya as ImpactMap, yc as Series, yi as WireframeCardAction, yl as Incident, yn as WireframeItemTitle, yo as RecoveryPlan, yr as WireframeMenubar, ys as Checklist, yt as WireframeInputGroupButton, yu as Before, z as WireframeSidebarInset, za as UpSetPlot, zc as Release, zi as WireframeAlertDescription, zl as Funnel, zn as WireframeTooltipWireframeExample, zo as ModelComparison, zr as WireframeMedia, zs as FRAME_KINDS, zt as WireframeFieldLabel, zu as Delta } from "./doc-context-DAfx4O-r.mjs";
1
+ import { $ as WireframeSidebarTrigger, $a as CalendarHeatmap, $c as Quadrant, $i as wireframeToast, $l as Endpoint, $n as WireframeTextParagraph, $o as Include, $r as WireframeDrawerTitle, $s as Summary, $t as WireframeContextMenuPortal, $u as ComponentMeta, A as WireframeSidebarContent, Aa as DeprecationTimeline, Ac as RISK_LEVELS, Ai as WireframeBreadcrumbList, Al as Node, An as WireframeTableRow, Ao as DocumentHistory, Ar as WireframeMenubarShortcut, As as Waterfall, At as WireframeCarouselItemWireframe, Au as CHANGE_KINDS, B as WireframeSidebarMenu, Ba as Sunburst, Bc as Commit, Bi as WireframeAlertTitle, Bl as Stage, Bn as WireframeToggle, Bo as TokenUsage, Br as WireframeInput, Bs as Trace, Bt as WireframeFieldLabelWireframe, Bu as BENCH_BETTER, C as WireframeChartLegend, Ca as ServiceTopology, Cc as DbField, Ci as WireframeCardHeader, Cl as HYPOTHESIS_STATUSES, Cn as WireframeTableCaption, Co as SLO, Cr as WireframeMenubarItem, Cs as Wizard, Ct as WireframeButtonGroup, Cu as Comments, D as WireframeChartTooltipContent, Da as CliReference, Dc as Scatter, Di as WireframeBreadcrumbEllipsis, Dl as Grid, Dn as WireframeTableHead, Do as Reproduction, Dr as WireframeMenubarRadioGroup, Ds as DownloadData, Dt as WireframeCarousel, Du as CHECK_STATUSES, E as WireframeChartTooltip, Ea as ApiParams, Ec as Point, Ei as WireframeBreadcrumb, El as Cell, En as WireframeTableFooter, Eo as Logs, Er as WireframeMenubarPortal, Es as DataTable, Et as WireframeButtonGroupTextWireframe, Eu as Cmd, F as WireframeSidebarGroupLabel, Fa as Coverage, Fc as Req, Fi as WireframeAvatar, Fl as Gauges, Fn as WireframeTooltip, Fo as DatasetProfile, Fr as WireframeMenubarWireframeExample, Fs as Venn, Ft as WireframeFieldDescription, Fu as BUMP_KINDS, G as WireframeSidebarMenuItem, Ga as Histogram, Gc as Prop, Gi as WireframeAccordionTrigger, Gl as Findings, Gn as WireframeTabsTrigger, Go as Conversation, Gr as WireframeDrawer, Gs as TEST_STATUSES, Gt as WireframeContextMenu, Gu as Audit, H as WireframeSidebarMenuBadge, Ha as RidgelinePlot, Hc as PR, Hi as WireframeAccordion, Hl as FlowStep, Hn as WireframeTabs, Ho as ApiExample, Hr as WireframeHoverCardContent, Hs as Toc, Ht as WireframeFieldSeparator, Hu as Benchmarks, I as WireframeSidebarGroupLabelWireframe, Ia as TestHistory, Ic as Reqs, Ii as WireframeAvatarFallback, Il as Gantt, In as WireframeTooltipContent, Io as EvalCase, Ir as WireframeLabel, Is as Tile, It as WireframeFieldDescriptionWireframe, Iu as Bump, J as WireframeSidebarMenuSubButton, Ja as DumbbellChart, Jc as Priority, Ji as useWireframeSidebar, Jl as Files, Jn as WireframeToaster, Jo as Response, Jr as WireframeDrawerDescription, Js as formatDuration, Jt as WireframeContextMenuGroup, Ju as Choice, K as WireframeSidebarMenuSkeleton, Ka as Heatmap, Kc as Props, Ki as useWireframeForm, Kl as FILE_KINDS, Kn as WireframeSwitch, Ko as PackageInstall, Kr as WireframeDrawerClose, Ks as Test, Kt as WireframeContextMenuCheckboxItem, Ku as Vuln, L as WireframeSidebarHeader, La as TestMatrix, Lc as ENTRY_KINDS, Li as WireframeAvatarImage, Ll as Milestone, Ln as WireframeTooltipProvider, Lo as EvalReport, Lr as WireframeKbd, Ls as Treemap, Lt as WireframeFieldError, Lu as Bumps, M as WireframeSidebarGroup, Ma as AccessibilityReport, Mc as Comment, Mi as WireframeBreadcrumbSeparator, Ml as Term, Mn as WireframeListGroup, Mo as Limitations, Mr as WireframeMenubarSubContent, Ms as Verdict, Mt as WireframeCarouselPrevious, Mu as Changes, N as WireframeSidebarGroupAction, Na as BenchmarkSuite, Nc as REVIEW_VERDICTS, Ni as WireframeBadge, Nl as GAUGE_TONES, Nn as WireframeHeading, No as Provenance, Nr as WireframeMenubarSubTrigger, Ns as Overlap, Nt as WireframeField, Nu as CALLOUT_KINDS, O as WireframeChartWireframe, Oa as CompatibilityMatrix, Oc as Link, Oi as WireframeBreadcrumbItem, Ol as Graph, On as WireframeTableHeadWireframe, Oo as SymbolOutline, Or as WireframeMenubarRadioItem, Os as FilterPanel, Ot as WireframeCarouselContent, Ou as Check, P as WireframeSidebarGroupContent, Pa as ContractResults, Pc as Review, Pi as WireframeBadgeWireframe, Pl as Gauge, Pn as WireframeParagraph, Po as DataValidation, Pr as WireframeMenubarTrigger, Ps as Set, Pt as WireframeFieldContent, Pu as Callout, Q as WireframeSidebarSeparator, Qa as ChordDiagram, Qc as Pin, Qi as wireframeTextVariants, Ql as EnvVars, Qn as WireframeTextLabel, Qo as CrossRef, Qr as WireframeDrawerPortal, Qs as SymbolRef, Qt as WireframeContextMenuLabelWireframe, Qu as Approvals, R as WireframeSidebarInput, Ra as ViolinPlot, Rc as Entry, Ri as WireframeAlert, Rl as Task, Rn as WireframeTooltipTrigger, Ro as Experiment, Rr as WireframeKbdGroup, Rs as Tree, Rt as WireframeFieldGroup, Ru as Bridge, S as WireframeChartContainer, Sa as SequenceDiagram, Sc as Score, Si as WireframeCardFooter, Sl as normalizeIconName, Sn as WireframeTableBody, So as Runbook, Sr as WireframeMenubarGroup, Ss as Ranking, St as WireframeInputGroupTextarea, Su as Lane, T as WireframeChartStyle, Ta as Swimlane, Tc as Schema, Ti as WireframeButton, Tl as Hypothesis, Tn as WireframeTableCellWireframe, To as ObjectSchema, Tr as WireframeMenubarMenu, Ts as RecordItem, Tt as WireframeButtonGroupText, Tu as Columns, U as WireframeSidebarMenuButton, Ua as ParetoChart, Uc as Ref, Ui as WireframeAccordionContent, Ul as CONFIDENCES, Un as WireframeTabsContent, Uo as CodeGroup, Ur as WireframeHoverCardTrigger, Us as Event, Ut as WireframeFieldSet, Uu as Bar, V as WireframeSidebarMenuAction, Va as SlopeChart, Vc as Issue, Vi as WireframeAlertWireframe, Vl as Flow, Vn as WireframeTextarea, Vo as ToolCall, Vr as WireframeHoverCard, Vs as TraceFrame, Vt as WireframeFieldLegend, Vu as Bench, W as WireframeSidebarMenuButtonWireframe, Wa as IntervalPlot, Wc as Radar, Wi as WireframeAccordionItem, Wl as Finding, Wn as WireframeTabsList, Wo as CodeWalkthrough, Wr as WireframeHoverCardWireframeExample, Ws as Timeline, Wt as WireframeFieldTitle, Wu as BarChart, X as WireframeSidebarProvider, Xa as ConfusionMatrix, Xc as Plan, Xi as wireframeButtonGroupVariants, Xl as Figure, Xn as WireframeTextCaption, Xo as TabItem, Xr as WireframeDrawerHeader, Xs as Terminal, Xt as WireframeContextMenuItemWireframe, Xu as Question, Y as WireframeSidebarMenuSubItem, Ya as DotPlot, Yc as Pre, Yi as wireframeBadgeVariants, Yl as FileRef, Yn as WireframeText, Yo as SyncedTabs, Yr as WireframeDrawerFooter, Ys as parseDuration, Yt as WireframeContextMenuItem, Yu as QUESTION_TYPES, Z as WireframeSidebarRail, Za as CohortTable, Zc as PlanHeader, Zi as wireframeButtonVariants, Zl as EnvVar, Zn as WireframeTextHeading, Zo as Cite, Zr as WireframeDrawerOverlay, Zs as SYMBOL_KINDS, Zt as WireframeContextMenuLabel, Zu as Approval, _ as WireframeEmptyMedia, _a as EntityRelations, _c as Severity, _i as WireframeCheckbox, _l as Ins, _n as WireframeItemMediaWireframe, _o as MaintenanceWindow, _r as WireframePaginationNext, _s as AnswerSheet, _t as WireframeInputGroup, _u as Decision, a as WireframeProductGrid, aa as WireframeStack, ac as Service, ai as WireframeDialogDescription, al as PACKAGE_KINDS, an as WireframeContextMenuSubContent, ao as DecisionMatrix, ar as WireframeSelectItem, as as TableOfFigures, at as WireframeSheetFooter, au as DiffStat, b as WireframeEmptyTitleWireframe, ba as MindMap, bc as Search, bi as WireframeCardContent, bl as Icon, bn as WireframeItemTitleWireframe, bo as Remediation, br as WireframeMenubarCheckboxItem, bs as DocumentSearch, bt as WireframeInputGroupInput, bu as Board, c as WireframeContactForm, ca as DatasetDiff, cc as STATUSES, ci as WireframeDialogOverlay, cl as Owner, cn as WireframeItem, co as KeyResults, cr as WireframeSelectScrollUpButton, cs as AnnotatedImage, ct as WireframeSheetTitleWireframe, cu as FileDiff, d as WireframeHeroSection, da as SmallMultiples, dc as Stats, di as WireframeDialogTrigger, dl as Meta, dn as WireframeItemDescription, do as RiskRegister, dr as WireframeSelectValue, ds as ImageGallery, dt as WireframeFormControl, du as DEP_KINDS, ea as wireframeToggleVariants, ec as Step, ed as MdxrComponent, ei as WireframeDrawerTrigger, el as PieChart, en as WireframeContextMenuRadioGroup, eo as BumpChart, er as WireframeSlider, es as NumberedEquation, et as WireframeSheet, eu as Endpoints, f as WireframeEmpty, fa as Architecture, fc as SPARK_TONES, fi as WireframeDialogWireframeExample, fl as MetaItem, fn as WireframeItemDescriptionWireframe, fo as Scope, fr as WireframePagination, fs as PageBreak, ft as WireframeFormDescription, fu as Dep, g as WireframeEmptyHeader, ga as DependencyMatrix, gc as SEVERITY_LEVELS, gi as WireframeCollapsibleWireframeExample, gl as Del, gn as WireframeItemMedia, go as FeatureFlags, gr as WireframePaginationLink, gs as VisualDiff, gt as WireframeFormMessage, gu as DECISION_STATUSES, h as WireframeEmptyDescriptionWireframe, ha as DecisionTree, hc as Stack, hi as WireframeCollapsibleTrigger, hl as Json, hn as WireframeItemHeader, ho as ErrorBudget, hr as WireframePaginationItem, hs as Video, ht as WireframeFormLabel, hu as PerformanceTarget, i as WireframeProfilePage, ia as WireframeSection, ic as SERVICE_STATUSES, ii as WireframeDialogContent, il as Stop, in as WireframeContextMenuSub, io as CapacityPlan, ir as WireframeSelectGroup, is as Sources, it as WireframeSheetDescriptionWireframe, iu as Due, j as WireframeSidebarFooter, ja as ErrorCatalog, jc as Risk, ji as WireframeBreadcrumbPage, jl as Glossary, jn as WireframeList, jo as Evidence, jr as WireframeMenubarSub, js as VERDICTS, jt as WireframeCarouselNext, ju as Change, k as WireframeSidebar, ka as ConfigReference, kc as Sankey, ki as WireframeBreadcrumbLink, kl as Edge, kn as WireframeTableHeader, ko as Assumptions, kr as WireframeMenubarSeparator, ks as Span, kt as WireframeCarouselItem, ku as Checks, l as WireframeRegisterForm, la as JsonDiff, lc as StatusBadge, li as WireframeDialogPortal, ll as OPTION_STATUSES, ln as WireframeItemActions, lo as Objectives, lr as WireframeSelectSeparator, ls as AudioTranscript, lt as WireframeSheetTrigger, lu as parseDiff, m as WireframeEmptyDescription, ma as DataLineage, mc as Row, mi as WireframeCollapsibleContent, ml as LineChart, mn as WireframeItemGroup, mo as AlertRules, mr as WireframePaginationEllipsis, ms as PrintLayout, mt as WireframeFormItem, mu as ResearchClaim, n as builtinComponents, na as ChartConfig$1, nc as DAY_STATUSES, nd as textOf, ni as WireframeDialog, nl as Phase, nn as WireframeContextMenuSeparator, no as BoxPlot, nr as WireframeSelect, ns as Sidenote, nt as WireframeSheetContent, nu as EFFORT_SIZES, o as WireframePricing, oa as ApiDiff, oc as StatusPage, oi as WireframeDialogFooter, ol as Package, on as WireframeContextMenuSubTrigger, oo as DependencyPlan, or as WireframeSelectLabel, os as TermRef, ot as WireframeSheetHeader, ou as DiffCommentSpec, p as WireframeEmptyContent, pa as BundleReport, pc as Spark, pi as WireframeCollapsible, pl as Matrix, pn as WireframeItemFooter, po as Traceability, pr as WireframePaginationContent, ps as PdfPreview, pt as WireframeFormField, pu as Deps, q as WireframeSidebarMenuSub, qa as ECDF, qc as PRIORITY_LEVELS, qi as useWireframeFormField, ql as File, qn as WireframeSonnerWireframeExample, qo as Request, qr as WireframeDrawerContent, qs as Tests, qt as WireframeContextMenuContent, qu as Ask, r as WireframeSettingsPage, ra as Wireframe, rc as Day, ri as WireframeDialogClose, rl as Pathway, rn as WireframeContextMenuShortcut, ro as ActionItems, rr as WireframeSelectContent, rs as Source, rt as WireframeSheetDescription, ru as Effort, s as WireframeDashboard, sa as ConfigDiff, sc as Uptime, si as WireframeDialogHeader, sl as Packages, sn as WireframeContextMenuTrigger, so as Estimate, sr as WireframeSelectScrollDownButton, ss as Theorem, st as WireframeSheetTitle, su as DiffView, t as DocContext, ta as CarouselApi$1, tc as Steps, td as defineComponent, ti as WireframeDrawerWireframeExample, tl as Slice, tn as WireframeContextMenuRadioItem, to as BulletChart, tr as WireframeSeparator, ts as Proof, tt as WireframeSheetClose, tu as HTTP_METHODS, u as WireframeLoginForm, ua as SchemaDiff, uc as Stat, ui as WireframeDialogTitle, ul as Option, un as WireframeItemContent, uo as RACI, ur as WireframeSelectTrigger, us as ImageCompare, ut as WireframeForm, uu as Details, v as WireframeEmptyMediaWireframe, va as Flamegraph, vc as isSeverity, vi as WireframeCard, vl as INCIDENT_STATUSES, vn as WireframeItemSeparator, vo as PermissionMatrix, vr as WireframePaginationPrevious, vs as Calculator, vt as WireframeInputGroupAddon, vu as After, w as WireframeChartLegendContent, wa as StateDiagram, wc as DbTable, wi as WireframeCardTitle, wl as Hypotheses, wn as WireframeTableCell, wo as ThreatModel, wr as WireframeMenubarLabel, ws as JourneyMap, wt as WireframeButtonGroupSeparator, wu as Column, x as WireframeChart, xa as QueryPlan, xc as Searches, xi as WireframeCardDescription, xl as hasIcon, xn as WireframeTable, xo as Rollout, xr as WireframeMenubarContent, xs as PromptTemplate, xt as WireframeInputGroupText, xu as BoardCard, y as WireframeEmptyTitle, ya as ImpactMap, yc as Series, yi as WireframeCardAction, yl as Incident, yn as WireframeItemTitle, yo as RecoveryPlan, yr as WireframeMenubar, ys as Checklist, yt as WireframeInputGroupButton, yu as Before, z as WireframeSidebarInset, za as UpSetPlot, zc as Release, zi as WireframeAlertDescription, zl as Funnel, zn as WireframeTooltipWireframeExample, zo as ModelComparison, zr as WireframeMedia, zs as FRAME_KINDS, zt as WireframeFieldLabel, zu as Delta } from "./doc-context-BrEC6V0v.mjs";
2
2
  import * as React$2 from "react";
3
3
  import React$1 from "react";
4
4
  import { Accordion as Accordion$1 } from "@base-ui/react/accordion";
@@ -69,7 +69,7 @@ declare function AlertAction({ className, ...props }: React$2.ComponentProps<"di
69
69
  //#region src/components/ui/button.d.ts
70
70
  declare const buttonVariants: (props?: ({
71
71
  size?: "default" | "sm" | "xs" | "icon" | "icon-lg" | "icon-sm" | "icon-xs" | "lg" | null | undefined;
72
- variant?: "default" | "destructive" | "link" | "ghost" | "outline" | "secondary" | null | undefined;
72
+ variant?: "link" | "default" | "destructive" | "ghost" | "outline" | "secondary" | null | undefined;
73
73
  } & import("class-variance-authority/types").ClassProp) | undefined) => string;
74
74
  declare function Button({ className, variant, size, ...props }: Button$1.Props & VariantProps<typeof buttonVariants>): import("react").JSX.Element;
75
75
  //#endregion
@@ -126,7 +126,7 @@ declare function AvatarGroupCount({ className, ...props }: React$2.ComponentProp
126
126
  //#endregion
127
127
  //#region src/components/ui/badge.d.ts
128
128
  declare const badgeVariants: (props?: ({
129
- variant?: "default" | "destructive" | "link" | "ghost" | "outline" | "secondary" | null | undefined;
129
+ variant?: "link" | "default" | "destructive" | "ghost" | "outline" | "secondary" | null | undefined;
130
130
  } & import("class-variance-authority/types").ClassProp) | undefined) => string;
131
131
  declare function Badge({ className, variant, render, ...props }: useRender.ComponentProps<"span"> & VariantProps<typeof badgeVariants>): import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>>;
132
132
  //#endregion
@@ -478,7 +478,7 @@ declare const itemVariants: (props?: ({
478
478
  } & import("class-variance-authority/types").ClassProp) | undefined) => string;
479
479
  declare function Item({ className, variant, size, render, ...props }: useRender.ComponentProps<"div"> & VariantProps<typeof itemVariants>): React$2.ReactElement<unknown, string | React$2.JSXElementConstructor<any>>;
480
480
  declare const itemMediaVariants: (props?: ({
481
- variant?: "default" | "image" | "icon" | null | undefined;
481
+ variant?: "image" | "default" | "icon" | null | undefined;
482
482
  } & import("class-variance-authority/types").ClassProp) | undefined) => string;
483
483
  declare function ItemMedia({ className, variant, ...props }: React$2.ComponentProps<"div"> & VariantProps<typeof itemMediaVariants>): React$2.JSX.Element;
484
484
  declare function ItemContent({ className, ...props }: React$2.ComponentProps<"div">): React$2.JSX.Element;
@@ -494,7 +494,7 @@ declare function KbdGroup({ className, ...props }: React.ComponentProps<"div">):
494
494
  //#endregion
495
495
  //#region src/components/ui/marker.d.ts
496
496
  declare const markerVariants: (props?: ({
497
- variant?: "default" | "separator" | "border" | null | undefined;
497
+ variant?: "separator" | "default" | "border" | null | undefined;
498
498
  } & import("class-variance-authority/types").ClassProp) | undefined) => string;
499
499
  declare function Marker({ className, variant, render, ...props }: useRender.ComponentProps<"div"> & VariantProps<typeof markerVariants>): React$2.ReactElement<unknown, string | React$2.JSXElementConstructor<any>>;
500
500
  declare function MarkerIcon({ className, ...props }: React$2.ComponentProps<"span">): React$2.JSX.Element;
@@ -750,7 +750,7 @@ declare function TableCaption({ className, ...props }: React$2.ComponentProps<"c
750
750
  //#region src/components/ui/tabs.d.ts
751
751
  declare function Tabs({ className, orientation, ...props }: Tabs$1.Root.Props): import("react").JSX.Element;
752
752
  declare const tabsListVariants: (props?: ({
753
- variant?: "default" | "line" | null | undefined;
753
+ variant?: "line" | "default" | null | undefined;
754
754
  } & import("class-variance-authority/types").ClassProp) | undefined) => string;
755
755
  declare function TabsList({ className, variant, ...props }: Tabs$1.List.Props & VariantProps<typeof tabsListVariants>): import("react").JSX.Element;
756
756
  declare function TabsTrigger({ className, ...props }: Tabs$1.Tab.Props): import("react").JSX.Element;
@@ -1,2 +1,2 @@
1
- import { $ as WireframeSidebarMenuAction, $_ as BoardCard, $a as ToastProvider, $c as markerVariants, $d as Bubble, $f as DecisionTree, $h as Limitations, $i as WireframeAccordionTrigger, $l as DropdownMenuRadioItem, $m as Runbook, $n as WireframeFieldError, $o as SheetContent, $p as Props, $r as WireframeContextMenuSubContent, $s as PaginationNext, $t as WireframeMenubarPortal, $u as Combobox, A as WireframeTableCell, A_ as parseDiff, Aa as Day, Ac as MessageScrollerViewport, Ad as ChartStyle, Af as AlertDescription, Ag as Sources, Ah as Glossary, Ai as WireframeButtonGroup, Al as FieldDescription, Am as Scope, An as WireframeInputGroup, Ao as SidebarInput, Ap as ENTRY_KINDS, Ar as WireframeDialogDescription, As as QuestionnaireItem, At as WireframeSelectScrollUpButton, Au as ContextMenuSub, Av as Icon, B as WireframeSlider, B_ as formatDuration, Ba as Spark, Bc as MenubarMenu, Bd as CardAction, Bf as AlertDialogOverlay, Bg as PrintLayout, Bh as Flow, Bi as WireframeBreadcrumbSeparator, Bl as EmptyContent, Bm as PACKAGE_KINDS, Bn as WireframeHeroSection, Bo as SidebarMenuSubItem, Bp as Issue, Br as WireframeContextMenuCheckboxItem, Bs as ProgressTrack, Bt as WireframePaginationContent, Bu as CommandList, C as WireframeTabs, C_ as Comments, Ca as DatasetDiff, Cc as MessageGroup, Cd as Collapsible, Cf as AttachmentGroup, Cg as Cite, Ch as Node, Ci as WireframeCardAction, Cl as FramePanel, Cm as DecisionMatrix, Cn as WireframeItemHeader, Co as SidebarContent, Cp as Link, Cr as WireframeDrawerPortal, Cs as QuestionnaireActions, Ct as WireframeSeparator, Cu as ContextMenuItem, Cv as QUESTION_TYPES, D as WireframeTable, D_ as Pre, Da as Steps, Dc as MessageScrollerContent, Dd as ChartContainer, Df as AspectRatio, Dg as Proof, Di as WireframeCardHeader, Dl as FieldsetPrimitive, Dm as Objectives, Dn as WireframeItemTitle, Do as SidebarGroupContent, Dp as ResearchClaim, Dr as WireframeDialog, Ds as QuestionnaireDescription, Dt as WireframeSelectItem, Du as ContextMenuRadioItem, Dv as Approval, E as WireframeTabsTrigger, E_ as Review, Ea as Step, Ec as MessageScrollerButton, Ed as Checkbox, Ef as AttachmentTrigger, Eg as NumberedEquation, Ei as WireframeCardFooter, El as FieldsetLegend, Em as KeyResults, En as WireframeItemSeparator, Eo as SidebarGroupAction, Ep as Risk, Er as WireframeDrawerWireframeExample, Es as QuestionnaireChoices, Et as WireframeSelectGroup, Eu as ContextMenuRadioGroup, F as WireframeTableHeader, F_ as Check, Fa as Stat, Fc as MenubarCheckboxItem, Fd as CarouselItem, Ff as AlertDialogContent, Fg as AudioTranscript, Fh as Gantt, Fi as WireframeBreadcrumbEllipsis, Fl as FieldSeparator, Fm as Slice, Fn as WireframeInputGroupTextarea, Fo as SidebarMenuButton, Fp as CompatibilityMatrix, Fr as WireframeDialogTitle, Fs as QuestionnaireSubmit, Ft as WireframeProfilePage, Fu as CommandDialog, Fv as defineComponent, G as WireframeSidebarGroupAction, G_ as CALLOUT_KINDS, Ga as Toggle, Gc as MenubarShortcut, Gd as CardTitle, Gf as buttonVariants, Gg as Checklist, Gh as FILE_KINDS, Gi as WireframeAvatarImage, Gl as DropdownMenu, Gm as AlertRules, Gn as WireframeFormField, Go as useSidebar, Gp as BenchmarkSuite, Gr as WireframeContextMenuLabel, Gs as PopoverHeader, Gt as WireframePaginationPrevious, Gu as DialogContent, H as WireframeSidebarContent, H_ as CHANGE_KINDS, Hc as MenubarRadioGroup, Hd as CardDescription, Hf as AlertDialogTitle, Hg as VisualDiff, Hh as CONFIDENCES, Hi as WireframeBadgeWireframe, Hl as EmptyHeader, Hm as Packages, Hn as WireframeForm, Ho as SidebarRail, Hp as Ref, Hr as WireframeContextMenuGroup, Hs as Popover, Ht as WireframePaginationItem, Hu as CommandShortcut, I as WireframeTableRow, I_ as Checks, Ia as Stats, Ic as MenubarContent, Id as CarouselNext, If as AlertDialogDescription, Ig as ImageCompare, Ih as Milestone, Ii as WireframeBreadcrumbItem, Il as FieldSet, Im as Phase, In as WireframeHoverCard, Io as SidebarMenuItem, Ip as ConfigReference, Ir as WireframeDialogTrigger, Is as QuestionnaireTitle, It as WireframeProductGrid, Iu as CommandEmpty, J as WireframeSidebarGroupLabelWireframe, J_ as Bump, Ja as ToastAction, Jc as MenubarSubTrigger, Jd as ButtonGroup, Jf as AccordionItem, Jg as Ranking, Jh as FileRef, Ji as WireframeAlertTitle, Jl as DropdownMenuGroup, Jm as MaintenanceWindow, Jn as WireframeFormMessage, Jo as TooltipProvider, Jp as TestHistory, Jr as WireframeContextMenuRadioGroup, Js as Pagination, Jt as WireframeMenubarContent, Ju as DialogHeader, K as WireframeSidebarGroupContent, K_ as Callout, Ka as toggleVariants, Kc as MenubarSub, Kd as Calendar, Kf as Accordion, Kg as DocumentSearch, Kh as File, Ki as WireframeAlert, Kl as DropdownMenuCheckboxItem, Km as ErrorBudget, Kn as WireframeFormItem, Ko as Tooltip, Kp as ContractResults, Kr as WireframeContextMenuLabelWireframe, Ks as PopoverTitle, Kt as WireframeMenubar, Ku as DialogDescription, L as WireframeSwitch, L_ as TEST_STATUSES, La as Row, Lc as MenubarGroup, Ld as CarouselPrevious, Lf as AlertDialogFooter, Lg as ImageGallery, Lh as Task, Li as WireframeBreadcrumbLink, Ll as FieldTitle, Lm as PerformanceTarget, Ln as WireframeHoverCardContent, Lo as SidebarMenuSkeleton, Lp as DeprecationTimeline, Lr as WireframeDialogWireframeExample, Ls as Progress, Lt as WireframePricing, Lu as CommandGroup, Lv as textOf, M as WireframeTableFooter, M_ as Columns, Ma as Service, Mc as useMessageScrollerScrollable, Md as ChartTooltipContent, Mf as AlertDialog, Mg as TermRef, Mh as GAUGE_TONES, Mi as WireframeButtonGroupText, Ml as FieldGroup, Mm as Plan, Mn as WireframeInputGroupButton, Mo as SidebarMenu, Mp as Release, Mr as WireframeDialogHeader, Ms as QuestionnairePrevious, Mt as WireframeSelectTrigger, Mu as ContextMenuSubTrigger, Mv as normalizeIconName, N as WireframeTableHead, N_ as Cmd, Na as StatusPage, Nc as useMessageScrollerVisibility, Nd as Carousel, Nf as AlertDialogAction, Ng as Theorem, Nh as Gauge, Ni as WireframeButtonGroupTextWireframe, Nl as FieldLabel, Nm as PlanHeader, Nn as WireframeInputGroupInput, No as SidebarMenuAction, Np as ApiParams, Nr as WireframeDialogOverlay, Ns as QuestionnaireProgress, Nt as WireframeSelectValue, Nu as ContextMenuTrigger, O as WireframeTableBody, O_ as Terminal, Oa as Summary, Oc as MessageScrollerItem, Od as ChartLegend, Of as Alert, Og as Sidenote, Oi as WireframeCardTitle, Ol as Field, Om as RACI, On as WireframeItemTitleWireframe, Oo as SidebarGroupLabel, Op as Req, Or as WireframeDialogClose, Os as QuestionnaireError, Ot as WireframeSelectLabel, Ou as ContextMenuSeparator, Ov as Approvals, P as WireframeTableHeadWireframe, P_ as CHECK_STATUSES, Pa as Uptime, Pc as Menubar, Pd as CarouselContent, Pf as AlertDialogCancel, Pg as AnnotatedImage, Ph as Gauges, Pi as WireframeBreadcrumb, Pl as FieldLegend, Pm as PieChart, Pn as WireframeInputGroupText, Po as SidebarMenuBadge, Pp as CliReference, Pr as WireframeDialogPortal, Ps as QuestionnaireSkip, Pt as WireframeRegisterForm, Pu as Command, Pv as DocContext, Q as WireframeSidebarMenu, Q_ as Board, Qa as ToastPortal, Qc as MarkerIcon, Qd as Separator, Qf as DataLineage, Qg as JourneyMap, Qh as Evidence, Qi as WireframeAccordionItem, Ql as DropdownMenuRadioGroup, Qm as Rollout, Qn as WireframeFieldDescriptionWireframe, Qo as SheetClose, Qp as Prop, Qr as WireframeContextMenuSub, Qs as PaginationLink, Qt as WireframeMenubarMenu, Qu as DialogTrigger, R as WireframeSonnerWireframeExample, R_ as Test, Ra as Stack, Rc as MenubarItem, Rd as useCarousel, Rf as AlertDialogHeader, Rg as PageBreak, Rh as Funnel, Ri as WireframeBreadcrumbList, Rl as Label, Rm as Pathway, Rn as WireframeHoverCardTrigger, Ro as SidebarMenuSub, Rp as ErrorCatalog, Rr as WireframeDashboard, Rs as ProgressIndicator, Rt as WireframeParagraph, Ru as CommandInput, S as WireframeTextParagraph, S_ as Before, Sa as ConfigDiff, Sc as MessageFooter, Sd as Input, Sf as AttachmentDescription, Sg as TabItem, Sh as Edge, Si as WireframeCard, Sl as FrameHeader, Sm as CapacityPlan, Sn as WireframeItemGroup, So as Sidebar, Sp as Scatter, Sr as WireframeDrawerOverlay, Ss as Questionnaire, St as WireframeSettingsPage, Su as ContextMenuGroup, Sv as Choice, T as WireframeTabsList, T_ as REVIEW_VERDICTS, Ta as SchemaDiff, Tc as MessageScroller, Td as CollapsibleTrigger, Tf as AttachmentTitle, Tg as Include, Ti as WireframeCardDescription, Tl as Fieldset, Tm as Estimate, Tn as WireframeItemMediaWireframe, To as SidebarGroup, Tp as RISK_LEVELS, Tr as WireframeDrawerTrigger, Ts as QuestionnaireChoiceDescription, Tt as WireframeSelectContent, Tu as ContextMenuPortal, U as WireframeSidebarFooter, U_ as Change, Ua as ToggleGroup, Uc as MenubarRadioItem, Ud as CardFooter, Uf as AlertDialogTrigger, Ug as AnswerSheet, Uh as Finding, Ui as WireframeAvatar, Ul as EmptyMedia, Um as OPTION_STATUSES, Un as WireframeFormControl, Uo as SidebarSeparator, Up as Radar, Ur as WireframeContextMenuItem, Us as PopoverContent, Ut as WireframePaginationLink, Uu as Dialog, Uv as TERMINAL_LANGS, V as WireframeSidebar, V_ as parseDuration, Va as SmallMultiples, Vc as MenubarPortal, Vd as CardContent, Vf as AlertDialogPortal, Vg as Video, Vh as FlowStep, Vi as WireframeBadge, Vl as EmptyDescription, Vm as Package, Vn as WireframeHeading, Vo as SidebarProvider, Vp as PR, Vr as WireframeContextMenuContent, Vs as ProgressValue, Vt as WireframePaginationEllipsis, Vu as CommandSeparator, W as WireframeSidebarGroup, W_ as Changes, Wa as ToggleGroupItem, Wc as MenubarSeparator, Wd as CardHeader, Wf as Button, Wg as Calculator, Wh as Findings, Wi as WireframeAvatarFallback, Wl as EmptyTitle, Wm as Option, Wn as WireframeFormDescription, Wo as SidebarTrigger, Wp as AccessibilityReport, Wr as WireframeContextMenuItemWireframe, Ws as PopoverDescription, Wt as WireframePaginationNext, Wu as DialogClose, X as WireframeSidebarInput, X_ as Bridge, Xa as ToastContent, Xc as Marker, Xd as ButtonGroupText, Xf as Architecture, Xh as Assumptions, Xi as WireframeAccordion, Xl as DropdownMenuLabel, Xm as RecoveryPlan, Xn as WireframeFieldContent, Xo as Skeleton, Xp as Pin, Xr as WireframeContextMenuSeparator, Xs as PaginationEllipsis, Xt as WireframeMenubarItem, Xu as DialogPortal, Y as WireframeSidebarHeader, Y_ as Bumps, Ya as ToastClose, Yc as MenubarTrigger, Yd as ButtonGroupSeparator, Yf as AccordionTrigger, Yg as Wizard, Yh as Figure, Yi as WireframeAlertWireframe, Yl as DropdownMenuItem, Ym as PermissionMatrix, Yn as WireframeField, Yo as TooltipTrigger, Yp as TestMatrix, Yr as WireframeContextMenuRadioItem, Ys as PaginationContent, Yt as WireframeMenubarGroup, Yu as DialogOverlay, Z as WireframeSidebarInset, Z_ as Delta, Za as ToastDescription, Zc as MarkerContent, Zd as buttonGroupVariants, Zf as BundleReport, Zg as DiffStat, Zh as DocumentHistory, Zi as WireframeAccordionContent, Zl as DropdownMenuPortal, Zm as Remediation, Zn as WireframeFieldDescription, Zo as Sheet, Zp as Quadrant, Zr as WireframeContextMenuShortcut, Zs as PaginationItem, Zt as WireframeMenubarLabel, Zu as DialogTitle, _ as WireframeTextarea, _a as Event, _c as MeterTrack, _d as InputGroupButton, _f as AvatarImage, _g as Conversation, _h as Hypotheses, _i as WireframeCarouselContent, _l as HoverCardContent, _m as BulletChart, _n as WireframeItemActions, _o as TableHeader, _p as Score, _r as WireframeDrawerClose, _s as ResizableHandle, _t as WireframeSheetFooter, _u as DirectionProvider, _v as Vuln, a as wireframeBadgeVariants, a_ as Dep, aa as VERDICTS, ac as NavigationMenuLink, ad as ComboboxEmpty, af as BreadcrumbItem, ag as Experiment, ah as Matrix, ai as WireframeCollapsibleTrigger, al as ItemDescription, am as ParetoChart, an as WireframeMenubarSubContent, ao as useToastManager, ap as QueryPlan, ar as WireframeFieldSet, as as Select, at as WireframeSidebarMenuSub, au as DropdownMenuTrigger, av as Priority, b as WireframeTextHeading, ba as SymbolRef, bc as MessageAvatar, bd as InputGroupTextarea, bf as AttachmentActions, bg as Response, bh as Grid, bi as WireframeCarouselNext, bl as FrameDescription, bn as WireframeItemDescriptionWireframe, bo as Spinner, bp as Schema, br as WireframeDrawerFooter, bs as RadioGroup, bt as WireframeSheetTitleWireframe, bu as ContextMenuCheckboxItem, bv as isSeverity, c as wireframeTextVariants, c_ as Decision, ca as Set, cc as NavigationMenuTrigger, cd as ComboboxItem, cf as BreadcrumbPage, cg as ToolCall, ch as Json, ci as WireframeChart, cl as ItemHeader, cm as Heatmap, cn as WireframeMenubarWireframeExample, co as TabsList, cp as StateDiagram, cr as WireframeEmptyContent, cs as SelectItem, ct as WireframeSidebarProvider, cu as DrawerContent, cv as Due, d as WireframeTooltip, d_ as FilterPanel, da as Treemap, dc as NativeSelectOptGroup, dd as ComboboxSeparator, df as badgeVariants, dg as Endpoint, dh as SymbolOutline, di as WireframeChartLegendContent, dl as ItemTitle, dm as DotPlot, dn as WireframeList, do as Table, dr as WireframeEmptyHeader, ds as SelectScrollUpButton, dt as WireframeSidebarTrigger, du as DrawerHeader, dv as Benchmarks, ea as Wireframe, ec as PaginationPrevious, ed as ComboboxChip, ef as BubbleContent, eg as Provenance, eh as SLO, ei as WireframeContextMenuSubTrigger, el as Kbd, em as ViolinPlot, en as WireframeMenubarRadioGroup, eo as ToastTitle, ep as DependencyMatrix, er as WireframeFieldGroup, es as SheetDescription, et as WireframeSidebarMenuBadge, eu as DropdownMenuSeparator, ev as Lane, f as WireframeTooltipContent, f_ as RecordItem, fa as Tree, fc as NativeSelectOption, fd as ComboboxTrigger, ff as Avatar, fg as Endpoints, fh as Del, fi as WireframeChartStyle, fl as InputOTP, fm as ConfusionMatrix, fn as WireframeListGroup, fo as TableBody, fr as WireframeEmptyMedia, fs as SelectSeparator, ft as WireframeSheet, fu as DrawerOverlay, fv as Bar, g as WireframeToggle, ga as Toc, gc as MeterPrimitive, gd as InputGroupAddon, gf as AvatarGroupCount, gg as CodeWalkthrough, gh as HYPOTHESIS_STATUSES, gi as WireframeCarousel, gl as HoverCard, gm as BumpChart, gn as WireframeItem, go as TableHead, gp as Searches, gr as WireframeDrawer, gs as ScrollBar, gt as WireframeSheetDescriptionWireframe, gu as DrawerTrigger, gv as Audit, h as WireframeTooltipWireframeExample, ha as TraceFrame, hc as MeterLabel, hd as InputGroup, hf as AvatarGroup, hg as CodeGroup, hh as Incident, hi as WireframeChartWireframe, hl as InputOTPSlot, hm as CalendarHeatmap, hn as WireframeKbdGroup, ho as TableFooter, hp as Search, hr as WireframeEmptyTitleWireframe, hs as ScrollArea, ht as WireframeSheetDescription, hu as DrawerTitle, i as useWireframeSidebar, i_ as DEP_KINDS, ia as Waterfall, ic as NavigationMenuItem, id as ComboboxContent, if as BreadcrumbEllipsis, ig as EvalReport, ih as MetaItem, ii as WireframeCollapsibleContent, il as ItemContent, im as RidgelinePlot, in as WireframeMenubarSub, io as toast, ip as MindMap, ir as WireframeFieldSeparator, is as SheetTrigger, it as WireframeSidebarMenuSkeleton, iu as DropdownMenuSubTrigger, iv as PRIORITY_LEVELS, j as WireframeTableCellWireframe, j_ as Column, ja as SERVICE_STATUSES, jc as useMessageScroller, jd as ChartTooltip, jf as AlertTitle, jg as TableOfFigures, jh as Term, ji as WireframeButtonGroupSeparator, jl as FieldError, jm as Traceability, jn as WireframeInputGroupAddon, jo as SidebarInset, jp as Entry, jr as WireframeDialogFooter, js as QuestionnaireNext, jt as WireframeSelectSeparator, ju as ContextMenuSubContent, jv as hasIcon, k as WireframeTableCaption, k_ as DiffView, ka as DAY_STATUSES, kc as MessageScrollerProvider, kd as ChartLegendContent, kf as AlertAction, kg as Source, ki as WireframeButton, kl as FieldContent, km as RiskRegister, kn as WireframeInput, ko as SidebarHeader, kp as Reqs, kr as WireframeDialogContent, ks as QuestionnaireInput, kt as WireframeSelectScrollDownButton, ku as ContextMenuShortcut, kv as Owner, l as wireframeToast, l_ as DataTable, la as Venn, lc as navigationMenuTriggerStyle, ld as ComboboxLabel, lf as BreadcrumbSeparator, lg as EnvVar, lh as Logs, li as WireframeChartContainer, ll as ItemMedia, lm as ECDF, ln as WireframeMedia, lo as TabsTrigger, lp as Swimlane, lr as WireframeEmptyDescription, ls as SelectLabel, lt as WireframeSidebarRail, lu as DrawerDescription, lv as BENCH_BETTER, m as WireframeTooltipTrigger, ma as Trace, mc as MeterIndicator, md as useComboboxAnchor, mf as AvatarFallback, mg as ApiExample, mh as INCIDENT_STATUSES, mi as WireframeChartTooltipContent, ml as InputOTPSeparator, mm as ChordDiagram, mn as WireframeKbd, mo as TableCell, mr as WireframeEmptyTitle, ms as SelectValue, mt as WireframeSheetContent, mu as DrawerSwipeHandle, n as useWireframeForm, na as WireframeStack, nc as NavigationMenuContent, nd as ComboboxChipsInput, nf as BubbleReactions, ng as DatasetProfile, nh as ObjectSchema, ni as WireframeContactForm, nl as Item, nm as Sunburst, nn as WireframeMenubarSeparator, no as Toaster, np as Flamegraph, nr as WireframeFieldLabelWireframe, ns as SheetHeader, nt as WireframeSidebarMenuButtonWireframe, nu as DropdownMenuSub, nv as StatusBadge, o as wireframeButtonGroupVariants, o_ as Deps, oa as Verdict, oc as NavigationMenuList, od as ComboboxGroup, of as BreadcrumbLink, og as ModelComparison, oh as LineChart, oi as WireframeCollapsibleWireframeExample, ol as ItemFooter, om as IntervalPlot, on as WireframeMenubarSubTrigger, oo as Tabs, op as SequenceDiagram, or as WireframeFieldTitle, os as SelectContent, ot as WireframeSidebarMenuSubButton, ou as Drawer, ov as EFFORT_SIZES, p as WireframeTooltipProvider, pa as FRAME_KINDS, pc as Meter, pd as ComboboxValue, pf as AvatarBadge, pg as HTTP_METHODS, ph as Ins, pi as WireframeChartTooltip, pl as InputOTPGroup, pm as CohortTable, pn as WireframeLabel, po as TableCaption, pr as WireframeEmptyMediaWireframe, ps as SelectTrigger, pt as WireframeSheetClose, pu as DrawerPortal, pv as BarChart, q as WireframeSidebarGroupLabel, q_ as BUMP_KINDS, qa as Toast, qc as MenubarSubContent, qd as CalendarDayButton, qf as AccordionContent, qg as PromptTemplate, qh as Files, qi as WireframeAlertDescription, ql as DropdownMenuContent, qm as FeatureFlags, qn as WireframeFormLabel, qo as TooltipContent, qp as Coverage, qr as WireframeContextMenuPortal, qs as PopoverTrigger, qt as WireframeMenubarCheckboxItem, qu as DialogFooter, r as useWireframeFormField, r_ as Details, ra as Span, rc as NavigationMenuIndicator, rd as ComboboxCollection, rf as Breadcrumb, rg as EvalCase, rh as Meta, ri as WireframeCollapsible, rl as ItemActions, rm as SlopeChart, rn as WireframeMenubarShortcut, ro as createToastManager, rp as ImpactMap, rr as WireframeFieldLegend, rs as SheetTitle, rt as WireframeSidebarMenuItem, ru as DropdownMenuSubContent, s as wireframeButtonVariants, s_ as DECISION_STATUSES, sa as Overlap, sc as NavigationMenuPositioner, sd as ComboboxInput, sf as BreadcrumbList, sg as TokenUsage, sh as Series, si as WireframeCheckbox, sl as ItemGroup, sm as Histogram, sn as WireframeMenubarTrigger, so as TabsContent, sp as ServiceTopology, sr as WireframeEmpty, ss as SelectGroup, st as WireframeSidebarMenuSubItem, su as DrawerClose, sv as Effort, t as builtinComponents, ta as WireframeSection, tc as NavigationMenu, td as ComboboxChips, tf as BubbleGroup, tg as DataValidation, th as ThreatModel, ti as WireframeContextMenuTrigger, tl as KbdGroup, tm as UpSetPlot, tn as WireframeMenubarRadioItem, to as ToastViewport, tp as EntityRelations, tr as WireframeFieldLabel, ts as SheetFooter, tt as WireframeSidebarMenuButton, tu as DropdownMenuShortcut, tv as STATUSES, u as wireframeToggleVariants, u_ as DownloadData, ua as Tile, uc as NativeSelect, ud as ComboboxList, uf as Badge, ug as EnvVars, uh as Reproduction, ui as WireframeChartLegend, ul as ItemSeparator, um as DumbbellChart, un as WireframeLoginForm, uo as tabsListVariants, ur as WireframeEmptyDescriptionWireframe, us as SelectScrollDownButton, ut as WireframeSidebarSeparator, uu as DrawerFooter, uv as Bench, v as WireframeText, va as Timeline, vc as MeterValue, vd as InputGroupInput, vf as Attachment, vg as PackageInstall, vh as Hypothesis, vi as WireframeCarouselItem, vl as HoverCardTrigger, vm as BoxPlot, vn as WireframeItemContent, vo as TableRow, vp as DbField, vr as WireframeDrawerContent, vs as ResizablePanel, vt as WireframeSheetHeader, vu as useDirection, vv as SEVERITY_LEVELS, w as WireframeTabsContent, w_ as Comment, wa as JsonDiff, wc as MessageHeader, wd as CollapsibleContent, wf as AttachmentMedia, wg as CrossRef, wi as WireframeCardContent, wl as FrameTitle, wm as DependencyPlan, wn as WireframeItemMedia, wo as SidebarFooter, wp as Sankey, wr as WireframeDrawerTitle, ws as QuestionnaireChoice, wt as WireframeSelect, wu as ContextMenuLabel, wv as Question, x as WireframeTextLabel, x_ as After, xa as ApiDiff, xc as MessageContent, xd as Textarea, xf as AttachmentContent, xg as SyncedTabs, xh as Graph, xi as WireframeCarouselPrevious, xl as FrameFooter, xm as ActionItems, xn as WireframeItemFooter, xo as Slider, xp as Point, xr as WireframeDrawerHeader, xs as RadioGroupItem, xt as WireframeSheetTrigger, xu as ContextMenuContent, xv as Ask, y as WireframeTextCaption, ya as SYMBOL_KINDS, yc as Message, yd as InputGroupText, yf as AttachmentAction, yg as Request, yh as Cell, yi as WireframeCarouselItemWireframe, yl as Frame, yn as WireframeItemDescription, yo as Switch, yp as DbTable, yr as WireframeDrawerDescription, ys as ResizablePanelGroup, yt as WireframeSheetTitle, yu as ContextMenu, yv as Severity, z as WireframeToaster, z_ as Tests, za as SPARK_TONES, zc as MenubarLabel, zd as Card, zf as AlertDialogMedia, zg as PdfPreview, zh as Stage, zi as WireframeBreadcrumbPage, zl as Empty, zm as Stop, zn as WireframeHoverCardWireframeExample, zo as SidebarMenuSubButton, zp as Commit, zr as WireframeContextMenu, zs as ProgressLabel, zt as WireframePagination, zu as CommandItem } from "./ui-4uP9HfXd.mjs";
1
+ import { $ as WireframeSidebarMenuAction, $_ as BoardCard, $a as ToastProvider, $c as markerVariants, $d as Bubble, $f as DecisionTree, $h as Limitations, $i as WireframeAccordionTrigger, $l as DropdownMenuRadioItem, $m as Runbook, $n as WireframeFieldError, $o as SheetContent, $p as Props, $r as WireframeContextMenuSubContent, $s as PaginationNext, $t as WireframeMenubarPortal, $u as Combobox, A as WireframeTableCell, A_ as parseDiff, Aa as Day, Ac as MessageScrollerViewport, Ad as ChartStyle, Af as AlertDescription, Ag as Sources, Ah as Glossary, Ai as WireframeButtonGroup, Al as FieldDescription, Am as Scope, An as WireframeInputGroup, Ao as SidebarInput, Ap as ENTRY_KINDS, Ar as WireframeDialogDescription, As as QuestionnaireItem, At as WireframeSelectScrollUpButton, Au as ContextMenuSub, Av as Icon, B as WireframeSlider, B_ as formatDuration, Ba as Spark, Bc as MenubarMenu, Bd as CardAction, Bf as AlertDialogOverlay, Bg as PrintLayout, Bh as Flow, Bi as WireframeBreadcrumbSeparator, Bl as EmptyContent, Bm as PACKAGE_KINDS, Bn as WireframeHeroSection, Bo as SidebarMenuSubItem, Bp as Issue, Br as WireframeContextMenuCheckboxItem, Bs as ProgressTrack, Bt as WireframePaginationContent, Bu as CommandList, C as WireframeTabs, C_ as Comments, Ca as DatasetDiff, Cc as MessageGroup, Cd as Collapsible, Cf as AttachmentGroup, Cg as Cite, Ch as Node, Ci as WireframeCardAction, Cl as FramePanel, Cm as DecisionMatrix, Cn as WireframeItemHeader, Co as SidebarContent, Cp as Link, Cr as WireframeDrawerPortal, Cs as QuestionnaireActions, Ct as WireframeSeparator, Cu as ContextMenuItem, Cv as QUESTION_TYPES, D as WireframeTable, D_ as Pre, Da as Steps, Dc as MessageScrollerContent, Dd as ChartContainer, Df as AspectRatio, Dg as Proof, Di as WireframeCardHeader, Dl as FieldsetPrimitive, Dm as Objectives, Dn as WireframeItemTitle, Do as SidebarGroupContent, Dp as ResearchClaim, Dr as WireframeDialog, Ds as QuestionnaireDescription, Dt as WireframeSelectItem, Du as ContextMenuRadioItem, Dv as Approval, E as WireframeTabsTrigger, E_ as Review, Ea as Step, Ec as MessageScrollerButton, Ed as Checkbox, Ef as AttachmentTrigger, Eg as NumberedEquation, Ei as WireframeCardFooter, El as FieldsetLegend, Em as KeyResults, En as WireframeItemSeparator, Eo as SidebarGroupAction, Ep as Risk, Er as WireframeDrawerWireframeExample, Es as QuestionnaireChoices, Et as WireframeSelectGroup, Eu as ContextMenuRadioGroup, F as WireframeTableHeader, F_ as Check, Fa as Stat, Fc as MenubarCheckboxItem, Fd as CarouselItem, Ff as AlertDialogContent, Fg as AudioTranscript, Fh as Gantt, Fi as WireframeBreadcrumbEllipsis, Fl as FieldSeparator, Fm as Slice, Fn as WireframeInputGroupTextarea, Fo as SidebarMenuButton, Fp as CompatibilityMatrix, Fr as WireframeDialogTitle, Fs as QuestionnaireSubmit, Ft as WireframeProfilePage, Fu as CommandDialog, Fv as defineComponent, G as WireframeSidebarGroupAction, G_ as CALLOUT_KINDS, Ga as Toggle, Gc as MenubarShortcut, Gd as CardTitle, Gf as buttonVariants, Gg as Checklist, Gh as FILE_KINDS, Gi as WireframeAvatarImage, Gl as DropdownMenu, Gm as AlertRules, Gn as WireframeFormField, Go as useSidebar, Gp as BenchmarkSuite, Gr as WireframeContextMenuLabel, Gs as PopoverHeader, Gt as WireframePaginationPrevious, Gu as DialogContent, H as WireframeSidebarContent, H_ as CHANGE_KINDS, Hc as MenubarRadioGroup, Hd as CardDescription, Hf as AlertDialogTitle, Hg as VisualDiff, Hh as CONFIDENCES, Hi as WireframeBadgeWireframe, Hl as EmptyHeader, Hm as Packages, Hn as WireframeForm, Ho as SidebarRail, Hp as Ref, Hr as WireframeContextMenuGroup, Hs as Popover, Ht as WireframePaginationItem, Hu as CommandShortcut, I as WireframeTableRow, I_ as Checks, Ia as Stats, Ic as MenubarContent, Id as CarouselNext, If as AlertDialogDescription, Ig as ImageCompare, Ih as Milestone, Ii as WireframeBreadcrumbItem, Il as FieldSet, Im as Phase, In as WireframeHoverCard, Io as SidebarMenuItem, Ip as ConfigReference, Ir as WireframeDialogTrigger, Is as QuestionnaireTitle, It as WireframeProductGrid, Iu as CommandEmpty, J as WireframeSidebarGroupLabelWireframe, J_ as Bump, Ja as ToastAction, Jc as MenubarSubTrigger, Jd as ButtonGroup, Jf as AccordionItem, Jg as Ranking, Jh as FileRef, Ji as WireframeAlertTitle, Jl as DropdownMenuGroup, Jm as MaintenanceWindow, Jn as WireframeFormMessage, Jo as TooltipProvider, Jp as TestHistory, Jr as WireframeContextMenuRadioGroup, Js as Pagination, Jt as WireframeMenubarContent, Ju as DialogHeader, K as WireframeSidebarGroupContent, K_ as Callout, Ka as toggleVariants, Kc as MenubarSub, Kd as Calendar, Kf as Accordion, Kg as DocumentSearch, Kh as File, Ki as WireframeAlert, Kl as DropdownMenuCheckboxItem, Km as ErrorBudget, Kn as WireframeFormItem, Ko as Tooltip, Kp as ContractResults, Kr as WireframeContextMenuLabelWireframe, Ks as PopoverTitle, Kt as WireframeMenubar, Ku as DialogDescription, L as WireframeSwitch, L_ as TEST_STATUSES, La as Row, Lc as MenubarGroup, Ld as CarouselPrevious, Lf as AlertDialogFooter, Lg as ImageGallery, Lh as Task, Li as WireframeBreadcrumbLink, Ll as FieldTitle, Lm as PerformanceTarget, Ln as WireframeHoverCardContent, Lo as SidebarMenuSkeleton, Lp as DeprecationTimeline, Lr as WireframeDialogWireframeExample, Ls as Progress, Lt as WireframePricing, Lu as CommandGroup, Lv as textOf, M as WireframeTableFooter, M_ as Columns, Ma as Service, Mc as useMessageScrollerScrollable, Md as ChartTooltipContent, Mf as AlertDialog, Mg as TermRef, Mh as GAUGE_TONES, Mi as WireframeButtonGroupText, Ml as FieldGroup, Mm as Plan, Mn as WireframeInputGroupButton, Mo as SidebarMenu, Mp as Release, Mr as WireframeDialogHeader, Ms as QuestionnairePrevious, Mt as WireframeSelectTrigger, Mu as ContextMenuSubTrigger, Mv as normalizeIconName, N as WireframeTableHead, N_ as Cmd, Na as StatusPage, Nc as useMessageScrollerVisibility, Nd as Carousel, Nf as AlertDialogAction, Ng as Theorem, Nh as Gauge, Ni as WireframeButtonGroupTextWireframe, Nl as FieldLabel, Nm as PlanHeader, Nn as WireframeInputGroupInput, No as SidebarMenuAction, Np as ApiParams, Nr as WireframeDialogOverlay, Ns as QuestionnaireProgress, Nt as WireframeSelectValue, Nu as ContextMenuTrigger, O as WireframeTableBody, O_ as Terminal, Oa as Summary, Oc as MessageScrollerItem, Od as ChartLegend, Of as Alert, Og as Sidenote, Oi as WireframeCardTitle, Ol as Field, Om as RACI, On as WireframeItemTitleWireframe, Oo as SidebarGroupLabel, Op as Req, Or as WireframeDialogClose, Os as QuestionnaireError, Ot as WireframeSelectLabel, Ou as ContextMenuSeparator, Ov as Approvals, P as WireframeTableHeadWireframe, P_ as CHECK_STATUSES, Pa as Uptime, Pc as Menubar, Pd as CarouselContent, Pf as AlertDialogCancel, Pg as AnnotatedImage, Ph as Gauges, Pi as WireframeBreadcrumb, Pl as FieldLegend, Pm as PieChart, Pn as WireframeInputGroupText, Po as SidebarMenuBadge, Pp as CliReference, Pr as WireframeDialogPortal, Ps as QuestionnaireSkip, Pt as WireframeRegisterForm, Pu as Command, Pv as DocContext, Q as WireframeSidebarMenu, Q_ as Board, Qa as ToastPortal, Qc as MarkerIcon, Qd as Separator, Qf as DataLineage, Qg as JourneyMap, Qh as Evidence, Qi as WireframeAccordionItem, Ql as DropdownMenuRadioGroup, Qm as Rollout, Qn as WireframeFieldDescriptionWireframe, Qo as SheetClose, Qp as Prop, Qr as WireframeContextMenuSub, Qs as PaginationLink, Qt as WireframeMenubarMenu, Qu as DialogTrigger, R as WireframeSonnerWireframeExample, R_ as Test, Ra as Stack, Rc as MenubarItem, Rd as useCarousel, Rf as AlertDialogHeader, Rg as PageBreak, Rh as Funnel, Ri as WireframeBreadcrumbList, Rl as Label, Rm as Pathway, Rn as WireframeHoverCardTrigger, Ro as SidebarMenuSub, Rp as ErrorCatalog, Rr as WireframeDashboard, Rs as ProgressIndicator, Rt as WireframeParagraph, Ru as CommandInput, S as WireframeTextParagraph, S_ as Before, Sa as ConfigDiff, Sc as MessageFooter, Sd as Input, Sf as AttachmentDescription, Sg as TabItem, Sh as Edge, Si as WireframeCard, Sl as FrameHeader, Sm as CapacityPlan, Sn as WireframeItemGroup, So as Sidebar, Sp as Scatter, Sr as WireframeDrawerOverlay, Ss as Questionnaire, St as WireframeSettingsPage, Su as ContextMenuGroup, Sv as Choice, T as WireframeTabsList, T_ as REVIEW_VERDICTS, Ta as SchemaDiff, Tc as MessageScroller, Td as CollapsibleTrigger, Tf as AttachmentTitle, Tg as Include, Ti as WireframeCardDescription, Tl as Fieldset, Tm as Estimate, Tn as WireframeItemMediaWireframe, To as SidebarGroup, Tp as RISK_LEVELS, Tr as WireframeDrawerTrigger, Ts as QuestionnaireChoiceDescription, Tt as WireframeSelectContent, Tu as ContextMenuPortal, U as WireframeSidebarFooter, U_ as Change, Ua as ToggleGroup, Uc as MenubarRadioItem, Ud as CardFooter, Uf as AlertDialogTrigger, Ug as AnswerSheet, Uh as Finding, Ui as WireframeAvatar, Ul as EmptyMedia, Um as OPTION_STATUSES, Un as WireframeFormControl, Uo as SidebarSeparator, Up as Radar, Ur as WireframeContextMenuItem, Us as PopoverContent, Ut as WireframePaginationLink, Uu as Dialog, Uv as TERMINAL_LANGS, V as WireframeSidebar, V_ as parseDuration, Va as SmallMultiples, Vc as MenubarPortal, Vd as CardContent, Vf as AlertDialogPortal, Vg as Video, Vh as FlowStep, Vi as WireframeBadge, Vl as EmptyDescription, Vm as Package, Vn as WireframeHeading, Vo as SidebarProvider, Vp as PR, Vr as WireframeContextMenuContent, Vs as ProgressValue, Vt as WireframePaginationEllipsis, Vu as CommandSeparator, W as WireframeSidebarGroup, W_ as Changes, Wa as ToggleGroupItem, Wc as MenubarSeparator, Wd as CardHeader, Wf as Button, Wg as Calculator, Wh as Findings, Wi as WireframeAvatarFallback, Wl as EmptyTitle, Wm as Option, Wn as WireframeFormDescription, Wo as SidebarTrigger, Wp as AccessibilityReport, Wr as WireframeContextMenuItemWireframe, Ws as PopoverDescription, Wt as WireframePaginationNext, Wu as DialogClose, X as WireframeSidebarInput, X_ as Bridge, Xa as ToastContent, Xc as Marker, Xd as ButtonGroupText, Xf as Architecture, Xh as Assumptions, Xi as WireframeAccordion, Xl as DropdownMenuLabel, Xm as RecoveryPlan, Xn as WireframeFieldContent, Xo as Skeleton, Xp as Pin, Xr as WireframeContextMenuSeparator, Xs as PaginationEllipsis, Xt as WireframeMenubarItem, Xu as DialogPortal, Y as WireframeSidebarHeader, Y_ as Bumps, Ya as ToastClose, Yc as MenubarTrigger, Yd as ButtonGroupSeparator, Yf as AccordionTrigger, Yg as Wizard, Yh as Figure, Yi as WireframeAlertWireframe, Yl as DropdownMenuItem, Ym as PermissionMatrix, Yn as WireframeField, Yo as TooltipTrigger, Yp as TestMatrix, Yr as WireframeContextMenuRadioItem, Ys as PaginationContent, Yt as WireframeMenubarGroup, Yu as DialogOverlay, Z as WireframeSidebarInset, Z_ as Delta, Za as ToastDescription, Zc as MarkerContent, Zd as buttonGroupVariants, Zf as BundleReport, Zg as DiffStat, Zh as DocumentHistory, Zi as WireframeAccordionContent, Zl as DropdownMenuPortal, Zm as Remediation, Zn as WireframeFieldDescription, Zo as Sheet, Zp as Quadrant, Zr as WireframeContextMenuShortcut, Zs as PaginationItem, Zt as WireframeMenubarLabel, Zu as DialogTitle, _ as WireframeTextarea, _a as Event, _c as MeterTrack, _d as InputGroupButton, _f as AvatarImage, _g as Conversation, _h as Hypotheses, _i as WireframeCarouselContent, _l as HoverCardContent, _m as BulletChart, _n as WireframeItemActions, _o as TableHeader, _p as Score, _r as WireframeDrawerClose, _s as ResizableHandle, _t as WireframeSheetFooter, _u as DirectionProvider, _v as Vuln, a as wireframeBadgeVariants, a_ as Dep, aa as VERDICTS, ac as NavigationMenuLink, ad as ComboboxEmpty, af as BreadcrumbItem, ag as Experiment, ah as Matrix, ai as WireframeCollapsibleTrigger, al as ItemDescription, am as ParetoChart, an as WireframeMenubarSubContent, ao as useToastManager, ap as QueryPlan, ar as WireframeFieldSet, as as Select, at as WireframeSidebarMenuSub, au as DropdownMenuTrigger, av as Priority, b as WireframeTextHeading, ba as SymbolRef, bc as MessageAvatar, bd as InputGroupTextarea, bf as AttachmentActions, bg as Response, bh as Grid, bi as WireframeCarouselNext, bl as FrameDescription, bn as WireframeItemDescriptionWireframe, bo as Spinner, bp as Schema, br as WireframeDrawerFooter, bs as RadioGroup, bt as WireframeSheetTitleWireframe, bu as ContextMenuCheckboxItem, bv as isSeverity, c as wireframeTextVariants, c_ as Decision, ca as Set, cc as NavigationMenuTrigger, cd as ComboboxItem, cf as BreadcrumbPage, cg as ToolCall, ch as Json, ci as WireframeChart, cl as ItemHeader, cm as Heatmap, cn as WireframeMenubarWireframeExample, co as TabsList, cp as StateDiagram, cr as WireframeEmptyContent, cs as SelectItem, ct as WireframeSidebarProvider, cu as DrawerContent, cv as Due, d as WireframeTooltip, d_ as FilterPanel, da as Treemap, dc as NativeSelectOptGroup, dd as ComboboxSeparator, df as badgeVariants, dg as Endpoint, dh as SymbolOutline, di as WireframeChartLegendContent, dl as ItemTitle, dm as DotPlot, dn as WireframeList, do as Table, dr as WireframeEmptyHeader, ds as SelectScrollUpButton, dt as WireframeSidebarTrigger, du as DrawerHeader, dv as Benchmarks, ea as Wireframe, ec as PaginationPrevious, ed as ComboboxChip, ef as BubbleContent, eg as Provenance, eh as SLO, ei as WireframeContextMenuSubTrigger, el as Kbd, em as ViolinPlot, en as WireframeMenubarRadioGroup, eo as ToastTitle, ep as DependencyMatrix, er as WireframeFieldGroup, es as SheetDescription, et as WireframeSidebarMenuBadge, eu as DropdownMenuSeparator, ev as Lane, f as WireframeTooltipContent, f_ as RecordItem, fa as Tree, fc as NativeSelectOption, fd as ComboboxTrigger, ff as Avatar, fg as Endpoints, fh as Del, fi as WireframeChartStyle, fl as InputOTP, fm as ConfusionMatrix, fn as WireframeListGroup, fo as TableBody, fr as WireframeEmptyMedia, fs as SelectSeparator, ft as WireframeSheet, fu as DrawerOverlay, fv as Bar, g as WireframeToggle, ga as Toc, gc as MeterPrimitive, gd as InputGroupAddon, gf as AvatarGroupCount, gg as CodeWalkthrough, gh as HYPOTHESIS_STATUSES, gi as WireframeCarousel, gl as HoverCard, gm as BumpChart, gn as WireframeItem, go as TableHead, gp as Searches, gr as WireframeDrawer, gs as ScrollBar, gt as WireframeSheetDescriptionWireframe, gu as DrawerTrigger, gv as Audit, h as WireframeTooltipWireframeExample, ha as TraceFrame, hc as MeterLabel, hd as InputGroup, hf as AvatarGroup, hg as CodeGroup, hh as Incident, hi as WireframeChartWireframe, hl as InputOTPSlot, hm as CalendarHeatmap, hn as WireframeKbdGroup, ho as TableFooter, hp as Search, hr as WireframeEmptyTitleWireframe, hs as ScrollArea, ht as WireframeSheetDescription, hu as DrawerTitle, i as useWireframeSidebar, i_ as DEP_KINDS, ia as Waterfall, ic as NavigationMenuItem, id as ComboboxContent, if as BreadcrumbEllipsis, ig as EvalReport, ih as MetaItem, ii as WireframeCollapsibleContent, il as ItemContent, im as RidgelinePlot, in as WireframeMenubarSub, io as toast, ip as MindMap, ir as WireframeFieldSeparator, is as SheetTrigger, it as WireframeSidebarMenuSkeleton, iu as DropdownMenuSubTrigger, iv as PRIORITY_LEVELS, j as WireframeTableCellWireframe, j_ as Column, ja as SERVICE_STATUSES, jc as useMessageScroller, jd as ChartTooltip, jf as AlertTitle, jg as TableOfFigures, jh as Term, ji as WireframeButtonGroupSeparator, jl as FieldError, jm as Traceability, jn as WireframeInputGroupAddon, jo as SidebarInset, jp as Entry, jr as WireframeDialogFooter, js as QuestionnaireNext, jt as WireframeSelectSeparator, ju as ContextMenuSubContent, jv as hasIcon, k as WireframeTableCaption, k_ as DiffView, ka as DAY_STATUSES, kc as MessageScrollerProvider, kd as ChartLegendContent, kf as AlertAction, kg as Source, ki as WireframeButton, kl as FieldContent, km as RiskRegister, kn as WireframeInput, ko as SidebarHeader, kp as Reqs, kr as WireframeDialogContent, ks as QuestionnaireInput, kt as WireframeSelectScrollDownButton, ku as ContextMenuShortcut, kv as Owner, l as wireframeToast, l_ as DataTable, la as Venn, lc as navigationMenuTriggerStyle, ld as ComboboxLabel, lf as BreadcrumbSeparator, lg as EnvVar, lh as Logs, li as WireframeChartContainer, ll as ItemMedia, lm as ECDF, ln as WireframeMedia, lo as TabsTrigger, lp as Swimlane, lr as WireframeEmptyDescription, ls as SelectLabel, lt as WireframeSidebarRail, lu as DrawerDescription, lv as BENCH_BETTER, m as WireframeTooltipTrigger, ma as Trace, mc as MeterIndicator, md as useComboboxAnchor, mf as AvatarFallback, mg as ApiExample, mh as INCIDENT_STATUSES, mi as WireframeChartTooltipContent, ml as InputOTPSeparator, mm as ChordDiagram, mn as WireframeKbd, mo as TableCell, mr as WireframeEmptyTitle, ms as SelectValue, mt as WireframeSheetContent, mu as DrawerSwipeHandle, n as useWireframeForm, na as WireframeStack, nc as NavigationMenuContent, nd as ComboboxChipsInput, nf as BubbleReactions, ng as DatasetProfile, nh as ObjectSchema, ni as WireframeContactForm, nl as Item, nm as Sunburst, nn as WireframeMenubarSeparator, no as Toaster, np as Flamegraph, nr as WireframeFieldLabelWireframe, ns as SheetHeader, nt as WireframeSidebarMenuButtonWireframe, nu as DropdownMenuSub, nv as StatusBadge, o as wireframeButtonGroupVariants, o_ as Deps, oa as Verdict, oc as NavigationMenuList, od as ComboboxGroup, of as BreadcrumbLink, og as ModelComparison, oh as LineChart, oi as WireframeCollapsibleWireframeExample, ol as ItemFooter, om as IntervalPlot, on as WireframeMenubarSubTrigger, oo as Tabs, op as SequenceDiagram, or as WireframeFieldTitle, os as SelectContent, ot as WireframeSidebarMenuSubButton, ou as Drawer, ov as EFFORT_SIZES, p as WireframeTooltipProvider, pa as FRAME_KINDS, pc as Meter, pd as ComboboxValue, pf as AvatarBadge, pg as HTTP_METHODS, ph as Ins, pi as WireframeChartTooltip, pl as InputOTPGroup, pm as CohortTable, pn as WireframeLabel, po as TableCaption, pr as WireframeEmptyMediaWireframe, ps as SelectTrigger, pt as WireframeSheetClose, pu as DrawerPortal, pv as BarChart, q as WireframeSidebarGroupLabel, q_ as BUMP_KINDS, qa as Toast, qc as MenubarSubContent, qd as CalendarDayButton, qf as AccordionContent, qg as PromptTemplate, qh as Files, qi as WireframeAlertDescription, ql as DropdownMenuContent, qm as FeatureFlags, qn as WireframeFormLabel, qo as TooltipContent, qp as Coverage, qr as WireframeContextMenuPortal, qs as PopoverTrigger, qt as WireframeMenubarCheckboxItem, qu as DialogFooter, r as useWireframeFormField, r_ as Details, ra as Span, rc as NavigationMenuIndicator, rd as ComboboxCollection, rf as Breadcrumb, rg as EvalCase, rh as Meta, ri as WireframeCollapsible, rl as ItemActions, rm as SlopeChart, rn as WireframeMenubarShortcut, ro as createToastManager, rp as ImpactMap, rr as WireframeFieldLegend, rs as SheetTitle, rt as WireframeSidebarMenuItem, ru as DropdownMenuSubContent, s as wireframeButtonVariants, s_ as DECISION_STATUSES, sa as Overlap, sc as NavigationMenuPositioner, sd as ComboboxInput, sf as BreadcrumbList, sg as TokenUsage, sh as Series, si as WireframeCheckbox, sl as ItemGroup, sm as Histogram, sn as WireframeMenubarTrigger, so as TabsContent, sp as ServiceTopology, sr as WireframeEmpty, ss as SelectGroup, st as WireframeSidebarMenuSubItem, su as DrawerClose, sv as Effort, t as builtinComponents, ta as WireframeSection, tc as NavigationMenu, td as ComboboxChips, tf as BubbleGroup, tg as DataValidation, th as ThreatModel, ti as WireframeContextMenuTrigger, tl as KbdGroup, tm as UpSetPlot, tn as WireframeMenubarRadioItem, to as ToastViewport, tp as EntityRelations, tr as WireframeFieldLabel, ts as SheetFooter, tt as WireframeSidebarMenuButton, tu as DropdownMenuShortcut, tv as STATUSES, u as wireframeToggleVariants, u_ as DownloadData, ua as Tile, uc as NativeSelect, ud as ComboboxList, uf as Badge, ug as EnvVars, uh as Reproduction, ui as WireframeChartLegend, ul as ItemSeparator, um as DumbbellChart, un as WireframeLoginForm, uo as tabsListVariants, ur as WireframeEmptyDescriptionWireframe, us as SelectScrollDownButton, ut as WireframeSidebarSeparator, uu as DrawerFooter, uv as Bench, v as WireframeText, va as Timeline, vc as MeterValue, vd as InputGroupInput, vf as Attachment, vg as PackageInstall, vh as Hypothesis, vi as WireframeCarouselItem, vl as HoverCardTrigger, vm as BoxPlot, vn as WireframeItemContent, vo as TableRow, vp as DbField, vr as WireframeDrawerContent, vs as ResizablePanel, vt as WireframeSheetHeader, vu as useDirection, vv as SEVERITY_LEVELS, w as WireframeTabsContent, w_ as Comment, wa as JsonDiff, wc as MessageHeader, wd as CollapsibleContent, wf as AttachmentMedia, wg as CrossRef, wi as WireframeCardContent, wl as FrameTitle, wm as DependencyPlan, wn as WireframeItemMedia, wo as SidebarFooter, wp as Sankey, wr as WireframeDrawerTitle, ws as QuestionnaireChoice, wt as WireframeSelect, wu as ContextMenuLabel, wv as Question, x as WireframeTextLabel, x_ as After, xa as ApiDiff, xc as MessageContent, xd as Textarea, xf as AttachmentContent, xg as SyncedTabs, xh as Graph, xi as WireframeCarouselPrevious, xl as FrameFooter, xm as ActionItems, xn as WireframeItemFooter, xo as Slider, xp as Point, xr as WireframeDrawerHeader, xs as RadioGroupItem, xt as WireframeSheetTrigger, xu as ContextMenuContent, xv as Ask, y as WireframeTextCaption, ya as SYMBOL_KINDS, yc as Message, yd as InputGroupText, yf as AttachmentAction, yg as Request, yh as Cell, yi as WireframeCarouselItemWireframe, yl as Frame, yn as WireframeItemDescription, yo as Switch, yp as DbTable, yr as WireframeDrawerDescription, ys as ResizablePanelGroup, yt as WireframeSheetTitle, yu as ContextMenu, yv as Severity, z as WireframeToaster, z_ as Tests, za as SPARK_TONES, zc as MenubarLabel, zd as Card, zf as AlertDialogMedia, zg as PdfPreview, zh as Stage, zi as WireframeBreadcrumbPage, zl as Empty, zm as Stop, zn as WireframeHoverCardWireframeExample, zo as SidebarMenuSubButton, zp as Commit, zr as WireframeContextMenu, zs as ProgressLabel, zt as WireframePagination, zu as CommandItem } from "./ui-4Kk2-bYc.mjs";
2
2
  export { AccessibilityReport, Accordion, AccordionContent, AccordionItem, AccordionTrigger, ActionItems, After, Alert, AlertAction, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogMedia, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertRules, AlertTitle, AnnotatedImage, AnswerSheet, ApiDiff, ApiExample, ApiParams, Approval, Approvals, Architecture, Ask, AspectRatio, Assumptions, Attachment, AttachmentAction, AttachmentActions, AttachmentContent, AttachmentDescription, AttachmentGroup, AttachmentMedia, AttachmentTitle, AttachmentTrigger, AudioTranscript, Audit, Avatar, AvatarBadge, AvatarFallback, AvatarGroup, AvatarGroupCount, AvatarImage, BENCH_BETTER, BUMP_KINDS, Badge, Bar, BarChart, Before, Bench, BenchmarkSuite, Benchmarks, Board, BoardCard, BoxPlot, Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, Bridge, Bubble, BubbleContent, BubbleGroup, BubbleReactions, BulletChart, Bump, BumpChart, Bumps, BundleReport, Button, ButtonGroup, ButtonGroupSeparator, ButtonGroupText, CALLOUT_KINDS, CHANGE_KINDS, CHECK_STATUSES, CONFIDENCES, Calculator, Calendar, CalendarDayButton, CalendarHeatmap, Callout, CapacityPlan, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Carousel, CarouselContent, CarouselItem, CarouselNext, CarouselPrevious, Cell, Change, Changes, ChartContainer, ChartLegend, ChartLegendContent, ChartStyle, ChartTooltip, ChartTooltipContent, Check, Checkbox, Checklist, Checks, Choice, ChordDiagram, Cite, CliReference, Cmd, CodeGroup, CodeWalkthrough, CohortTable, Collapsible, CollapsibleContent, CollapsibleTrigger, Column, Columns, Combobox, ComboboxChip, ComboboxChips, ComboboxChipsInput, ComboboxCollection, ComboboxContent, ComboboxEmpty, ComboboxGroup, ComboboxInput, ComboboxItem, ComboboxLabel, ComboboxList, ComboboxSeparator, ComboboxTrigger, ComboboxValue, Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, Comment, Comments, Commit, CompatibilityMatrix, ConfigDiff, ConfigReference, ConfusionMatrix, ContextMenu, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuGroup, ContextMenuItem, ContextMenuLabel, ContextMenuPortal, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuSeparator, ContextMenuShortcut, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger, ContractResults, Conversation, Coverage, CrossRef, DAY_STATUSES, DECISION_STATUSES, DEP_KINDS, DataLineage, DataTable, DataValidation, DatasetDiff, DatasetProfile, Day, DbField, DbTable, Decision, DecisionMatrix, DecisionTree, Del, Delta, Dep, DependencyMatrix, DependencyPlan, DeprecationTimeline, Deps, Details, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DiffStat, DiffView, DirectionProvider, DocContext, DocumentHistory, DocumentSearch, DotPlot, DownloadData, Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerOverlay, DrawerPortal, DrawerSwipeHandle, DrawerTitle, DrawerTrigger, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, Due, DumbbellChart, ECDF, EFFORT_SIZES, ENTRY_KINDS, Edge, Effort, Empty, EmptyContent, EmptyDescription, EmptyHeader, EmptyMedia, EmptyTitle, Endpoint, Endpoints, EntityRelations, Entry, EnvVar, EnvVars, ErrorBudget, ErrorCatalog, Estimate, EvalCase, EvalReport, Event, Evidence, Experiment, FILE_KINDS, FRAME_KINDS, FeatureFlags, Field, FieldContent, FieldDescription, FieldError, FieldGroup, FieldLabel, FieldLegend, FieldSeparator, FieldSet, FieldTitle, Fieldset, FieldsetLegend, FieldsetPrimitive, Figure, File, FileRef, Files, FilterPanel, Finding, Findings, Flamegraph, Flow, FlowStep, Frame, FrameDescription, FrameFooter, FrameHeader, FramePanel, FrameTitle, Funnel, GAUGE_TONES, Gantt, Gauge, Gauges, Glossary, Graph, Grid, HTTP_METHODS, HYPOTHESIS_STATUSES, Heatmap, Histogram, HoverCard, HoverCardContent, HoverCardTrigger, Hypotheses, Hypothesis, INCIDENT_STATUSES, Icon, ImageCompare, ImageGallery, ImpactMap, Incident, Include, Input, InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput, InputGroupText, InputGroupTextarea, InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot, Ins, IntervalPlot, Issue, Item, ItemActions, ItemContent, ItemDescription, ItemFooter, ItemGroup, ItemHeader, ItemMedia, ItemSeparator, ItemTitle, JourneyMap, Json, JsonDiff, Kbd, KbdGroup, KeyResults, Label, Lane, Limitations, LineChart, Link, Logs, MaintenanceWindow, Marker, MarkerContent, MarkerIcon, Matrix, Menubar, MenubarCheckboxItem, MenubarContent, MenubarGroup, MenubarItem, MenubarLabel, MenubarMenu, MenubarPortal, MenubarRadioGroup, MenubarRadioItem, MenubarSeparator, MenubarShortcut, MenubarSub, MenubarSubContent, MenubarSubTrigger, MenubarTrigger, Message, MessageAvatar, MessageContent, MessageFooter, MessageGroup, MessageHeader, MessageScroller, MessageScrollerButton, MessageScrollerContent, MessageScrollerItem, MessageScrollerProvider, MessageScrollerViewport, Meta, MetaItem, Meter, MeterIndicator, MeterLabel, MeterPrimitive, MeterTrack, MeterValue, Milestone, MindMap, ModelComparison, NativeSelect, NativeSelectOptGroup, NativeSelectOption, NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuPositioner, NavigationMenuTrigger, Node, NumberedEquation, OPTION_STATUSES, ObjectSchema, Objectives, Option, Overlap, Owner, PACKAGE_KINDS, PR, PRIORITY_LEVELS, Package, PackageInstall, Packages, PageBreak, Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, ParetoChart, Pathway, PdfPreview, PerformanceTarget, PermissionMatrix, Phase, PieChart, Pin, Plan, PlanHeader, Point, Popover, PopoverContent, PopoverDescription, PopoverHeader, PopoverTitle, PopoverTrigger, Pre, PrintLayout, Priority, Progress, ProgressIndicator, ProgressLabel, ProgressTrack, ProgressValue, PromptTemplate, Proof, Prop, Props, Provenance, QUESTION_TYPES, Quadrant, QueryPlan, Question, Questionnaire, QuestionnaireActions, QuestionnaireChoice, QuestionnaireChoiceDescription, QuestionnaireChoices, QuestionnaireDescription, QuestionnaireError, QuestionnaireInput, QuestionnaireItem, QuestionnaireNext, QuestionnairePrevious, QuestionnaireProgress, QuestionnaireSkip, QuestionnaireSubmit, QuestionnaireTitle, RACI, REVIEW_VERDICTS, RISK_LEVELS, Radar, RadioGroup, RadioGroupItem, Ranking, RecordItem, RecoveryPlan, Ref, Release, Remediation, Reproduction, Req, Reqs, Request, ResearchClaim, ResizableHandle, ResizablePanel, ResizablePanelGroup, Response, Review, RidgelinePlot, Risk, RiskRegister, Rollout, Row, Runbook, SERVICE_STATUSES, SEVERITY_LEVELS, SLO, SPARK_TONES, STATUSES, SYMBOL_KINDS, Sankey, Scatter, Schema, SchemaDiff, Scope, Score, ScrollArea, ScrollBar, Search, Searches, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, Separator, SequenceDiagram, Series, Service, ServiceTopology, Set, Severity, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetTitle, SheetTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, Sidenote, Skeleton, Slice, Slider, SlopeChart, SmallMultiples, Source, Sources, Span, Spark, Spinner, Stack, Stage, Stat, StateDiagram, Stats, StatusBadge, StatusPage, Step, Steps, Stop, Summary, Sunburst, Swimlane, Switch, SymbolOutline, SymbolRef, SyncedTabs, TERMINAL_LANGS, TEST_STATUSES, TabItem, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableOfFigures, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, Task, Term, TermRef, Terminal, Test, TestHistory, TestMatrix, Tests, Textarea, Theorem, ThreatModel, Tile, Timeline, Toast, ToastAction, ToastClose, ToastContent, ToastDescription, ToastPortal, ToastProvider, ToastTitle, ToastViewport, Toaster, Toc, Toggle, ToggleGroup, ToggleGroupItem, TokenUsage, ToolCall, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, Trace, TraceFrame, Traceability, Tree, Treemap, UpSetPlot, Uptime, VERDICTS, Venn, Verdict, Video, ViolinPlot, VisualDiff, Vuln, Waterfall, Wireframe, WireframeAccordion, WireframeAccordionContent, WireframeAccordionItem, WireframeAccordionTrigger, WireframeAlert, WireframeAlertDescription, WireframeAlertTitle, WireframeAlertWireframe, WireframeAvatar, WireframeAvatarFallback, WireframeAvatarImage, WireframeBadge, WireframeBadgeWireframe, WireframeBreadcrumb, WireframeBreadcrumbEllipsis, WireframeBreadcrumbItem, WireframeBreadcrumbLink, WireframeBreadcrumbList, WireframeBreadcrumbPage, WireframeBreadcrumbSeparator, WireframeButton, WireframeButtonGroup, WireframeButtonGroupSeparator, WireframeButtonGroupText, WireframeButtonGroupTextWireframe, WireframeCard, WireframeCardAction, WireframeCardContent, WireframeCardDescription, WireframeCardFooter, WireframeCardHeader, WireframeCardTitle, WireframeCarousel, WireframeCarouselContent, WireframeCarouselItem, WireframeCarouselItemWireframe, WireframeCarouselNext, WireframeCarouselPrevious, WireframeChart, WireframeChartContainer, WireframeChartLegend, WireframeChartLegendContent, WireframeChartStyle, WireframeChartTooltip, WireframeChartTooltipContent, WireframeChartWireframe, WireframeCheckbox, WireframeCollapsible, WireframeCollapsibleContent, WireframeCollapsibleTrigger, WireframeCollapsibleWireframeExample, WireframeContactForm, WireframeContextMenu, WireframeContextMenuCheckboxItem, WireframeContextMenuContent, WireframeContextMenuGroup, WireframeContextMenuItem, WireframeContextMenuItemWireframe, WireframeContextMenuLabel, WireframeContextMenuLabelWireframe, WireframeContextMenuPortal, WireframeContextMenuRadioGroup, WireframeContextMenuRadioItem, WireframeContextMenuSeparator, WireframeContextMenuShortcut, WireframeContextMenuSub, WireframeContextMenuSubContent, WireframeContextMenuSubTrigger, WireframeContextMenuTrigger, WireframeDashboard, WireframeDialog, WireframeDialogClose, WireframeDialogContent, WireframeDialogDescription, WireframeDialogFooter, WireframeDialogHeader, WireframeDialogOverlay, WireframeDialogPortal, WireframeDialogTitle, WireframeDialogTrigger, WireframeDialogWireframeExample, WireframeDrawer, WireframeDrawerClose, WireframeDrawerContent, WireframeDrawerDescription, WireframeDrawerFooter, WireframeDrawerHeader, WireframeDrawerOverlay, WireframeDrawerPortal, WireframeDrawerTitle, WireframeDrawerTrigger, WireframeDrawerWireframeExample, WireframeEmpty, WireframeEmptyContent, WireframeEmptyDescription, WireframeEmptyDescriptionWireframe, WireframeEmptyHeader, WireframeEmptyMedia, WireframeEmptyMediaWireframe, WireframeEmptyTitle, WireframeEmptyTitleWireframe, WireframeField, WireframeFieldContent, WireframeFieldDescription, WireframeFieldDescriptionWireframe, WireframeFieldError, WireframeFieldGroup, WireframeFieldLabel, WireframeFieldLabelWireframe, WireframeFieldLegend, WireframeFieldSeparator, WireframeFieldSet, WireframeFieldTitle, WireframeForm, WireframeFormControl, WireframeFormDescription, WireframeFormField, WireframeFormItem, WireframeFormLabel, WireframeFormMessage, WireframeHeading, WireframeHeroSection, WireframeHoverCard, WireframeHoverCardContent, WireframeHoverCardTrigger, WireframeHoverCardWireframeExample, WireframeInput, WireframeInputGroup, WireframeInputGroupAddon, WireframeInputGroupButton, WireframeInputGroupInput, WireframeInputGroupText, WireframeInputGroupTextarea, WireframeItem, WireframeItemActions, WireframeItemContent, WireframeItemDescription, WireframeItemDescriptionWireframe, WireframeItemFooter, WireframeItemGroup, WireframeItemHeader, WireframeItemMedia, WireframeItemMediaWireframe, WireframeItemSeparator, WireframeItemTitle, WireframeItemTitleWireframe, WireframeKbd, WireframeKbdGroup, WireframeLabel, WireframeList, WireframeListGroup, WireframeLoginForm, WireframeMedia, WireframeMenubar, WireframeMenubarCheckboxItem, WireframeMenubarContent, WireframeMenubarGroup, WireframeMenubarItem, WireframeMenubarLabel, WireframeMenubarMenu, WireframeMenubarPortal, WireframeMenubarRadioGroup, WireframeMenubarRadioItem, WireframeMenubarSeparator, WireframeMenubarShortcut, WireframeMenubarSub, WireframeMenubarSubContent, WireframeMenubarSubTrigger, WireframeMenubarTrigger, WireframeMenubarWireframeExample, WireframePagination, WireframePaginationContent, WireframePaginationEllipsis, WireframePaginationItem, WireframePaginationLink, WireframePaginationNext, WireframePaginationPrevious, WireframeParagraph, WireframePricing, WireframeProductGrid, WireframeProfilePage, WireframeRegisterForm, WireframeSection, WireframeSelect, WireframeSelectContent, WireframeSelectGroup, WireframeSelectItem, WireframeSelectLabel, WireframeSelectScrollDownButton, WireframeSelectScrollUpButton, WireframeSelectSeparator, WireframeSelectTrigger, WireframeSelectValue, WireframeSeparator, WireframeSettingsPage, WireframeSheet, WireframeSheetClose, WireframeSheetContent, WireframeSheetDescription, WireframeSheetDescriptionWireframe, WireframeSheetFooter, WireframeSheetHeader, WireframeSheetTitle, WireframeSheetTitleWireframe, WireframeSheetTrigger, WireframeSidebar, WireframeSidebarContent, WireframeSidebarFooter, WireframeSidebarGroup, WireframeSidebarGroupAction, WireframeSidebarGroupContent, WireframeSidebarGroupLabel, WireframeSidebarGroupLabelWireframe, WireframeSidebarHeader, WireframeSidebarInput, WireframeSidebarInset, WireframeSidebarMenu, WireframeSidebarMenuAction, WireframeSidebarMenuBadge, WireframeSidebarMenuButton, WireframeSidebarMenuButtonWireframe, WireframeSidebarMenuItem, WireframeSidebarMenuSkeleton, WireframeSidebarMenuSub, WireframeSidebarMenuSubButton, WireframeSidebarMenuSubItem, WireframeSidebarProvider, WireframeSidebarRail, WireframeSidebarSeparator, WireframeSidebarTrigger, WireframeSlider, WireframeSonnerWireframeExample, WireframeStack, WireframeSwitch, WireframeTable, WireframeTableBody, WireframeTableCaption, WireframeTableCell, WireframeTableCellWireframe, WireframeTableFooter, WireframeTableHead, WireframeTableHeadWireframe, WireframeTableHeader, WireframeTableRow, WireframeTabs, WireframeTabsContent, WireframeTabsList, WireframeTabsTrigger, WireframeText, WireframeTextCaption, WireframeTextHeading, WireframeTextLabel, WireframeTextParagraph, WireframeTextarea, WireframeToaster, WireframeToggle, WireframeTooltip, WireframeTooltipContent, WireframeTooltipProvider, WireframeTooltipTrigger, WireframeTooltipWireframeExample, Wizard, badgeVariants, builtinComponents, buttonGroupVariants, buttonVariants, createToastManager, defineComponent, formatDuration, hasIcon, isSeverity, markerVariants, navigationMenuTriggerStyle, normalizeIconName, parseDiff, parseDuration, tabsListVariants, textOf, toast, toggleVariants, useCarousel, useComboboxAnchor, useDirection, useMessageScroller, useMessageScrollerScrollable, useMessageScrollerVisibility, useSidebar, useToastManager, useWireframeForm, useWireframeFormField, useWireframeSidebar, wireframeBadgeVariants, wireframeButtonGroupVariants, wireframeButtonVariants, wireframeTextVariants, wireframeToast, wireframeToggleVariants };
@@ -1,4 +1,4 @@
1
- import { Kv as isRecord, qv as nonEmpty } from "./ui-4uP9HfXd.mjs";
1
+ import { Kv as isRecord, qv as nonEmpty } from "./ui-4Kk2-bYc.mjs";
2
2
  import module from "node:module";
3
3
  import { mkdir, readdir, stat, unlink, writeFile } from "node:fs/promises";
4
4
  import path from "node:path";
@@ -819,7 +819,7 @@ declare const wireframeButtonGroupVariants: (props?: ({
819
819
  orientation?: "horizontal" | "vertical" | null | undefined;
820
820
  } & import("class-variance-authority/types").ClassProp) | undefined) => string;
821
821
  declare const wireframeButtonVariants: (props?: ({
822
- variant?: "default" | "destructive" | "link" | "ghost" | "outline" | "secondary" | null | undefined;
822
+ variant?: "link" | "default" | "destructive" | "ghost" | "outline" | "secondary" | null | undefined;
823
823
  size?: "default" | "sm" | "icon" | "lg" | null | undefined;
824
824
  } & import("class-variance-authority/types").ClassProp) | undefined) => string;
825
825
  declare const wireframeTextVariants: (props?: ({
package/dist/index.d.mts CHANGED
@@ -1,4 +1,4 @@
1
- import { $u as ComponentMeta, ed as MdxrComponent, n as builtinComponents, nd as textOf, t as DocContext, td as defineComponent } from "./doc-context-DAfx4O-r.mjs";
1
+ import { $u as ComponentMeta, ed as MdxrComponent, n as builtinComponents, nd as textOf, t as DocContext, td as defineComponent } from "./doc-context-BrEC6V0v.mjs";
2
2
  import * as v from "valibot";
3
3
  //#region src/config.d.ts
4
4
  /** Shape of `mdxr.config.ts` in a project that uses mdxr. */
package/dist/index.mjs CHANGED
@@ -1,4 +1,4 @@
1
- import { Fv as defineComponent, Lv as textOf, Pv as DocContext, t as builtinComponents } from "./ui-4uP9HfXd.mjs";
2
- import { t as defineConfig } from "./config-C8uMevwJ.mjs";
1
+ import { Fv as defineComponent, Lv as textOf, Pv as DocContext, t as builtinComponents } from "./ui-4Kk2-bYc.mjs";
2
+ import { t as defineConfig } from "./config-BtcDfvuR.mjs";
3
3
  import * as v from "valibot";
4
4
  export { DocContext, builtinComponents, defineComponent, defineConfig, textOf, v };
@@ -558,8 +558,11 @@ const TEXT_MICRO = "text-[0.65rem]";
558
558
  /** Small secondary line — sub-labels under names, dense meta rows (11.2px). */
559
559
  const TEXT_SUB = "text-[0.7rem]";
560
560
  /** Muted mono chip text — the `path:lines` location label shared by
561
- * file-referencing components (Flow, Trace, Tests, Search, Approvals). */
562
- const LOC_CLS = `font-mono text-xs ${TEXT.faint}`;
561
+ * file-referencing components (Flow, Trace, Tests, Search, Approvals).
562
+ * The link renders as a scrollable inline box (`whitespace-nowrap` +
563
+ * `overflow-x-auto` + `min-w-0`) so a path longer than the row scrolls
564
+ * sideways instead of overflowing — Chromium won't break at "/". */
565
+ const LOC_CLS = `inline-block max-w-full min-w-0 overflow-x-auto whitespace-nowrap align-baseline font-mono text-xs ${TEXT.faint}`;
563
566
  /** Inline `<code>` look inside list rows — `font-mono` on the body text color. */
564
567
  const MONO_CLS = `font-mono text-[0.85em] ${TEXT.code}`;
565
568
  /** Trim first/last child margins inside MDX-rendered body regions. */
@@ -4343,7 +4346,7 @@ const Change = defineComponent({
4343
4346
  }),
4344
4347
  /* @__PURE__ */ jsx(RowIcon, { name: fileIcon(nonEmpty(to) ? to : path) }),
4345
4348
  /* @__PURE__ */ jsx(MaybeLink, {
4346
- className: LINK_CLS,
4349
+ className: `min-w-0 overflow-x-auto whitespace-nowrap ${LINK_CLS}`,
4347
4350
  href: link,
4348
4351
  children: label
4349
4352
  }),
@@ -4682,7 +4685,10 @@ const Cmd = defineComponent({
4682
4685
  className: "h-3.5 w-3.5 shrink-0 opacity-60",
4683
4686
  name: "lucide:terminal"
4684
4687
  }),
4685
- /* @__PURE__ */ jsx("span", { children }),
4688
+ /* @__PURE__ */ jsx("span", {
4689
+ className: "min-w-0 overflow-x-auto whitespace-nowrap",
4690
+ children
4691
+ }),
4686
4692
  /* @__PURE__ */ jsx(CopyButton, {
4687
4693
  className: "-mr-0.5 opacity-40",
4688
4694
  copy: textOf(children),
@@ -5300,7 +5306,7 @@ const CodeHeader = (props) => {
5300
5306
  return /* @__PURE__ */ jsxs(CaptionBar, {
5301
5307
  className: "flex items-center justify-between",
5302
5308
  children: [/* @__PURE__ */ jsx(MaybeLink, {
5303
- className: `inline-flex items-center gap-1.5 font-mono ${LINK_CLS}`,
5309
+ className: `inline-flex min-w-0 items-center gap-1.5 overflow-x-auto font-mono whitespace-nowrap ${LINK_CLS}`,
5304
5310
  href: link,
5305
5311
  children: label
5306
5312
  }), /* @__PURE__ */ jsx(CopyButton, {
@@ -8997,7 +9003,7 @@ const FileRef = defineComponent({
8997
9003
  name: fileIcon(path)
8998
9004
  }),
8999
9005
  /* @__PURE__ */ jsx(MaybeLink, {
9000
- className: LINK_CLS,
9006
+ className: `min-w-0 overflow-x-auto whitespace-nowrap ${LINK_CLS}`,
9001
9007
  href: link,
9002
9008
  children: label
9003
9009
  }),
@@ -9082,7 +9088,7 @@ const File = defineComponent({
9082
9088
  return /* @__PURE__ */ jsxs(ListRow, { children: [
9083
9089
  /* @__PURE__ */ jsx(RowIcon, { name: fileIcon(path) }),
9084
9090
  /* @__PURE__ */ jsx(MaybeLink, {
9085
- className: LINK_CLS,
9091
+ className: `min-w-0 overflow-x-auto whitespace-nowrap ${LINK_CLS}`,
9086
9092
  href: link,
9087
9093
  children: label
9088
9094
  }),
@@ -19630,7 +19636,7 @@ const SymbolRef = defineComponent({
19630
19636
  name: KIND_ICONS[kind]
19631
19637
  }),
19632
19638
  /* @__PURE__ */ jsx(MaybeLink, {
19633
- className: LINK_CLS,
19639
+ className: `min-w-0 overflow-x-auto whitespace-nowrap ${LINK_CLS}`,
19634
19640
  href: link,
19635
19641
  children: label
19636
19642
  }),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@suzumiyaaoba/mdxr",
3
- "version": "0.10.0",
3
+ "version": "0.11.0",
4
4
  "description": "Render agent-authored MDX documents (plans, reports) to standalone HTML with a semantic component catalog",
5
5
  "keywords": [
6
6
  "agents",
package/skill/SKILL.md CHANGED
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: mdxr
3
- description: Write rich plan/report documents as MDX using the mdxr component catalog, then render them to standalone HTML with `npx @suzumiyaaoba/mdxr render`. Use when creating plan files, status reports, reviews, or any structured document meant to be viewed as a styled HTML page — and whenever the user explicitly asks for a deliverable written or rendered with mdxr, regardless of document type.
3
+ description: Write rich plan/report documents as MDX using the mdxr component catalog, then preview them in the browser with `npx @suzumiyaaoba/mdxr serve` or render them to standalone HTML with `npx @suzumiyaaoba/mdxr render`. Use when creating plan files, status reports, reviews, or any structured document meant to be viewed as a styled HTML page — and whenever the user explicitly asks for a deliverable written or rendered with mdxr, regardless of document type.
4
4
  ---
5
5
 
6
6
  # mdxr — agent-authored documents rendered to HTML
@@ -10,15 +10,16 @@ Write documents as **Markdown + a small set of JSX components** (MDX). Do NOT wr
10
10
  ## Workflow
11
11
 
12
12
  1. Write the document as `.mdxr/<name>.mdx` at the project root, creating `.mdxr/` if needed (unless the user gave a path). `.mdxr/` is untracked scratch space: if the project is a git repo, make sure `.gitignore` lists `.mdxr/` — append it when missing.
13
- 2. Render and open it for the user: `npx @suzumiyaaoba/mdxr render .mdxr/plan.mdx --open` (the default output is the source path with `.html` — `.mdxr/plan.html`; `--open` launches the file in the user's default browser: `open` on macOS, `xdg-open` on Linux, `start` on Windows).
14
- 3. Or pipe MDX directly: `cat .mdxr/plan.mdx | npx @suzumiyaaoba/mdxr render > .mdxr/plan.html` (`mdxr render -` also reads stdin; `-o out.html` writes a file — required for `--open`).
15
- 4. On errors, the message includes `file:line:col` — fix and re-run. `npx @suzumiyaaoba/mdxr render .mdxr/plan.mdx --format json` prints machine-readable errors.
16
- 5. Preview while editing: `npx @suzumiyaaoba/mdxr serve .mdxr/plan.mdx --open` — or pipe: `cat .mdxr/plan.mdx | npx @suzumiyaaoba/mdxr serve --open`
13
+ 2. Show it to the user: run `npx @suzumiyaaoba/mdxr serve .mdxr/plan.mdx --open` **in the background** and leave it running — `serve` stays attached for live reload. It prints `mdxr: serving … at http://localhost:PORT` (if the port is taken it picks the next free one) and `--open` launches that URL in the user's default browser. Do NOT `mdxr render --open` when the goal is to show the document — that's a one-shot file, not the live preview.
14
+ 3. Or pipe MDX directly: `cat .mdxr/plan.mdx | npx @suzumiyaaoba/mdxr serve --open`
15
+ 4. When a standalone `.html` file is the deliverable itself (to save or share), render it: `npx @suzumiyaaoba/mdxr render .mdxr/plan.mdx` (default output is the source path with `.html`). Piping also works: `cat .mdxr/plan.mdx | npx @suzumiyaaoba/mdxr render > .mdxr/plan.html` (`mdxr render -` also reads stdin; `-o out.html` sets the path).
16
+ 5. On errors, the message includes `file:line:col` — fix and re-run. `npx @suzumiyaaoba/mdxr render .mdxr/plan.mdx --format json` prints machine-readable errors.
17
17
  6. Plain-text deliverable: `npx @suzumiyaaoba/mdxr text .mdxr/plan.mdx` renders the document to Markdown readable in a terminal — components become ASCII stand-ins (checkbox lists, bar charts, GFM tables); interactive-only widgets degrade to their text.
18
18
 
19
19
  ## Rules
20
20
 
21
21
  - **No JS in documents.** `import`/`export` and `{expressions}` are rejected. All attributes are strings: `<Step status="done">`, not `status={...}`.
22
+ - **Use the most specific component for the job.** The catalog has dedicated components for structured content — task/status lists → `<Steps>`, file inventories → `<Files>`, test reports → `<Tests>`, API routes → `<Endpoints>`, comparisons → `<Matrix>`/`<Before>`/`<After>`, findings → `<Findings>`, diffs → ` ```diff ` fences. Reach for generic building blocks (plain lists/tables, shadcn `Card`/`Table`/`Tabs`, `Wireframe*`) only when no dedicated component fits — a generic substitute loses the semantic chrome (status badges, counts, editor file links, verdict pills).
22
23
  - Prefer plain Markdown for prose; use components only for structure.
23
24
  - If a needed component is missing, run `npx @suzumiyaaoba/mdxr catalog --json` to see the full catalog, then define it in the project's component file — see `references/extending.md` for the extension mechanism.
24
25
  - For component usage, read `references/components.md` (the index — includes a syntax cheatsheet), then only the `references/components/*.md` detail file(s) the document needs.
@@ -4,6 +4,8 @@ Index: [../components.md](../components.md). MDX attributes are always strings;
4
4
 
5
5
  The full shadcn/ui set (Base UI primitives) is registered: `Button`, `Badge`, `Card`/`CardHeader`/…, `Alert`, `Tabs`, `Accordion`, `Dialog`, `Input`, `Label`, `Table`, `Progress`, `Skeleton`, `Separator`, `Kbd`, `Spinner`, and more — run `mdxr catalog` for the complete list. Use them as plain MDX elements; attributes are strings (`variant="outline"`, `size="sm"`).
6
6
 
7
+ **These are generic primitives, not document components.** Before using `Card`, `Table`, `Tabs`, `Accordion`, `Badge`, or `Alert` to present document content, check the index for a dedicated component — `<Steps>`, `<Tests>`, `<Endpoints>`, `<Findings>`, `<Review>`, `<Matrix>`, `<Callout>`, `<Stats>` cover the common report/plan shapes and add semantics (status pills, counts, verdicts, editor links) that a plain `Card`/`Table` cannot. shadcn primitives are the right choice for app-like fragments and demos that have no dedicated component — e.g. illustrating a settings panel, a form, or UI states.
8
+
7
9
  **Note:** rendered documents include a hydration bundle, so stateful primitives (`Dialog`, `Tabs`, `Accordion`, `Tooltip`, `Select`, `Switch`, menus, …) are interactive in the browser — tabs switch, accordions open, switches flip. `mdxr render --no-hydrate` emits purely static HTML where they render their initial state only. Portal-based overlays (`Dialog`, `Tooltip`, `Select`, menus) still render nothing until opened — prefer `Card`, `Alert`, `Badge`, `Table`, `Kbd`, `Separator`, `Progress`, `Skeleton` for always-visible content.
8
10
 
9
11
  ```mdx
@@ -4,6 +4,8 @@ MDX attributes are always strings (`status="done"`). `children` is Markdown.
4
4
 
5
5
  This file is an index: each group lists what its components do and links to a detail file with full signatures and examples. Read only the detail file(s) the document needs. The syntax cheatsheet at the bottom maps Markdown shorthands (`:::x`, fences, frontmatter) to the component they produce. `mdxr catalog --json` is the machine-readable source of truth for component names and attributes.
6
6
 
7
+ **Most specific component wins.** Prefer the dedicated semantic component over a generic substitute: a status/task list is `<Steps>` (not `Card`s or a bullet list), an API route table is `<Endpoints>` (not `Table`), a comparison is `<Matrix>` or `<Before>`/`<After>`, a file inventory is `<Files>`, test results are `<Tests>`. The generic building blocks — `Row`, `Stack`, `Grid`, `Columns`, and the whole `shadcn/ui`/`Wireframe*` sets — are for layouts and app-like fragments _without_ a dedicated component. A generic stand-in silently drops the semantic extras: status badges, auto counts, `+N −M` stats, severity pills, editor file links.
8
+
7
9
  **File links.** Components carrying `path` (`FileRef`, `SymbolRef`, `File`, `TraceFrame`, `FlowStep`, `Change`) and fenced-code filename headers become editor links — `vscode://file/…` by default — when the file exists on disk (paths resolve relative to the document). Frontmatter `editor:` or `editor` in `mdxr.config.ts` picks another editor: `cursor`, `zed`, `vscode-insiders`, `windsurf`, `sublime`, `textmate`, `idea`, a custom `{path}`/`{line}` URL template, or `none` to disable. `href="…"` on a component overrides the URL entirely. Inline code works too: `` `src/mdx.ts` `` (optional `:40-52` lines suffix) auto-converts to `<FileRef>` when it resolves to a real file — a bare `mdx.ts` without a `/` stays plain code.
8
10
 
9
11
  ## Document scaffolding — details: [components/document.md](components/document.md)
package/src/catalog.ts CHANGED
@@ -281,7 +281,11 @@ export const CONVENTIONS = [
281
281
  ];
282
282
 
283
283
  export const formatCatalog = (entries: CatalogEntry[]): string => {
284
- const lines: string[] = ["Components:", ""];
284
+ const lines: string[] = [
285
+ "Components:",
286
+ " Pick the most specific component for the job: a dedicated semantic component (<Steps>, <Tests>, <Endpoints>, <Findings>, …) beats a generic Card/Table/bullet list, which loses its badges, counts, and file links. shadcn/ui and Wireframe* entries are generic building blocks for content with no dedicated component.",
287
+ "",
288
+ ];
285
289
  for (const e of entries) {
286
290
  const props = Object.entries(e.props)
287
291
  .map(([k, p]) => `${k}${p.required ? "" : "?"}: ${p.type}`)
package/src/cli.ts CHANGED
@@ -151,7 +151,11 @@ cli
151
151
 
152
152
  cli
153
153
  .command("serve [file]", "Preview a document in the browser with live reload")
154
- .option("-p, --port <port>", "Port", { default: 3737 })
154
+ .option(
155
+ "-p, --port <port>",
156
+ "Preferred port; if taken, the next free port is used",
157
+ { default: 3737 }
158
+ )
155
159
  .option("--open", "Open the preview in the default browser once serving")
156
160
  .option("--agent <agent>", "Chat with codex or claude in the preview")
157
161
  .option("--session <id>", "Send to an existing Codex thread")
@@ -326,13 +330,16 @@ cli
326
330
  if (!global) {
327
331
  // Agents write mdxr documents to .mdxr/ — keep that scratch space
328
332
  // out of git. A --global install is about the home dir, so the
329
- // project's .gitignore is left alone.
333
+ // project's .gitignore is left alone; a global git excludes rule
334
+ // makes the project rule redundant too.
330
335
  const status = await ensureDocsDirIgnored(process.cwd());
331
- console.log(
332
- status === "added"
333
- ? "mdxr: added .mdxr/ to .gitignore"
334
- : "mdxr: .gitignore already covers .mdxr/"
335
- );
336
+ const messages = {
337
+ added: "mdxr: added .mdxr/ to .gitignore",
338
+ global:
339
+ "mdxr: .mdxr/ is already covered by your global git excludes",
340
+ present: "mdxr: .gitignore already covers .mdxr/",
341
+ } as const;
342
+ console.log(messages[status]);
336
343
  }
337
344
  } catch (error) {
338
345
  fail(error, false);
@@ -27,7 +27,14 @@ const scrollToTarget = (target: HTMLElement): void => {
27
27
  const visible = Object.hasOwn(target.dataset, "mdxrPage")
28
28
  ? (target.firstElementChild ?? target)
29
29
  : target;
30
- visible.scrollIntoView({ behavior: "instant", block: "start" });
30
+ const scrollMargin =
31
+ Number(getComputedStyle(visible).scrollMarginTop.replace("px", "")) || 0;
32
+ // scrollIntoView also scrolls ancestor frames, so restoring Pages view in
33
+ // a lazy-loaded preview can pull the containing documentation down the page.
34
+ window.scrollTo({
35
+ behavior: "instant",
36
+ top: visible.getBoundingClientRect().top + window.scrollY - scrollMargin,
37
+ });
31
38
  };
32
39
 
33
40
  const hashTarget = (hash: string): HTMLElement | null => {
@@ -217,13 +217,24 @@ const embedElements = async (
217
217
  };
218
218
 
219
219
  /** Capture synchronously, then inline assets without changing the live document. */
220
- export const captureWorkspaceDocument = async (): Promise<string> => {
220
+ export const captureWorkspaceDocument = async (options?: {
221
+ /** Raw markup inserted at the end of the document body (export appendix). */
222
+ appendix?: string;
223
+ /** Override for the standalone page <title>. */
224
+ title?: string;
225
+ }): Promise<string> => {
221
226
  const root = document.querySelector("#mdxr-root");
222
227
  if (root === null) {
223
228
  throw new Error("Document is not available for export");
224
229
  }
225
230
  const container = document.createElement("div");
226
- container.append(cloneSnapshot(root));
231
+ const snapshot = cloneSnapshot(root);
232
+ container.append(snapshot);
233
+ if (options?.appendix !== undefined && snapshot instanceof Element) {
234
+ // Script elements survive insertAdjacentHTML as inert markup — they are
235
+ // serialized into the snapshot but never executed on export.
236
+ snapshot.insertAdjacentHTML("beforeend", options.appendix);
237
+ }
227
238
  const styles = [
228
239
  ...document.querySelectorAll("style, link[rel=stylesheet]"),
229
240
  ].map((element) => ({
@@ -245,5 +256,6 @@ export const captureWorkspaceDocument = async (): Promise<string> => {
245
256
  ? "dark"
246
257
  : "";
247
258
  const safeCss = css.join("\n").replaceAll(/<\/style/giu, "<\\/style");
248
- return `<!doctype html><html lang="${escapeExportHtml(document.documentElement.lang || "en")}" class="${theme}"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1"><meta http-equiv="Content-Security-Policy" content="default-src 'none'; img-src data:; media-src data:; font-src data:; style-src 'unsafe-inline';"><style>${safeCss}\n*,*::before,*::after{animation:none!important;transition:none!important}#mdxr-root{padding-top:2rem!important}[data-mdxr-page]{display:contents!important}</style></head><body class="${escapeExportHtml(document.body.className.replaceAll(/\bmdxr-[\w-]+\b/gu, ""))}">${container.innerHTML}</body></html>`;
259
+ const title = options?.title ?? document.title;
260
+ return `<!doctype html><html lang="${escapeExportHtml(document.documentElement.lang || "en")}" class="${theme}"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1"><meta http-equiv="Content-Security-Policy" content="default-src 'none'; img-src data:; media-src data:; font-src data:; style-src 'unsafe-inline';"><title>${escapeExportHtml(title)}</title><style>${safeCss}\n*,*::before,*::after{animation:none!important;transition:none!important}#mdxr-root{padding-top:2rem!important}[data-mdxr-page]{display:contents!important}</style></head><body class="${escapeExportHtml(document.body.className.replaceAll(/\bmdxr-[\w-]+\b/gu, ""))}">${container.innerHTML}</body></html>`;
249
261
  };
package/src/init.ts CHANGED
@@ -1,7 +1,9 @@
1
+ import { execFile } from "node:child_process";
1
2
  import fs from "node:fs";
2
3
  import fsp from "node:fs/promises";
3
4
  import os from "node:os";
4
5
  import path from "node:path";
6
+ import { promisify } from "node:util";
5
7
 
6
8
  import { own } from "./guards.js";
7
9
  import { pkgRoot } from "./paths.js";
@@ -39,13 +41,48 @@ const docsDirIsIgnored = (source: string): boolean => {
39
41
  return ignored;
40
42
  };
41
43
 
44
+ // execFile has a custom promisify signature that preserves both output streams.
45
+ // oxlint-disable-next-line typescript/strict-void-return
46
+ const execFileAsync = promisify(execFile);
47
+
48
+ /** `git config --get core.excludesFile`, or git's default global ignore. */
49
+ const globalExcludesFile = async (): Promise<string> => {
50
+ const fallback = path.join(os.homedir(), ".config", "git", "ignore");
51
+ try {
52
+ const { stdout } = await execFileAsync("git", [
53
+ "config",
54
+ "--get",
55
+ "core.excludesFile",
56
+ ]);
57
+ const configured = stdout.trim();
58
+ if (configured === "") {
59
+ return fallback;
60
+ }
61
+ // Git expands a leading ~ itself.
62
+ return configured.startsWith("~/")
63
+ ? path.join(os.homedir(), configured.slice(2))
64
+ : configured;
65
+ } catch {
66
+ // No git, or the key is unset — the default location still applies.
67
+ return fallback;
68
+ }
69
+ };
70
+
42
71
  /**
43
72
  * Ensures the project's .gitignore covers `.mdxr/` — created or appended
44
- * as needed. Returns "present" when an existing rule already covers it.
73
+ * as needed. Returns "present" when an existing project rule covers it,
74
+ * "global" when the user's global excludes file already does (nothing is
75
+ * written — the project file would just duplicate it).
45
76
  */
46
77
  export const ensureDocsDirIgnored = async (
47
78
  base: string
48
- ): Promise<"added" | "present"> => {
79
+ ): Promise<"added" | "global" | "present"> => {
80
+ const globalIgnore = await fsp
81
+ .readFile(await globalExcludesFile(), "utf-8")
82
+ .catch(() => null);
83
+ if (globalIgnore !== null && docsDirIsIgnored(globalIgnore)) {
84
+ return "global";
85
+ }
49
86
  const file = path.join(base, ".gitignore");
50
87
  const existing = await fsp.readFile(file, "utf-8").catch(() => null);
51
88
  if (existing !== null && docsDirIsIgnored(existing)) {
package/src/serve.ts CHANGED
@@ -45,6 +45,46 @@ const SKIP_DIRS = new Set([
45
45
  "storybook-static",
46
46
  ]);
47
47
 
48
+ /** Upper bound on consecutive EADDRINUSE retries before give-up. */
49
+ const MAX_PORT_ATTEMPTS = 100;
50
+
51
+ /**
52
+ * Bind `server` on loopback to `port`, or to the next free port after it —
53
+ * a probe-then-bind helper would just race the real listen. Port 0 already
54
+ * asks the OS for a port, so it binds once and never retries.
55
+ */
56
+ const listenOnFreePort = async (
57
+ server: http.Server,
58
+ port: number
59
+ ): Promise<void> => {
60
+ for (let attempt = 0; ; attempt += 1) {
61
+ const candidate = port + attempt;
62
+ try {
63
+ server.listen(candidate, "127.0.0.1");
64
+ // Ports are probed strictly in order — the next candidate is only
65
+ // tried after the previous one refused with EADDRINUSE.
66
+ // oxlint-disable-next-line no-await-in-loop
67
+ await once(server, "listening");
68
+ if (attempt > 0) {
69
+ console.log(`mdxr: port ${port} is taken, using ${candidate}`);
70
+ }
71
+ return;
72
+ } catch (error) {
73
+ const busy =
74
+ error instanceof Error &&
75
+ (error as NodeJS.ErrnoException).code === "EADDRINUSE";
76
+ if (
77
+ !busy ||
78
+ port === 0 ||
79
+ attempt >= MAX_PORT_ATTEMPTS ||
80
+ candidate >= 65_535
81
+ ) {
82
+ throw error;
83
+ }
84
+ }
85
+ }
86
+ };
87
+
48
88
  const handleDocumentResponse = (
49
89
  req: http.IncomingMessage,
50
90
  res: http.ServerResponse,
@@ -370,14 +410,11 @@ const servePreview = async (
370
410
  // Edits during startup must wait for the initial render too.
371
411
  reloading = rebuild(notify);
372
412
  await reloading;
373
-
374
413
  // Bind loopback only — the startup log says localhost, and a preview
375
414
  // server has no auth: listening on 0.0.0.0 would expose the document
376
415
  // (and its file links) to the LAN.
377
416
  try {
378
- server.listen(port, "127.0.0.1");
379
- // Rejects on 'error' (e.g. EADDRINUSE) before 'listening'.
380
- await once(server, "listening");
417
+ await listenOnFreePort(server, port);
381
418
  } catch (error) {
382
419
  // Close fires the 'close' handler above — without it a failed listen
383
420
  // would leave the watchers armed and keep the process alive.
@@ -135,3 +135,19 @@
135
135
  @apply font-sans;
136
136
  }
137
137
  }
138
+
139
+ @layer components {
140
+ /* Inline code (paths, commands) often has no break opportunity for
141
+ * Chromium — it does not break at "/" — so a long token overflows the
142
+ * article. Give it a capped inline scroll box instead: the same horizontal-
143
+ * scroll treatment fenced blocks get. Chips (`CODE_CHIP_CLS`) keep their
144
+ * `inline-flex` display (utilities layer wins) and only pick up the cap,
145
+ * nowrap, and scroll. `pre` is excluded: it scrolls itself and `nowrap`
146
+ * would collapse its newlines. */
147
+ .prose code:not(:where(pre *)) {
148
+ display: inline-block;
149
+ max-width: 100%;
150
+ overflow-x: auto;
151
+ white-space: nowrap;
152
+ }
153
+ }
@@ -79,7 +79,10 @@ export const Change = defineComponent(
79
79
  {k.label}
80
80
  </Tag>
81
81
  <RowIcon name={fileIcon(nonEmpty(to) ? to : path)} />
82
- <MaybeLink className={LINK_CLS} href={link}>
82
+ <MaybeLink
83
+ className={`min-w-0 overflow-x-auto whitespace-nowrap ${LINK_CLS}`}
84
+ href={link}
85
+ >
83
86
  {label}
84
87
  </MaybeLink>
85
88
  <RowNote>{children}</RowNote>
package/src/ui/cmd.tsx CHANGED
@@ -16,7 +16,9 @@ export const Cmd = defineComponent(
16
16
  className="h-3.5 w-3.5 shrink-0 opacity-60"
17
17
  name="lucide:terminal"
18
18
  />
19
- <span>{children}</span>
19
+ <span className="min-w-0 overflow-x-auto whitespace-nowrap">
20
+ {children}
21
+ </span>
20
22
  <CopyButton
21
23
  className="-mr-0.5 opacity-40"
22
24
  copy={textOf(children)}
@@ -25,7 +25,10 @@ export const FileRef = defineComponent(
25
25
  return (
26
26
  <CodeChip>
27
27
  <Icon className="h-3.5 w-3.5 opacity-60" name={fileIcon(path)} />
28
- <MaybeLink className={LINK_CLS} href={link}>
28
+ <MaybeLink
29
+ className={`min-w-0 overflow-x-auto whitespace-nowrap ${LINK_CLS}`}
30
+ href={link}
31
+ >
29
32
  {label}
30
33
  </MaybeLink>
31
34
  <CopyButton
package/src/ui/files.tsx CHANGED
@@ -97,7 +97,10 @@ export const File = defineComponent(
97
97
  return (
98
98
  <ListRow>
99
99
  <RowIcon name={fileIcon(path)} />
100
- <MaybeLink className={LINK_CLS} href={link}>
100
+ <MaybeLink
101
+ className={`min-w-0 overflow-x-auto whitespace-nowrap ${LINK_CLS}`}
102
+ href={link}
103
+ >
101
104
  {label}
102
105
  </MaybeLink>
103
106
  {r === undefined ? null : (
package/src/ui/pre.tsx CHANGED
@@ -50,7 +50,7 @@ export const CodeHeader = (props: {
50
50
  return (
51
51
  <CaptionBar className="flex items-center justify-between">
52
52
  <MaybeLink
53
- className={`inline-flex items-center gap-1.5 font-mono ${LINK_CLS}`}
53
+ className={`inline-flex min-w-0 items-center gap-1.5 overflow-x-auto font-mono whitespace-nowrap ${LINK_CLS}`}
54
54
  href={link}
55
55
  >
56
56
  {label}
@@ -59,7 +59,10 @@ export const SymbolRef = defineComponent(
59
59
  {kind === undefined ? null : (
60
60
  <Icon className="h-3.5 w-3.5 opacity-60" name={KIND_ICONS[kind]} />
61
61
  )}
62
- <MaybeLink className={LINK_CLS} href={link}>
62
+ <MaybeLink
63
+ className={`min-w-0 overflow-x-auto whitespace-nowrap ${LINK_CLS}`}
64
+ href={link}
65
+ >
63
66
  {label}
64
67
  </MaybeLink>
65
68
  <CopyButton
package/src/ui/tones.ts CHANGED
@@ -110,8 +110,11 @@ export const TEXT_MICRO = "text-[0.65rem]";
110
110
  export const TEXT_SUB = "text-[0.7rem]";
111
111
 
112
112
  /** Muted mono chip text — the `path:lines` location label shared by
113
- * file-referencing components (Flow, Trace, Tests, Search, Approvals). */
114
- export const LOC_CLS = `font-mono text-xs ${TEXT.faint}`;
113
+ * file-referencing components (Flow, Trace, Tests, Search, Approvals).
114
+ * The link renders as a scrollable inline box (`whitespace-nowrap` +
115
+ * `overflow-x-auto` + `min-w-0`) so a path longer than the row scrolls
116
+ * sideways instead of overflowing — Chromium won't break at "/". */
117
+ export const LOC_CLS = `inline-block max-w-full min-w-0 overflow-x-auto whitespace-nowrap align-baseline font-mono text-xs ${TEXT.faint}`;
115
118
 
116
119
  /** Inline `<code>` look inside list rows — `font-mono` on the body text color. */
117
120
  export const MONO_CLS = `font-mono text-[0.85em] ${TEXT.code}`;
@@ -18,7 +18,7 @@ const commentHtml = (comment: DocumentAnnotation, detached = false): string => {
18
18
  const { anchor } = comment;
19
19
  const { source } = anchor;
20
20
  return `<article><h4>${escapeExportHtml(anchor.heading || anchor.kind)}</h4>
21
- ${source === undefined ? "" : `<p>${escapeExportHtml(source.file)}:${source.start}–${source.end}</p>`}
21
+ ${source === undefined ? "" : `<p class="mdxr-export-muted">${escapeExportHtml(source.file)}:${source.start}–${source.end}</p>`}
22
22
  ${detached ? "<p>Target no longer found in the current document.</p>" : ""}
23
23
  <blockquote>${pre(anchor.quote)}</blockquote>${pre(comment.comment)}
24
24
  ${anchor.image === "" ? "" : `<p>Image: ${escapeExportHtml(anchor.image)}</p>`}</article>`;
@@ -56,8 +56,8 @@ const historyHtml = (data: WorkspaceExportData): string =>
56
56
  return `<span class="diff-${line.type}">${marker} ${escapeExportHtml(line.text)}\n</span>`;
57
57
  })
58
58
  .join("");
59
- return `<article><h3>Version ${version.sequence} · ${escapeExportHtml(version.kind)}</h3>
60
- <p>${escapeExportHtml(version.createdAt)} · ${version.size} bytes</p>
59
+ return `<article><h4>Version ${version.sequence} · ${escapeExportHtml(version.kind)}</h4>
60
+ <p class="mdxr-export-muted">${escapeExportHtml(version.createdAt)} · ${version.size} bytes</p>
61
61
  ${details("Version metadata", pre(JSON.stringify({ ...version, diff: undefined, source: undefined }, null, 2)))}
62
62
  ${details("MDX source", pre(version.source))}
63
63
  ${previous === undefined ? "<p>Initial version.</p>" : details(`Diff from version ${previous.sequence}`, `<pre class="diff">${diff}</pre>`)}
@@ -65,39 +65,56 @@ ${previous === undefined ? "<p>Initial version.</p>" : details(`Diff from versio
65
65
  })
66
66
  .join("");
67
67
 
68
- const ARCHIVE_CSS = `
69
- :root{color-scheme:light dark;font:16px/1.6 system-ui,sans-serif;background:light-dark(#f8fafc,#111827);color:light-dark(#0f172a,#e2e8f0)}
70
- *{box-sizing:border-box}body{max-width:1000px;margin:auto;padding:24px}h1,h2,h3,h4{line-height:1.3}h2{margin-top:2rem}nav{display:flex;flex-wrap:wrap;gap:16px}a{color:light-dark(#0369a1,#7dd3fc)}section{scroll-margin-top:16px}article,details{border:1px solid light-dark(#cbd5e1,#475569);border-radius:8px;padding:16px;margin:12px 0}summary{cursor:pointer;font-weight:600}pre{font:13px/1.7 ui-monospace,monospace;white-space:pre-wrap;overflow-wrap:anywhere}blockquote{margin:0;padding-left:16px;border-left:3px solid #94a3b8}p{overflow-wrap:anywhere}iframe{width:100%;height:75vh;border:1px solid #94a3b8;border-radius:8px;background:white}.diff span{display:block;min-height:1.7em}.diff{white-space:pre-wrap}.diff-add{background:light-dark(#dcfce7,#14532d)}.diff-remove{background:light-dark(#fee2e2,#7f1d1d)}.muted{color:light-dark(#475569,#cbd5e1)}@media(max-width:600px){body{padding:16px}article,details{padding:12px}}@media print{details{break-inside:avoid}iframe{height:90vh}nav{display:none}}
68
+ /* Reuses the document's own CSS variables (--border, --card, --muted-foreground)
69
+ * so the appendix follows the exported theme; .dark variants come from the
70
+ * <html> class the snapshot already carries. */
71
+ const APPENDIX_CSS = `
72
+ .mdxr-export{border-top:1px solid var(--border,#e5e5e5);margin-top:3rem;padding-top:2rem}
73
+ .mdxr-export article,.mdxr-export details{border:1px solid var(--border,#e5e5e5);border-radius:8px;padding:12px 16px;margin:12px 0;background:var(--card,#fff)}
74
+ .dark .mdxr-export article,.dark .mdxr-export details{background:var(--card,#0a0a0a)}
75
+ .mdxr-export summary{cursor:pointer;font-weight:600}
76
+ .mdxr-export pre{font-size:0.8125rem;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere;margin:0.5rem 0}
77
+ .mdxr-export blockquote{margin:0.5rem 0;padding-left:16px;border-left:3px solid var(--border,#e5e5e5);font-style:normal}
78
+ .mdxr-export p,.mdxr-export h4{overflow-wrap:anywhere}
79
+ .mdxr-export-muted{color:var(--muted-foreground,#737373)}
80
+ .mdxr-export .diff{white-space:pre-wrap}
81
+ .mdxr-export .diff span{display:block;min-height:1.7em}
82
+ .mdxr-export .diff-add{background:#dcfce7}.dark .mdxr-export .diff-add{background:#14532d33}
83
+ .mdxr-export .diff-remove{background:#fee2e2}.dark .mdxr-export .diff-remove{background:#7f1d1d33}
84
+ @media print{.mdxr-export details{break-inside:avoid}}
71
85
  `;
72
86
 
73
- /** A read-only archive: all data stays readable without JavaScript or a server. */
74
- export const workspaceExportHtml = (
87
+ /**
88
+ * The archive appendix rendered inside the exported document — chat,
89
+ * comments, reviews, and the full version history — plus the machine-readable
90
+ * payload. Exported HTML is a snapshot of the normal rendered page: this
91
+ * markup lands inside #mdxr-root right after the document body, so everything
92
+ * stays readable in the document's own styles without a wrapper page.
93
+ */
94
+ export const workspaceExportAppendix = (
75
95
  workspace: WorkspaceExportData,
76
- browser: WorkspaceBrowserState,
77
- documentHtml: string,
78
- title: string
96
+ browser: WorkspaceBrowserState
79
97
  ): string => {
80
98
  const { conversation } = workspace;
81
99
  const chat =
82
100
  conversation?.messages
83
101
  .map(
84
102
  (message) =>
85
- `<article><h3>${message.role === "user" ? "User" : "Assistant"}</h3>${pre(message.content)}</article>`
103
+ `<article><h4>${message.role === "user" ? "User" : "Assistant"}</h4>${pre(message.content)}</article>`
86
104
  )
87
105
  .join("") ?? "";
88
106
  const json = JSON.stringify({ browser, version: 1, workspace }).replaceAll(
89
107
  "<",
90
108
  "\\u003c"
91
109
  );
92
- return `<!doctype html>
93
- <html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1"><meta name="generator" content="mdxr"><title>${escapeExportHtml(title)} — Workspace archive</title><style>${ARCHIVE_CSS}</style></head>
94
- <body><header><h1>${escapeExportHtml(title)}</h1><p class="muted">Workspace archive · ${escapeExportHtml(workspace.exportedAt)}</p><p>${escapeExportHtml(workspace.file)}</p>
95
- <nav aria-label="Archive sections"><a href="#document">Document</a><a href="#chat">Chat</a><a href="#comments">Comments</a><a href="#reviews">Reviews</a><a href="#history">History</a></nav></header>
96
- <main>
97
- <section id="document"><h2>Document</h2><p class="muted">Document as displayed at export time. All captured MDX versions are included below.</p><iframe title="Document snapshot" sandbox="" srcdoc="${escapeExportHtml(documentHtml)}"></iframe></section>
98
- <section id="chat"><h2>Chat</h2>${conversation === null ? "" : `<p>${escapeExportHtml(conversation.provider)} · ${escapeExportHtml(conversation.sessionId ?? "No session ID")}</p>${conversation.busy ? "<p>Agent was responding when this archive was exported.</p>" : ""}${conversation.error === undefined ? "" : pre(conversation.error)}`}${chat || "<p>No chat messages.</p>"}${browser.chatDraft === "" ? "" : `<h3>Unsent chat draft</h3>${pre(browser.chatDraft)}`}</section>
99
- <section id="comments"><h2>Comments</h2>${commentsHtml(browser)}</section>
100
- <section id="reviews"><h2>Reviews and answers</h2>${browser.sectionReviews.map((review) => `<p>${escapeExportHtml(review.title)} — ${review.reviewed ? "Reviewed" : "Not reviewed"}</p>`).join("") || "<p>No section reviews.</p>"}${browser.fields.map((field) => `<article><h3>${escapeExportHtml(field.label)}</h3>${pre(field.value)}</article>`).join("")}</section>
101
- <section id="history"><h2>Version history and diffs</h2>${historyHtml(workspace)}</section>
102
- </main><script type="application/json" id="mdxr-export-data">${json}</script></body></html>`;
110
+ return `<div class="mdxr-export" data-mdxr-export>
111
+ <h2>Workspace archive</h2>
112
+ <p class="mdxr-export-muted">Exported ${escapeExportHtml(workspace.exportedAt)} · ${escapeExportHtml(workspace.file)}</p>
113
+ <section id="chat"><h3>Chat</h3>${conversation === null ? "" : `<p class="mdxr-export-muted">${escapeExportHtml(conversation.provider)} · ${escapeExportHtml(conversation.sessionId ?? "No session ID")}</p>${conversation.busy ? "<p>Agent was responding when this archive was exported.</p>" : ""}${conversation.error === undefined ? "" : pre(conversation.error)}`}${chat || "<p>No chat messages.</p>"}${browser.chatDraft === "" ? "" : `<h4>Unsent chat draft</h4>${pre(browser.chatDraft)}`}</section>
114
+ <section id="comments"><h3>Comments</h3>${commentsHtml(browser)}</section>
115
+ <section id="reviews"><h3>Reviews and answers</h3>${browser.sectionReviews.map((review) => `<p>${escapeExportHtml(review.title)} — ${review.reviewed ? "Reviewed" : "Not reviewed"}</p>`).join("") || "<p>No section reviews.</p>"}${browser.fields.map((field) => `<article><h4>${escapeExportHtml(field.label)}</h4>${pre(field.value)}</article>`).join("")}</section>
116
+ <section id="history"><h3>Version history and diffs</h3>${historyHtml(workspace)}</section>
117
+ <script type="application/json" id="mdxr-export-data">${json}</script>
118
+ <style>${APPENDIX_CSS}</style>
119
+ </div>`;
103
120
  };
@@ -6,7 +6,7 @@ import { captureWorkspaceDocument } from "./client/workspace-snapshot.js";
6
6
  import { isRecord } from "./guards.js";
7
7
  import { downloadText } from "./ui/data-download.js";
8
8
  import type { WorkspaceExportData } from "./workspace-export-data.js";
9
- import { workspaceExportHtml } from "./workspace-export-html.js";
9
+ import { workspaceExportAppendix } from "./workspace-export-html.js";
10
10
 
11
11
  const isExportVersion = (value: unknown): boolean =>
12
12
  isRecord(value) &&
@@ -68,18 +68,17 @@ const loadExportData = async (): Promise<WorkspaceExportData> => {
68
68
 
69
69
  const exportWorkspace = async (): Promise<void> => {
70
70
  const state = collectWorkspaceBrowserState();
71
- const { title } = document;
72
- const [workspace, snapshot] = await Promise.all([
73
- loadExportData(),
74
- captureWorkspaceDocument(),
75
- ]);
71
+ const workspace = await loadExportData();
72
+ // The appendix markup is built first, then captured inside the snapshot —
73
+ // the export is the document itself with its archive appended, not a
74
+ // wrapper page around it.
75
+ const snapshot = await captureWorkspaceDocument({
76
+ appendix: workspaceExportAppendix(workspace, state),
77
+ title: `${document.title} — Workspace archive`,
78
+ });
76
79
  const basename = workspace.file.split(/[\\/]/u).at(-1) ?? "workspace";
77
80
  const filename = `${basename.replace(/\.[^.]+$/u, "")}-workspace.html`;
78
- downloadText(
79
- workspaceExportHtml(workspace, state, snapshot, title),
80
- filename,
81
- "text/html;charset=utf-8"
82
- );
81
+ downloadText(snapshot, filename, "text/html;charset=utf-8");
83
82
  };
84
83
 
85
84
  export const WorkspaceExportButton = () => {