@nucleux/mcp 0.4.3 → 0.4.4

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.
Files changed (2) hide show
  1. package/dist/index.js +68 -61
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -23,7 +23,7 @@ var catalog_default = {
23
23
  counts: {
24
24
  components: 137,
25
25
  packages: 142,
26
- examples: 6
26
+ examples: 7
27
27
  },
28
28
  packages: [
29
29
  {
@@ -5868,6 +5868,11 @@ export const Default: Story = {
5868
5868
  title: "Examples/Day-0 Dashboard (App Shell)",
5869
5869
  source: 'import type { Meta, StoryObj } from "@storybook/react";\nimport { Bell, Calendar, Home, ListChecks, Plus, Settings, Sparkles } from "lucide-react";\nimport {\n Avatar,\n GlobalNav,\n IconButton,\n SearchInput,\n Sidebar,\n SidebarItem,\n SidebarSeparator,\n} from "../index";\nimport { MeetingDashboardBody } from "./meeting-dashboard";\n\n/**\n * Full "day-0-dashboard" app shell \u2014 GlobalNav + collapsed Sidebar wrapping the\n * meeting dashboard body. Faithful implementation of the source Figma design\n * (AI-UX-Pattern \u203A day-0-dashboard).\n */\nconst meta = {\n title: "Examples/Day-0 Dashboard (App Shell)",\n parameters: { layout: "fullscreen" },\n} satisfies Meta;\n\nexport default meta;\ntype Story = StoryObj<typeof meta>;\n\nfunction BrandMark() {\n return (\n <div className="flex size-9 shrink-0 items-center justify-center rounded-[10px] bg-gradient-to-br from-emerald-400 via-teal-500 to-violet-600 text-sm font-semibold text-white">\n P\n </div>\n );\n}\n\nexport const Default: Story = {\n render: () => (\n <div className="flex h-screen flex-col bg-background">\n <GlobalNav\n left={<span className="text-base text-foreground">Heading</span>}\n center={<SearchInput containerClassName="w-72" />}\n right={\n <>\n <div className="relative">\n <IconButton aria-label="Notifications" size="lg">\n <Bell />\n </IconButton>\n <span className="absolute right-2 top-1.5 size-2 rounded-full bg-destructive ring-2 ring-background" />\n </div>\n <Avatar name="Eric" className="size-8" />\n </>\n }\n />\n\n <div className="flex min-h-0 flex-1">\n <Sidebar footer={<SidebarItem icon={<Settings />} label="Settings" />}>\n <BrandMark />\n <IconButton aria-label="New recording" variant="solid">\n <Plus />\n </IconButton>\n <SidebarSeparator />\n <SidebarItem icon={<Home />} label="Home" active />\n <SidebarItem icon={<Sparkles />} label="Assistant" />\n <SidebarItem icon={<Calendar />} label="Calendar" />\n <SidebarItem icon={<ListChecks />} label="Tasks" />\n <SidebarSeparator />\n <SidebarItem icon={<Plus />} label="Add" />\n </Sidebar>\n\n <main className="min-w-0 flex-1 overflow-y-auto">\n <MeetingDashboardBody />\n </main>\n </div>\n </div>\n ),\n};'
5870
5870
  },
5871
+ {
5872
+ name: "e2e-agent-console",
5873
+ title: "Examples/E2E Agent Console",
5874
+ source: 'import { useState } from "react";\nimport type { Meta, StoryObj } from "@storybook/react";\nimport {\n // MD3 agentic set (discovered via the MCP server)\n Md3Thread,\n Md3Message,\n Md3ToolCall,\n Md3AgentStep,\n Md3AgentSteps,\n Md3ActionPlan,\n Md3ActionPlanStep,\n Md3AgentComposer,\n Md3Reasoning,\n // shadcn agentic set (same APIs)\n Thread,\n Message,\n ToolCall,\n ActionPlan,\n ActionPlanStep,\n AgentComposer,\n} from "@nucleux/react";\n\n/**\n * End-to-end page assembled from components discovered via the @nucleux/mcp\n * server. Mirrors examples/e2e/agent-console.html (the HTML build) \u2014 same\n * components, React side.\n */\nconst meta = {\n title: "Examples/E2E Agent Console",\n parameters: { layout: "fullscreen" },\n} satisfies Meta;\n\nexport default meta;\ntype Story = StoryObj<typeof meta>;\n\nfunction Console() {\n const [value, setValue] = useState("");\n return (\n <div className="flex h-[32rem] flex-col rounded-md-lg bg-md-surface">\n <Md3Thread className="flex-1">\n <Md3Message role="user" content="Which Q3 renewals are at risk?" />\n <Md3Reasoning content={"Check usage decline, then rank accounts by risk."} defaultOpen />\n <Md3ToolCall\n defaultOpen\n toolCall={{\n id: "1",\n name: "search_crm",\n status: "success",\n args: { window: "90d", stage: "renewal" },\n result: "3 accounts",\n }}\n />\n <Md3AgentSteps>\n <Md3AgentStep status="done" title="Pulled renewing accounts" />\n <Md3AgentStep status="active" title="Scoring churn risk" progress={70} />\n <Md3AgentStep status="pending" title="Draft outreach" />\n </Md3AgentSteps>\n <Md3Message role="assistant" content="Three enterprise accounts are trending toward churn." />\n <Md3ActionPlan onAccept={() => {}} onEdit={() => {}} onReject={() => {}}>\n <Md3ActionPlanStep title="Pull renewing accounts" />\n <Md3ActionPlanStep title="Draft outreach emails" />\n </Md3ActionPlan>\n </Md3Thread>\n <div className="p-3">\n <Md3AgentComposer value={value} onValueChange={setValue} onSubmit={() => setValue("")} />\n </div>\n </div>\n );\n}\n\n/** The MD3 agent console (React), built from MCP-discovered components. */\nexport const MaterialUI3: Story = {\n render: () => (\n <div className="mx-auto max-w-2xl p-6">\n <Console />\n </div>\n ),\n};\n\n/** The same shadcn agentic components, and again under the Material UI 3 theme. */\nexport const BothLooks: Story = {\n render: () => (\n <div className="grid gap-6 p-6 md:grid-cols-2">\n <div className="space-y-4 rounded-lg border border-border bg-background p-4">\n <p className="text-sm font-medium text-foreground">shadcn</p>\n <Thread className="h-72">\n <Message role="user" content="Draft outreach for the at-risk accounts." />\n <ToolCall\n defaultOpen\n toolCall={{ id: "1", name: "draft_email", status: "success", args: { n: 3 }, result: "3 drafts" }}\n />\n <ActionPlan onAccept={() => {}} onReject={() => {}}>\n <ActionPlanStep title="Review drafts" />\n </ActionPlan>\n </Thread>\n <AgentComposer value="" onValueChange={() => {}} onSubmit={() => {}} />\n </div>\n <div className="nx-theme-mui space-y-4 rounded-md-lg bg-md-surface p-4">\n <p className="text-sm font-medium text-md-on-surface">Material UI 3 (same shadcn components, themed)</p>\n <Thread className="h-72">\n <Message role="user" content="Draft outreach for the at-risk accounts." />\n <ToolCall\n defaultOpen\n toolCall={{ id: "1", name: "draft_email", status: "success", args: { n: 3 }, result: "3 drafts" }}\n />\n <ActionPlan onAccept={() => {}} onReject={() => {}}>\n <ActionPlanStep title="Review drafts" />\n </ActionPlan>\n </Thread>\n <AgentComposer value="" onValueChange={() => {}} onSubmit={() => {}} />\n </div>\n </div>\n ),\n};'
5875
+ },
5871
5876
  {
5872
5877
  name: "meeting-dashboard",
5873
5878
  title: "Examples/Meeting Dashboard",
@@ -5904,15 +5909,15 @@ var html_snippets_default = {
5904
5909
  },
5905
5910
  activitylog: {
5906
5911
  name: "ActivityLog",
5907
- html: '<div class="flex flex-col gap-3"><p class="text-xs font-medium uppercase tracking-wide text-muted-foreground">Footprints</p><ol class="relative before:absolute before:left-3 before:top-1 before:h-[calc(100%-1rem)] before:w-px before:-translate-x-1/2 before:bg-border"><li class="relative flex gap-3 pb-4 last:pb-0"><span class="relative z-10 mt-0.5 inline-flex size-6 shrink-0 items-center justify-center rounded-full border border-border bg-background text-muted-foreground [&amp;_svg]:size-3.5"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-activity" aria-hidden="true"><path d="M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2"></path></svg></span><span class="flex min-w-0 flex-1 flex-col gap-0.5"><span class="text-sm text-foreground">Sent email to Sam</span><span class="text-xs text-muted-foreground">2m ago</span></span></li><li class="relative flex gap-3 pb-4 last:pb-0"><span class="relative z-10 mt-0.5 inline-flex size-6 shrink-0 items-center justify-center rounded-full border border-border bg-background text-muted-foreground [&amp;_svg]:size-3.5"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-activity" aria-hidden="true"><path d="M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2"></path></svg></span><span class="flex min-w-0 flex-1 flex-col gap-0.5"><span class="text-sm text-foreground">Read 3 CRM records</span><span class="text-xs text-muted-foreground">3m ago</span></span></li></ol></div>'
5912
+ html: '<div class="flex flex-col gap-3"><p class="text-xs font-medium uppercase tracking-wide text-muted-foreground">Footprints</p><ol class="relative before:absolute before:left-3 before:top-1 before:h-[calc(100%-1rem)] before:w-px before:-translate-x-1/2 before:bg-border"><li class="relative flex gap-3 pb-4 last:pb-0"><span class="relative z-10 mt-0.5 inline-flex size-6 shrink-0 items-center justify-center rounded-full border border-border bg-background text-muted-foreground [&_svg]:size-3.5"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-activity" aria-hidden="true"><path d="M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2"></path></svg></span><span class="flex min-w-0 flex-1 flex-col gap-0.5"><span class="text-sm text-foreground">Sent email to Sam</span><span class="text-xs text-muted-foreground">2m ago</span></span></li><li class="relative flex gap-3 pb-4 last:pb-0"><span class="relative z-10 mt-0.5 inline-flex size-6 shrink-0 items-center justify-center rounded-full border border-border bg-background text-muted-foreground [&_svg]:size-3.5"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-activity" aria-hidden="true"><path d="M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2"></path></svg></span><span class="flex min-w-0 flex-1 flex-col gap-0.5"><span class="text-sm text-foreground">Read 3 CRM records</span><span class="text-xs text-muted-foreground">3m ago</span></span></li></ol></div>'
5908
5913
  },
5909
5914
  sessionrecap: {
5910
5915
  name: "SessionRecap",
5911
- html: '<div class="flex flex-col gap-3 rounded-xl border border-brand/20 bg-brand-muted/40 p-4"><div class="flex items-center gap-2 text-brand"><span class="[&amp;_svg]:size-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sparkles" aria-hidden="true"><path d="M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z"></path><path d="M20 3v4"></path><path d="M22 5h-4"></path><path d="M4 17v2"></path><path d="M5 18H3"></path></svg></span><span class="text-xs font-semibold uppercase tracking-wide">Session recap</span></div><p class="text-sm leading-relaxed text-foreground">Aria sent 3 emails and created 1 issue.</p></div>'
5916
+ html: '<div class="flex flex-col gap-3 rounded-xl border border-brand/20 bg-brand-muted/40 p-4"><div class="flex items-center gap-2 text-brand"><span class="[&_svg]:size-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sparkles" aria-hidden="true"><path d="M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z"></path><path d="M20 3v4"></path><path d="M22 5h-4"></path><path d="M4 17v2"></path><path d="M5 18H3"></path></svg></span><span class="text-xs font-semibold uppercase tracking-wide">Session recap</span></div><p class="text-sm leading-relaxed text-foreground">Aria sent 3 emails and created 1 issue.</p></div>'
5912
5917
  },
5913
5918
  agentsteps: {
5914
5919
  name: "AgentSteps",
5915
- html: '<ol class="flex flex-col"><li class="relative flex gap-3 pb-5 last:pb-0 before:absolute before:left-[0.6875rem] before:top-6 before:h-[calc(100%-1.25rem)] before:w-px before:-translate-x-1/2 before:bg-border last:before:hidden"><span class="relative z-10 mt-0.5 inline-flex size-[1.375rem] shrink-0 items-center justify-center rounded-full border [&amp;_svg]:size-3.5 border-success bg-success text-success-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-check size-3.5" aria-hidden="true"><path d="M20 6 9 17l-5-5"></path></svg></span><span class="flex min-w-0 flex-1 flex-col gap-1"><span class="text-sm font-medium text-foreground">Reading skill doc</span></span></li><li class="relative flex gap-3 pb-5 last:pb-0 before:absolute before:left-[0.6875rem] before:top-6 before:h-[calc(100%-1.25rem)] before:w-px before:-translate-x-1/2 before:bg-border last:before:hidden" aria-current="step"><span class="relative z-10 mt-0.5 inline-flex size-[1.375rem] shrink-0 items-center justify-center rounded-full border [&amp;_svg]:size-3.5 border-info bg-info/10 text-info"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-loader-circle size-3.5 animate-spin" aria-hidden="true"><path d="M21 12a9 9 0 1 1-6.219-8.56"></path></svg></span><span class="flex min-w-0 flex-1 flex-col gap-1"><span class="text-sm font-medium text-foreground">Executing command</span><span class="mt-1 block h-1 w-full overflow-hidden rounded-full bg-muted"><span class="block h-full rounded-full bg-info transition-[width]" style="width:60%"></span></span></span></li><li class="relative flex gap-3 pb-5 last:pb-0 before:absolute before:left-[0.6875rem] before:top-6 before:h-[calc(100%-1.25rem)] before:w-px before:-translate-x-1/2 before:bg-border last:before:hidden"><span class="relative z-10 mt-0.5 inline-flex size-[1.375rem] shrink-0 items-center justify-center rounded-full border [&amp;_svg]:size-3.5 border-border bg-background text-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle size-2 fill-current" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle></svg></span><span class="flex min-w-0 flex-1 flex-col gap-1"><span class="text-sm font-medium text-muted-foreground">Creating file</span></span></li></ol>'
5920
+ html: '<ol class="flex flex-col"><li class="relative flex gap-3 pb-5 last:pb-0 before:absolute before:left-[0.6875rem] before:top-6 before:h-[calc(100%-1.25rem)] before:w-px before:-translate-x-1/2 before:bg-border last:before:hidden"><span class="relative z-10 mt-0.5 inline-flex size-[1.375rem] shrink-0 items-center justify-center rounded-full border [&_svg]:size-3.5 border-success bg-success text-success-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-check size-3.5" aria-hidden="true"><path d="M20 6 9 17l-5-5"></path></svg></span><span class="flex min-w-0 flex-1 flex-col gap-1"><span class="text-sm font-medium text-foreground">Reading skill doc</span></span></li><li class="relative flex gap-3 pb-5 last:pb-0 before:absolute before:left-[0.6875rem] before:top-6 before:h-[calc(100%-1.25rem)] before:w-px before:-translate-x-1/2 before:bg-border last:before:hidden" aria-current="step"><span class="relative z-10 mt-0.5 inline-flex size-[1.375rem] shrink-0 items-center justify-center rounded-full border [&_svg]:size-3.5 border-info bg-info/10 text-info"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-loader-circle size-3.5 animate-spin" aria-hidden="true"><path d="M21 12a9 9 0 1 1-6.219-8.56"></path></svg></span><span class="flex min-w-0 flex-1 flex-col gap-1"><span class="text-sm font-medium text-foreground">Executing command</span><span class="mt-1 block h-1 w-full overflow-hidden rounded-full bg-muted"><span class="block h-full rounded-full bg-info transition-[width]" style="width:60%"></span></span></span></li><li class="relative flex gap-3 pb-5 last:pb-0 before:absolute before:left-[0.6875rem] before:top-6 before:h-[calc(100%-1.25rem)] before:w-px before:-translate-x-1/2 before:bg-border last:before:hidden"><span class="relative z-10 mt-0.5 inline-flex size-[1.375rem] shrink-0 items-center justify-center rounded-full border [&_svg]:size-3.5 border-border bg-background text-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle size-2 fill-current" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle></svg></span><span class="flex min-w-0 flex-1 flex-col gap-1"><span class="text-sm font-medium text-muted-foreground">Creating file</span></span></li></ol>'
5916
5921
  },
5917
5922
  actionplan: {
5918
5923
  name: "ActionPlan",
@@ -5920,51 +5925,51 @@ var html_snippets_default = {
5920
5925
  },
5921
5926
  actionconfirmation: {
5922
5927
  name: "ActionConfirmation",
5923
- html: '<div role="alertdialog" aria-label="Send 18 emails?" class="flex flex-col gap-3 rounded-xl border bg-background p-5 border-destructive/50"><div class="flex items-start gap-3"><span class="mt-0.5 inline-flex size-8 shrink-0 items-center justify-center rounded-lg [&amp;_svg]:size-4 bg-destructive/10 text-destructive"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-triangle-alert" aria-hidden="true"><path d="m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3"></path><path d="M12 9v4"></path><path d="M12 17h.01"></path></svg></span><div class="flex min-w-0 flex-1 flex-col gap-1"><span class="inline-flex w-fit items-center rounded-full bg-muted px-2 py-0.5 text-[0.6875rem] font-medium uppercase tracking-wide text-muted-foreground">AI action</span><h3 class="text-base font-semibold text-foreground">Send 18 emails?</h3><p class="text-sm text-muted-foreground">You can&#x27;t undo this.</p></div></div><div class="flex items-center justify-end gap-2"><button type="button" class="inline-flex items-center rounded-lg border border-border bg-background px-3 py-2 text-sm font-medium text-foreground transition-colors hover:bg-accent focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring">Cancel</button><button type="button" class="inline-flex items-center rounded-lg px-3 py-2 text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring bg-destructive text-destructive-foreground hover:bg-destructive/90">Confirm</button></div></div>'
5928
+ html: `<div role="alertdialog" aria-label="Send 18 emails?" class="flex flex-col gap-3 rounded-xl border bg-background p-5 border-destructive/50"><div class="flex items-start gap-3"><span class="mt-0.5 inline-flex size-8 shrink-0 items-center justify-center rounded-lg [&_svg]:size-4 bg-destructive/10 text-destructive"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-triangle-alert" aria-hidden="true"><path d="m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3"></path><path d="M12 9v4"></path><path d="M12 17h.01"></path></svg></span><div class="flex min-w-0 flex-1 flex-col gap-1"><span class="inline-flex w-fit items-center rounded-full bg-muted px-2 py-0.5 text-[0.6875rem] font-medium uppercase tracking-wide text-muted-foreground">AI action</span><h3 class="text-base font-semibold text-foreground">Send 18 emails?</h3><p class="text-sm text-muted-foreground">You can't undo this.</p></div></div><div class="flex items-center justify-end gap-2"><button type="button" class="inline-flex items-center rounded-lg border border-border bg-background px-3 py-2 text-sm font-medium text-foreground transition-colors hover:bg-accent focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring">Cancel</button><button type="button" class="inline-flex items-center rounded-lg px-3 py-2 text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring bg-destructive text-destructive-foreground hover:bg-destructive/90">Confirm</button></div></div>`
5924
5929
  },
5925
5930
  inlinefeedback: {
5926
5931
  name: "InlineFeedback",
5927
- html: '<div role="toolbar" aria-label="Response feedback" class="inline-flex items-center gap-0.5"><button type="button" aria-label="Copy" title="Copy" class="inline-flex size-8 items-center justify-center rounded-md text-muted-foreground transition-colors hover:bg-accent hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&amp;_svg]:size-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg></button><button type="button" aria-label="Good response" title="Good response" aria-pressed="false" class="inline-flex size-8 items-center justify-center rounded-md text-muted-foreground transition-colors hover:bg-accent hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&amp;_svg]:size-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-thumbs-up" aria-hidden="true"><path d="M7 10v12"></path><path d="M15 5.88 14 10h5.83a2 2 0 0 1 1.92 2.56l-2.33 8A2 2 0 0 1 17.5 22H4a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h2.76a2 2 0 0 0 1.79-1.11L12 2a3.13 3.13 0 0 1 3 3.88Z"></path></svg></button><button type="button" aria-label="Bad response" title="Bad response" aria-pressed="false" class="inline-flex size-8 items-center justify-center rounded-md text-muted-foreground transition-colors hover:bg-accent hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&amp;_svg]:size-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-thumbs-down" aria-hidden="true"><path d="M17 14V2"></path><path d="M9 18.12 10 14H4.17a2 2 0 0 1-1.92-2.56l2.33-8A2 2 0 0 1 6.5 2H20a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.76a2 2 0 0 0-1.79 1.11L12 22a3.13 3.13 0 0 1-3-3.88Z"></path></svg></button><button type="button" aria-label="Regenerate" title="Regenerate" class="inline-flex size-8 items-center justify-center rounded-md text-muted-foreground transition-colors hover:bg-accent hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&amp;_svg]:size-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-rotate-cw" aria-hidden="true"><path d="M21 12a9 9 0 1 1-9-9c2.52 0 4.93 1 6.74 2.74L21 8"></path><path d="M21 3v5h-5"></path></svg></button></div>'
5932
+ html: '<div role="toolbar" aria-label="Response feedback" class="inline-flex items-center gap-0.5"><button type="button" aria-label="Copy" title="Copy" class="inline-flex size-8 items-center justify-center rounded-md text-muted-foreground transition-colors hover:bg-accent hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&_svg]:size-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg></button><button type="button" aria-label="Good response" title="Good response" aria-pressed="false" class="inline-flex size-8 items-center justify-center rounded-md text-muted-foreground transition-colors hover:bg-accent hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&_svg]:size-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-thumbs-up" aria-hidden="true"><path d="M7 10v12"></path><path d="M15 5.88 14 10h5.83a2 2 0 0 1 1.92 2.56l-2.33 8A2 2 0 0 1 17.5 22H4a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h2.76a2 2 0 0 0 1.79-1.11L12 2a3.13 3.13 0 0 1 3 3.88Z"></path></svg></button><button type="button" aria-label="Bad response" title="Bad response" aria-pressed="false" class="inline-flex size-8 items-center justify-center rounded-md text-muted-foreground transition-colors hover:bg-accent hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&_svg]:size-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-thumbs-down" aria-hidden="true"><path d="M17 14V2"></path><path d="M9 18.12 10 14H4.17a2 2 0 0 1-1.92-2.56l2.33-8A2 2 0 0 1 6.5 2H20a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.76a2 2 0 0 0-1.79 1.11L12 22a3.13 3.13 0 0 1-3-3.88Z"></path></svg></button><button type="button" aria-label="Regenerate" title="Regenerate" class="inline-flex size-8 items-center justify-center rounded-md text-muted-foreground transition-colors hover:bg-accent hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&_svg]:size-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-rotate-cw" aria-hidden="true"><path d="M21 12a9 9 0 1 1-9-9c2.52 0 4.93 1 6.74 2.74L21 8"></path><path d="M21 3v5h-5"></path></svg></button></div>'
5928
5933
  },
5929
5934
  rewritemenu: {
5930
5935
  name: "RewriteMenu",
5931
- html: '<div role="menu" aria-label="Rewrite" class="flex w-56 flex-col gap-0.5 rounded-xl border border-border bg-background p-1.5 shadow-md"><p class="px-2 py-1 text-xs font-medium uppercase tracking-wide text-muted-foreground">Rewrite</p><button type="button" role="menuitem" class="flex items-center gap-2.5 rounded-lg px-2 py-1.5 text-left text-sm text-foreground transition-colors hover:bg-accent focus-visible:bg-accent focus-visible:outline-none [&amp;_svg]:size-4 [&amp;_svg]:text-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-rotate-cw" aria-hidden="true"><path d="M21 12a9 9 0 1 1-9-9c2.52 0 4.93 1 6.74 2.74L21 8"></path><path d="M21 3v5h-5"></path></svg><span class="flex-1">Try again</span></button><button type="button" role="menuitem" class="flex items-center gap-2.5 rounded-lg px-2 py-1.5 text-left text-sm text-foreground transition-colors hover:bg-accent focus-visible:bg-accent focus-visible:outline-none [&amp;_svg]:size-4 [&amp;_svg]:text-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2" aria-hidden="true"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg><span class="flex-1">Make longer</span></button><button type="button" role="menuitem" class="flex items-center gap-2.5 rounded-lg px-2 py-1.5 text-left text-sm text-foreground transition-colors hover:bg-accent focus-visible:bg-accent focus-visible:outline-none [&amp;_svg]:size-4 [&amp;_svg]:text-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-minimize2" aria-hidden="true"><polyline points="4 14 10 14 10 20"></polyline><polyline points="20 10 14 10 14 4"></polyline><line x1="14" x2="21" y1="10" y2="3"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg><span class="flex-1">Make concise</span></button><button type="button" role="menuitem" class="flex items-center gap-2.5 rounded-lg px-2 py-1.5 text-left text-sm text-foreground transition-colors hover:bg-accent focus-visible:bg-accent focus-visible:outline-none [&amp;_svg]:size-4 [&amp;_svg]:text-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-briefcase" aria-hidden="true"><path d="M16 20V4a2 2 0 0 0-2-2h-4a2 2 0 0 0-2 2v16"></path><rect width="20" height="14" x="2" y="6" rx="2"></rect></svg><span class="flex-1">Make it professional</span></button><button type="button" role="menuitem" class="flex items-center gap-2.5 rounded-lg px-2 py-1.5 text-left text-sm text-foreground transition-colors hover:bg-accent focus-visible:bg-accent focus-visible:outline-none [&amp;_svg]:size-4 [&amp;_svg]:text-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-list" aria-hidden="true"><path d="M3 12h.01"></path><path d="M3 18h.01"></path><path d="M3 6h.01"></path><path d="M8 12h13"></path><path d="M8 18h13"></path><path d="M8 6h13"></path></svg><span class="flex-1">Convert to bullet points</span></button><button type="button" role="menuitem" class="flex items-center gap-2.5 rounded-lg px-2 py-1.5 text-left text-sm text-foreground transition-colors hover:bg-accent focus-visible:bg-accent focus-visible:outline-none [&amp;_svg]:size-4 [&amp;_svg]:text-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-message-circle-question" aria-hidden="true"><path d="M7.9 20A9 9 0 1 0 4 16.1L2 22Z"></path><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path><path d="M12 17h.01"></path></svg><span class="flex-1">Ask a follow-up</span></button></div>'
5936
+ html: '<div role="menu" aria-label="Rewrite" class="flex w-56 flex-col gap-0.5 rounded-xl border border-border bg-background p-1.5 shadow-md"><p class="px-2 py-1 text-xs font-medium uppercase tracking-wide text-muted-foreground">Rewrite</p><button type="button" role="menuitem" class="flex items-center gap-2.5 rounded-lg px-2 py-1.5 text-left text-sm text-foreground transition-colors hover:bg-accent focus-visible:bg-accent focus-visible:outline-none [&_svg]:size-4 [&_svg]:text-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-rotate-cw" aria-hidden="true"><path d="M21 12a9 9 0 1 1-9-9c2.52 0 4.93 1 6.74 2.74L21 8"></path><path d="M21 3v5h-5"></path></svg><span class="flex-1">Try again</span></button><button type="button" role="menuitem" class="flex items-center gap-2.5 rounded-lg px-2 py-1.5 text-left text-sm text-foreground transition-colors hover:bg-accent focus-visible:bg-accent focus-visible:outline-none [&_svg]:size-4 [&_svg]:text-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2" aria-hidden="true"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg><span class="flex-1">Make longer</span></button><button type="button" role="menuitem" class="flex items-center gap-2.5 rounded-lg px-2 py-1.5 text-left text-sm text-foreground transition-colors hover:bg-accent focus-visible:bg-accent focus-visible:outline-none [&_svg]:size-4 [&_svg]:text-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-minimize2" aria-hidden="true"><polyline points="4 14 10 14 10 20"></polyline><polyline points="20 10 14 10 14 4"></polyline><line x1="14" x2="21" y1="10" y2="3"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg><span class="flex-1">Make concise</span></button><button type="button" role="menuitem" class="flex items-center gap-2.5 rounded-lg px-2 py-1.5 text-left text-sm text-foreground transition-colors hover:bg-accent focus-visible:bg-accent focus-visible:outline-none [&_svg]:size-4 [&_svg]:text-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-briefcase" aria-hidden="true"><path d="M16 20V4a2 2 0 0 0-2-2h-4a2 2 0 0 0-2 2v16"></path><rect width="20" height="14" x="2" y="6" rx="2"></rect></svg><span class="flex-1">Make it professional</span></button><button type="button" role="menuitem" class="flex items-center gap-2.5 rounded-lg px-2 py-1.5 text-left text-sm text-foreground transition-colors hover:bg-accent focus-visible:bg-accent focus-visible:outline-none [&_svg]:size-4 [&_svg]:text-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-list" aria-hidden="true"><path d="M3 12h.01"></path><path d="M3 18h.01"></path><path d="M3 6h.01"></path><path d="M8 12h13"></path><path d="M8 18h13"></path><path d="M8 6h13"></path></svg><span class="flex-1">Convert to bullet points</span></button><button type="button" role="menuitem" class="flex items-center gap-2.5 rounded-lg px-2 py-1.5 text-left text-sm text-foreground transition-colors hover:bg-accent focus-visible:bg-accent focus-visible:outline-none [&_svg]:size-4 [&_svg]:text-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-message-circle-question" aria-hidden="true"><path d="M7.9 20A9 9 0 1 0 4 16.1L2 22Z"></path><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path><path d="M12 17h.01"></path></svg><span class="flex-1">Ask a follow-up</span></button></div>'
5932
5937
  },
5933
5938
  toneselector: {
5934
5939
  name: "ToneSelector",
5935
- html: '<div class="flex flex-col gap-2"><span class="text-xs font-medium text-muted-foreground">Tone</span><div role="radiogroup" aria-label="Tone" class="flex flex-wrap gap-1.5"><button type="button" role="radio" aria-checked="true" class="inline-flex items-center gap-1.5 rounded-full border px-3 py-1.5 text-sm transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&amp;_svg]:size-3.5 border-brand bg-brand-muted text-brand">Professional</button><button type="button" role="radio" aria-checked="false" class="inline-flex items-center gap-1.5 rounded-full border px-3 py-1.5 text-sm transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&amp;_svg]:size-3.5 border-border bg-background text-muted-foreground hover:bg-accent hover:text-foreground">Friendly</button><button type="button" role="radio" aria-checked="false" class="inline-flex items-center gap-1.5 rounded-full border px-3 py-1.5 text-sm transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&amp;_svg]:size-3.5 border-border bg-background text-muted-foreground hover:bg-accent hover:text-foreground">Direct</button><button type="button" role="radio" aria-checked="false" class="inline-flex items-center gap-1.5 rounded-full border px-3 py-1.5 text-sm transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&amp;_svg]:size-3.5 border-border bg-background text-muted-foreground hover:bg-accent hover:text-foreground">Playful</button></div></div>'
5940
+ html: '<div class="flex flex-col gap-2"><span class="text-xs font-medium text-muted-foreground">Tone</span><div role="radiogroup" aria-label="Tone" class="flex flex-wrap gap-1.5"><button type="button" role="radio" aria-checked="true" class="inline-flex items-center gap-1.5 rounded-full border px-3 py-1.5 text-sm transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&_svg]:size-3.5 border-brand bg-brand-muted text-brand">Professional</button><button type="button" role="radio" aria-checked="false" class="inline-flex items-center gap-1.5 rounded-full border px-3 py-1.5 text-sm transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&_svg]:size-3.5 border-border bg-background text-muted-foreground hover:bg-accent hover:text-foreground">Friendly</button><button type="button" role="radio" aria-checked="false" class="inline-flex items-center gap-1.5 rounded-full border px-3 py-1.5 text-sm transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&_svg]:size-3.5 border-border bg-background text-muted-foreground hover:bg-accent hover:text-foreground">Direct</button><button type="button" role="radio" aria-checked="false" class="inline-flex items-center gap-1.5 rounded-full border px-3 py-1.5 text-sm transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&_svg]:size-3.5 border-border bg-background text-muted-foreground hover:bg-accent hover:text-foreground">Playful</button></div></div>'
5936
5941
  },
5937
5942
  responsecomparison: {
5938
5943
  name: "ResponseComparison",
5939
- html: '<div class="flex flex-col gap-3"><p class="text-sm font-medium text-foreground">Which response is better?</p><div class="grid gap-3 sm:grid-cols-2"><div class="flex flex-col gap-3 rounded-xl border bg-background p-4 transition-colors border-border"><span class="text-xs font-medium uppercase tracking-wide text-muted-foreground">Response A</span><div class="flex-1 text-sm leading-relaxed text-foreground">Response A text</div><button type="button" aria-pressed="false" class="inline-flex items-center justify-center gap-1.5 rounded-lg border px-3 py-2 text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&amp;_svg]:size-4 border-border bg-background text-foreground hover:bg-accent">Prefer this response</button></div><div class="flex flex-col gap-3 rounded-xl border bg-background p-4 transition-colors border-border"><span class="text-xs font-medium uppercase tracking-wide text-muted-foreground">Response B</span><div class="flex-1 text-sm leading-relaxed text-foreground">Response B text</div><button type="button" aria-pressed="false" class="inline-flex items-center justify-center gap-1.5 rounded-lg border px-3 py-2 text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&amp;_svg]:size-4 border-border bg-background text-foreground hover:bg-accent">Prefer this response</button></div></div></div>'
5944
+ html: '<div class="flex flex-col gap-3"><p class="text-sm font-medium text-foreground">Which response is better?</p><div class="grid gap-3 sm:grid-cols-2"><div class="flex flex-col gap-3 rounded-xl border bg-background p-4 transition-colors border-border"><span class="text-xs font-medium uppercase tracking-wide text-muted-foreground">Response A</span><div class="flex-1 text-sm leading-relaxed text-foreground">Response A text</div><button type="button" aria-pressed="false" class="inline-flex items-center justify-center gap-1.5 rounded-lg border px-3 py-2 text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&_svg]:size-4 border-border bg-background text-foreground hover:bg-accent">Prefer this response</button></div><div class="flex flex-col gap-3 rounded-xl border bg-background p-4 transition-colors border-border"><span class="text-xs font-medium uppercase tracking-wide text-muted-foreground">Response B</span><div class="flex-1 text-sm leading-relaxed text-foreground">Response B text</div><button type="button" aria-pressed="false" class="inline-flex items-center justify-center gap-1.5 rounded-lg border px-3 py-2 text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&_svg]:size-4 border-border bg-background text-foreground hover:bg-accent">Prefer this response</button></div></div></div>'
5940
5945
  },
5941
5946
  promptenhancer: {
5942
5947
  name: "PromptEnhancer",
5943
- html: '<div class="flex flex-wrap items-center gap-2"><button type="button" class="inline-flex items-center gap-1.5 rounded-full border border-brand/30 bg-brand-muted/60 px-3 py-1.5 text-sm font-medium text-brand transition-colors hover:bg-brand-muted focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&amp;_svg]:size-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sparkles" aria-hidden="true"><path d="M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z"></path><path d="M20 3v4"></path><path d="M22 5h-4"></path><path d="M4 17v2"></path><path d="M5 18H3"></path></svg>Enhance prompt</button><button type="button" class="inline-flex items-center rounded-full border border-border bg-background px-3 py-1.5 text-sm text-muted-foreground transition-colors hover:bg-accent hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring">Make it professional</button></div>'
5948
+ html: '<div class="flex flex-wrap items-center gap-2"><button type="button" class="inline-flex items-center gap-1.5 rounded-full border border-brand/30 bg-brand-muted/60 px-3 py-1.5 text-sm font-medium text-brand transition-colors hover:bg-brand-muted focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&_svg]:size-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sparkles" aria-hidden="true"><path d="M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z"></path><path d="M20 3v4"></path><path d="M22 5h-4"></path><path d="M4 17v2"></path><path d="M5 18H3"></path></svg>Enhance prompt</button><button type="button" class="inline-flex items-center rounded-full border border-border bg-background px-3 py-1.5 text-sm text-muted-foreground transition-colors hover:bg-accent hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring">Make it professional</button></div>'
5944
5949
  },
5945
5950
  attachmenttile: {
5946
5951
  name: "AttachmentTile",
5947
- html: '<div class="flex flex-wrap items-start gap-2"><div class="inline-flex max-w-64 items-center gap-2.5 rounded-lg border border-border bg-background py-2 pl-2.5 pr-2"><span class="inline-flex size-8 shrink-0 items-center justify-center rounded-md bg-muted text-muted-foreground [&amp;_svg]:size-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-file-text" aria-hidden="true"><path d="M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z"></path><path d="M14 2v4a2 2 0 0 0 2 2h4"></path><path d="M10 9H8"></path><path d="M16 13H8"></path><path d="M16 17H8"></path></svg></span><span class="flex min-w-0 flex-col"><span class="truncate text-sm font-medium text-foreground">Playbook.pdf</span><span class="truncate text-xs text-muted-foreground">PDF \xB7 240 KB</span></span><button type="button" aria-label="Remove Playbook.pdf" class="inline-flex size-5 items-center justify-center rounded-full text-muted-foreground transition-colors hover:bg-accent hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&amp;_svg]:size-3.5"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-x" aria-hidden="true"><path d="M18 6 6 18"></path><path d="m6 6 12 12"></path></svg></button></div></div>'
5952
+ html: '<div class="flex flex-wrap items-start gap-2"><div class="inline-flex max-w-64 items-center gap-2.5 rounded-lg border border-border bg-background py-2 pl-2.5 pr-2"><span class="inline-flex size-8 shrink-0 items-center justify-center rounded-md bg-muted text-muted-foreground [&_svg]:size-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-file-text" aria-hidden="true"><path d="M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z"></path><path d="M14 2v4a2 2 0 0 0 2 2h4"></path><path d="M10 9H8"></path><path d="M16 13H8"></path><path d="M16 17H8"></path></svg></span><span class="flex min-w-0 flex-col"><span class="truncate text-sm font-medium text-foreground">Playbook.pdf</span><span class="truncate text-xs text-muted-foreground">PDF \xB7 240 KB</span></span><button type="button" aria-label="Remove Playbook.pdf" class="inline-flex size-5 items-center justify-center rounded-full text-muted-foreground transition-colors hover:bg-accent hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&_svg]:size-3.5"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-x" aria-hidden="true"><path d="M18 6 6 18"></path><path d="m6 6 12 12"></path></svg></button></div></div>'
5948
5953
  },
5949
5954
  modelselector: {
5950
5955
  name: "ModelSelector",
5951
- html: '<div class="relative inline-block"><button type="button" aria-label="Model" aria-haspopup="listbox" aria-expanded="false" class="inline-flex items-center gap-2 rounded-lg border border-border bg-background px-3 py-2 text-sm font-medium text-foreground transition-colors hover:bg-accent focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&amp;&gt;svg]:size-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sparkles text-brand" aria-hidden="true"><path d="M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z"></path><path d="M20 3v4"></path><path d="M22 5h-4"></path><path d="M4 17v2"></path><path d="M5 18H3"></path></svg><span>Instant</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down text-muted-foreground transition-transform" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></div>'
5956
+ html: '<div class="relative inline-block"><button type="button" aria-label="Model" aria-haspopup="listbox" aria-expanded="false" class="inline-flex items-center gap-2 rounded-lg border border-border bg-background px-3 py-2 text-sm font-medium text-foreground transition-colors hover:bg-accent focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&&gt;svg]:size-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sparkles text-brand" aria-hidden="true"><path d="M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z"></path><path d="M20 3v4"></path><path d="M22 5h-4"></path><path d="M4 17v2"></path><path d="M5 18H3"></path></svg><span>Instant</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down text-muted-foreground transition-transform" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></div>'
5952
5957
  },
5953
5958
  voiceinput: {
5954
5959
  name: "VoiceInput",
5955
- html: '<div class="flex items-center gap-3 rounded-full border border-border bg-background px-3 py-2" role="group" aria-label="Voice input"><button type="button" aria-label="Cancel dictation" class="inline-flex size-9 items-center justify-center rounded-full text-muted-foreground transition-colors hover:bg-accent hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&amp;_svg]:size-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-x" aria-hidden="true"><path d="M18 6 6 18"></path><path d="m6 6 12 12"></path></svg></button><div class="flex h-8 flex-1 items-center gap-0.5" aria-hidden="true"><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:30%;animation-delay:0ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:67%;animation-delay:90ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:44%;animation-delay:180ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:81%;animation-delay:270ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:58%;animation-delay:360ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:35%;animation-delay:450ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:72%;animation-delay:0ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:49%;animation-delay:90ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:86%;animation-delay:180ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:63%;animation-delay:270ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:40%;animation-delay:360ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:77%;animation-delay:450ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:54%;animation-delay:0ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:31%;animation-delay:90ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:68%;animation-delay:180ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:45%;animation-delay:270ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:82%;animation-delay:360ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:59%;animation-delay:450ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:36%;animation-delay:0ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:73%;animation-delay:90ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:50%;animation-delay:180ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:87%;animation-delay:270ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:64%;animation-delay:360ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:41%;animation-delay:450ms"></span></div><span class="text-sm tabular-nums text-muted-foreground">0:12</span><button type="button" aria-label="Stop and use recording" class="inline-flex size-9 items-center justify-center rounded-full bg-info text-info-foreground transition-colors hover:bg-info/90 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&amp;_svg]:size-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-check" aria-hidden="true"><path d="M20 6 9 17l-5-5"></path></svg></button></div>'
5960
+ html: '<div class="flex items-center gap-3 rounded-full border border-border bg-background px-3 py-2" role="group" aria-label="Voice input"><button type="button" aria-label="Cancel dictation" class="inline-flex size-9 items-center justify-center rounded-full text-muted-foreground transition-colors hover:bg-accent hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&_svg]:size-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-x" aria-hidden="true"><path d="M18 6 6 18"></path><path d="m6 6 12 12"></path></svg></button><div class="flex h-8 flex-1 items-center gap-0.5" aria-hidden="true"><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:30%;animation-delay:0ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:67%;animation-delay:90ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:44%;animation-delay:180ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:81%;animation-delay:270ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:58%;animation-delay:360ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:35%;animation-delay:450ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:72%;animation-delay:0ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:49%;animation-delay:90ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:86%;animation-delay:180ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:63%;animation-delay:270ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:40%;animation-delay:360ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:77%;animation-delay:450ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:54%;animation-delay:0ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:31%;animation-delay:90ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:68%;animation-delay:180ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:45%;animation-delay:270ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:82%;animation-delay:360ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:59%;animation-delay:450ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:36%;animation-delay:0ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:73%;animation-delay:90ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:50%;animation-delay:180ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:87%;animation-delay:270ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:64%;animation-delay:360ms"></span><span class="w-0.5 flex-1 rounded-full bg-info/70 animate-nx-typing" style="height:41%;animation-delay:450ms"></span></div><span class="text-sm tabular-nums text-muted-foreground">0:12</span><button type="button" aria-label="Stop and use recording" class="inline-flex size-9 items-center justify-center rounded-full bg-info text-info-foreground transition-colors hover:bg-info/90 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&_svg]:size-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-check" aria-hidden="true"><path d="M20 6 9 17l-5-5"></path></svg></button></div>'
5956
5961
  },
5957
5962
  structuredinput: {
5958
5963
  name: "StructuredInput",
5959
- html: '<div class="flex flex-col gap-4 rounded-xl border border-border bg-background p-5"><p class="text-base font-medium text-foreground">Which audience is this for?</p><div role="radiogroup" aria-label="Which audience is this for?" class="flex flex-col gap-2"><button type="button" role="radio" aria-checked="false" class="flex items-center gap-3 rounded-lg border px-3 py-2.5 text-left text-sm transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring border-border bg-background text-foreground hover:bg-accent"><span class="inline-flex size-5 shrink-0 items-center justify-center border transition-colors [&amp;_svg]:size-3.5 rounded-full border-border"></span><span class="flex-1">Executives</span></button><button type="button" role="radio" aria-checked="false" class="flex items-center gap-3 rounded-lg border px-3 py-2.5 text-left text-sm transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring border-border bg-background text-foreground hover:bg-accent"><span class="inline-flex size-5 shrink-0 items-center justify-center border transition-colors [&amp;_svg]:size-3.5 rounded-full border-border"></span><span class="flex-1">Engineers</span></button></div><div class="flex items-center justify-end gap-2"><button type="button" class="inline-flex items-center rounded-lg px-3 py-2 text-sm font-medium text-muted-foreground transition-colors hover:bg-accent hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring">Skip</button><button type="button" disabled="" class="inline-flex items-center rounded-lg bg-info px-3 py-2 text-sm font-medium text-info-foreground transition-colors hover:bg-info/90 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50">Continue</button></div></div>'
5964
+ html: '<div class="flex flex-col gap-4 rounded-xl border border-border bg-background p-5"><p class="text-base font-medium text-foreground">Which audience is this for?</p><div role="radiogroup" aria-label="Which audience is this for?" class="flex flex-col gap-2"><button type="button" role="radio" aria-checked="false" class="flex items-center gap-3 rounded-lg border px-3 py-2.5 text-left text-sm transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring border-border bg-background text-foreground hover:bg-accent"><span class="inline-flex size-5 shrink-0 items-center justify-center border transition-colors [&_svg]:size-3.5 rounded-full border-border"></span><span class="flex-1">Executives</span></button><button type="button" role="radio" aria-checked="false" class="flex items-center gap-3 rounded-lg border px-3 py-2.5 text-left text-sm transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring border-border bg-background text-foreground hover:bg-accent"><span class="inline-flex size-5 shrink-0 items-center justify-center border transition-colors [&_svg]:size-3.5 rounded-full border-border"></span><span class="flex-1">Engineers</span></button></div><div class="flex items-center justify-end gap-2"><button type="button" class="inline-flex items-center rounded-lg px-3 py-2 text-sm font-medium text-muted-foreground transition-colors hover:bg-accent hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring">Skip</button><button type="button" disabled="" class="inline-flex items-center rounded-lg bg-info px-3 py-2 text-sm font-medium text-info-foreground transition-colors hover:bg-info/90 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50">Continue</button></div></div>'
5960
5965
  },
5961
5966
  connectorcard: {
5962
5967
  name: "ConnectorCard",
5963
- html: '<div class="flex items-center gap-3 rounded-xl border border-border bg-background p-4"><span class="inline-flex size-10 shrink-0 items-center justify-center rounded-lg bg-muted text-foreground [&amp;_svg]:size-5"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-plug" aria-hidden="true"><path d="M12 22v-5"></path><path d="M9 8V2"></path><path d="M15 8V2"></path><path d="M18 8v5a4 4 0 0 1-4 4h-4a4 4 0 0 1-4-4V8Z"></path></svg></span><div class="flex min-w-0 flex-1 flex-col"><span class="text-sm font-medium text-foreground">GitHub</span><span class="text-xs text-muted-foreground">Read issues and code</span></div><button type="button" class="inline-flex shrink-0 items-center rounded-lg border border-border bg-background px-3 py-1.5 text-sm font-medium text-foreground shadow-sm transition-colors hover:bg-accent focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring">Connect</button></div>'
5968
+ html: '<div class="flex items-center gap-3 rounded-xl border border-border bg-background p-4"><span class="inline-flex size-10 shrink-0 items-center justify-center rounded-lg bg-muted text-foreground [&_svg]:size-5"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-plug" aria-hidden="true"><path d="M12 22v-5"></path><path d="M9 8V2"></path><path d="M15 8V2"></path><path d="M18 8v5a4 4 0 0 1-4 4h-4a4 4 0 0 1-4-4V8Z"></path></svg></span><div class="flex min-w-0 flex-1 flex-col"><span class="text-sm font-medium text-foreground">GitHub</span><span class="text-xs text-muted-foreground">Read issues and code</span></div><button type="button" class="inline-flex shrink-0 items-center rounded-lg border border-border bg-background px-3 py-1.5 text-sm font-medium text-foreground shadow-sm transition-colors hover:bg-accent focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring">Connect</button></div>'
5964
5969
  },
5965
5970
  knowledgebasepicker: {
5966
5971
  name: "KnowledgeBasePicker",
5967
- html: '<div class="flex flex-col gap-2 rounded-xl border border-border bg-background p-3"><div class="flex items-center justify-between px-1"><p class="text-xs font-medium uppercase tracking-wide text-muted-foreground">Knowledge sources</p><span class="text-xs text-muted-foreground">1 selected</span></div><ul class="flex flex-col gap-1"><li><button type="button" role="checkbox" aria-checked="true" class="flex w-full items-center gap-3 rounded-lg border px-3 py-2 text-left transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring border-brand bg-brand-muted/40"><span class="inline-flex size-8 shrink-0 items-center justify-center rounded-md bg-muted text-muted-foreground [&amp;_svg]:size-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-file-text" aria-hidden="true"><path d="M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z"></path><path d="M14 2v4a2 2 0 0 0 2 2h4"></path><path d="M10 9H8"></path><path d="M16 13H8"></path><path d="M16 17H8"></path></svg></span><span class="flex min-w-0 flex-1 flex-col"><span class="truncate text-sm font-medium text-foreground">CLAUDE.md</span><span class="truncate text-xs text-muted-foreground">project guide</span></span><span class="inline-flex size-5 shrink-0 items-center justify-center rounded-md border transition-colors [&amp;_svg]:size-3.5 border-brand bg-brand text-brand-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-check" aria-hidden="true"><path d="M20 6 9 17l-5-5"></path></svg></span></button></li><li><button type="button" role="checkbox" aria-checked="false" class="flex w-full items-center gap-3 rounded-lg border px-3 py-2 text-left transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring border-transparent hover:bg-accent"><span class="inline-flex size-8 shrink-0 items-center justify-center rounded-md bg-muted text-muted-foreground [&amp;_svg]:size-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-file-text" aria-hidden="true"><path d="M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z"></path><path d="M14 2v4a2 2 0 0 0 2 2h4"></path><path d="M10 9H8"></path><path d="M16 13H8"></path><path d="M16 17H8"></path></svg></span><span class="flex min-w-0 flex-1 flex-col"><span class="truncate text-sm font-medium text-foreground">project.json</span><span class="truncate text-xs text-muted-foreground">config</span></span><span class="inline-flex size-5 shrink-0 items-center justify-center rounded-md border transition-colors [&amp;_svg]:size-3.5 border-border"></span></button></li></ul></div>'
5972
+ html: '<div class="flex flex-col gap-2 rounded-xl border border-border bg-background p-3"><div class="flex items-center justify-between px-1"><p class="text-xs font-medium uppercase tracking-wide text-muted-foreground">Knowledge sources</p><span class="text-xs text-muted-foreground">1 selected</span></div><ul class="flex flex-col gap-1"><li><button type="button" role="checkbox" aria-checked="true" class="flex w-full items-center gap-3 rounded-lg border px-3 py-2 text-left transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring border-brand bg-brand-muted/40"><span class="inline-flex size-8 shrink-0 items-center justify-center rounded-md bg-muted text-muted-foreground [&_svg]:size-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-file-text" aria-hidden="true"><path d="M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z"></path><path d="M14 2v4a2 2 0 0 0 2 2h4"></path><path d="M10 9H8"></path><path d="M16 13H8"></path><path d="M16 17H8"></path></svg></span><span class="flex min-w-0 flex-1 flex-col"><span class="truncate text-sm font-medium text-foreground">CLAUDE.md</span><span class="truncate text-xs text-muted-foreground">project guide</span></span><span class="inline-flex size-5 shrink-0 items-center justify-center rounded-md border transition-colors [&_svg]:size-3.5 border-brand bg-brand text-brand-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-check" aria-hidden="true"><path d="M20 6 9 17l-5-5"></path></svg></span></button></li><li><button type="button" role="checkbox" aria-checked="false" class="flex w-full items-center gap-3 rounded-lg border px-3 py-2 text-left transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring border-transparent hover:bg-accent"><span class="inline-flex size-8 shrink-0 items-center justify-center rounded-md bg-muted text-muted-foreground [&_svg]:size-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-file-text" aria-hidden="true"><path d="M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z"></path><path d="M14 2v4a2 2 0 0 0 2 2h4"></path><path d="M10 9H8"></path><path d="M16 13H8"></path><path d="M16 17H8"></path></svg></span><span class="flex min-w-0 flex-1 flex-col"><span class="truncate text-sm font-medium text-foreground">project.json</span><span class="truncate text-xs text-muted-foreground">config</span></span><span class="inline-flex size-5 shrink-0 items-center justify-center rounded-md border transition-colors [&_svg]:size-3.5 border-border"></span></button></li></ul></div>'
5968
5973
  },
5969
5974
  prompttemplate: {
5970
5975
  name: "PromptTemplate",
@@ -5972,11 +5977,11 @@ var html_snippets_default = {
5972
5977
  },
5973
5978
  aidisclosure: {
5974
5979
  name: "AiDisclosure",
5975
- html: '<div class="flex items-center gap-2 rounded-lg border border-brand/20 bg-brand-muted/40 px-3 py-2 text-sm text-foreground [&amp;_svg]:size-4 [&amp;_svg]:text-brand"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sparkles" aria-hidden="true"><path d="M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z"></path><path d="M20 3v4"></path><path d="M22 5h-4"></path><path d="M4 17v2"></path><path d="M5 18H3"></path></svg><span>This content was generated by AI. Review it before relying on it.</span></div>'
5980
+ html: '<div class="flex items-center gap-2 rounded-lg border border-brand/20 bg-brand-muted/40 px-3 py-2 text-sm text-foreground [&_svg]:size-4 [&_svg]:text-brand"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sparkles" aria-hidden="true"><path d="M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z"></path><path d="M20 3v4"></path><path d="M22 5h-4"></path><path d="M4 17v2"></path><path d="M5 18H3"></path></svg><span>This content was generated by AI. Review it before relying on it.</span></div>'
5976
5981
  },
5977
5982
  aicaveat: {
5978
5983
  name: "AiCaveat",
5979
- html: '<p class="inline-flex items-center gap-1.5 text-xs text-muted-foreground [&amp;_svg]:size-3.5"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-info" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><path d="M12 16v-4"></path><path d="M12 8h.01"></path></svg><span>AI can make mistakes. Verify important information.</span></p>'
5984
+ html: '<p class="inline-flex items-center gap-1.5 text-xs text-muted-foreground [&_svg]:size-3.5"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-info" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><path d="M12 16v-4"></path><path d="M12 8h.01"></path></svg><span>AI can make mistakes. Verify important information.</span></p>'
5980
5985
  },
5981
5986
  capabilityoverview: {
5982
5987
  name: "CapabilityOverview",
@@ -5984,19 +5989,19 @@ var html_snippets_default = {
5984
5989
  },
5985
5990
  memorysummary: {
5986
5991
  name: "MemorySummary",
5987
- html: '<div class="flex flex-col gap-4 rounded-xl border border-border bg-background p-5"><div class="flex items-start justify-between gap-3"><div class="flex items-center gap-2"><span class="inline-flex size-8 items-center justify-center rounded-lg bg-brand-muted text-brand [&amp;_svg]:size-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-brain" aria-hidden="true"><path d="M12 5a3 3 0 1 0-5.997.125 4 4 0 0 0-2.526 5.77 4 4 0 0 0 .556 6.588A4 4 0 1 0 12 18Z"></path><path d="M12 5a3 3 0 1 1 5.997.125 4 4 0 0 1 2.526 5.77 4 4 0 0 1-.556 6.588A4 4 0 1 1 12 18Z"></path><path d="M15 13a4.5 4.5 0 0 1-3-4 4.5 4.5 0 0 1-3 4"></path><path d="M17.599 6.5a3 3 0 0 0 .399-1.375"></path><path d="M6.003 5.125A3 3 0 0 0 6.401 6.5"></path><path d="M3.477 10.896a4 4 0 0 1 .585-.396"></path><path d="M19.938 10.5a4 4 0 0 1 .585.396"></path><path d="M6 18a4 4 0 0 1-1.967-.516"></path><path d="M19.967 17.484A4 4 0 0 1 18 18"></path></svg></span><div class="flex flex-col"><h3 class="text-sm font-semibold text-foreground">What I remember</h3><span class="text-xs text-muted-foreground">Updated 1 minute ago</span></div></div><button type="button" aria-label="Refresh memory" class="inline-flex size-8 items-center justify-center rounded-md text-muted-foreground transition-colors hover:bg-accent hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&amp;_svg]:size-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-rotate-cw" aria-hidden="true"><path d="M21 12a9 9 0 1 1-9-9c2.52 0 4.93 1 6.74 2.74L21 8"></path><path d="M21 3v5h-5"></path></svg></button></div><div class="flex flex-col gap-4"><div class="flex flex-col gap-1.5"><p class="text-xs font-medium uppercase tracking-wide text-muted-foreground">About you</p><ul class="flex flex-col gap-1"><li class="rounded-lg bg-muted/50 px-3 py-2 text-sm text-foreground">Prefers concise answers</li></ul></div></div><div class="flex items-center gap-2 border-t border-border pt-3"><input type="text" placeholder="Add or update a memory\u2026" aria-label="Add or update a memory\u2026" class="min-w-0 flex-1 rounded-lg border border-input bg-background px-3 py-2 text-sm text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring" value=""/><button type="button" aria-label="Add memory" class="inline-flex size-9 shrink-0 items-center justify-center rounded-lg bg-info text-info-foreground transition-colors hover:bg-info/90 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&amp;_svg]:size-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-plus" aria-hidden="true"><path d="M5 12h14"></path><path d="M12 5v14"></path></svg></button></div></div>'
5992
+ html: '<div class="flex flex-col gap-4 rounded-xl border border-border bg-background p-5"><div class="flex items-start justify-between gap-3"><div class="flex items-center gap-2"><span class="inline-flex size-8 items-center justify-center rounded-lg bg-brand-muted text-brand [&_svg]:size-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-brain" aria-hidden="true"><path d="M12 5a3 3 0 1 0-5.997.125 4 4 0 0 0-2.526 5.77 4 4 0 0 0 .556 6.588A4 4 0 1 0 12 18Z"></path><path d="M12 5a3 3 0 1 1 5.997.125 4 4 0 0 1 2.526 5.77 4 4 0 0 1-.556 6.588A4 4 0 1 1 12 18Z"></path><path d="M15 13a4.5 4.5 0 0 1-3-4 4.5 4.5 0 0 1-3 4"></path><path d="M17.599 6.5a3 3 0 0 0 .399-1.375"></path><path d="M6.003 5.125A3 3 0 0 0 6.401 6.5"></path><path d="M3.477 10.896a4 4 0 0 1 .585-.396"></path><path d="M19.938 10.5a4 4 0 0 1 .585.396"></path><path d="M6 18a4 4 0 0 1-1.967-.516"></path><path d="M19.967 17.484A4 4 0 0 1 18 18"></path></svg></span><div class="flex flex-col"><h3 class="text-sm font-semibold text-foreground">What I remember</h3><span class="text-xs text-muted-foreground">Updated 1 minute ago</span></div></div><button type="button" aria-label="Refresh memory" class="inline-flex size-8 items-center justify-center rounded-md text-muted-foreground transition-colors hover:bg-accent hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&_svg]:size-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-rotate-cw" aria-hidden="true"><path d="M21 12a9 9 0 1 1-9-9c2.52 0 4.93 1 6.74 2.74L21 8"></path><path d="M21 3v5h-5"></path></svg></button></div><div class="flex flex-col gap-4"><div class="flex flex-col gap-1.5"><p class="text-xs font-medium uppercase tracking-wide text-muted-foreground">About you</p><ul class="flex flex-col gap-1"><li class="rounded-lg bg-muted/50 px-3 py-2 text-sm text-foreground">Prefers concise answers</li></ul></div></div><div class="flex items-center gap-2 border-t border-border pt-3"><input type="text" placeholder="Add or update a memory\u2026" aria-label="Add or update a memory\u2026" class="min-w-0 flex-1 rounded-lg border border-input bg-background px-3 py-2 text-sm text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring" value=""/><button type="button" aria-label="Add memory" class="inline-flex size-9 shrink-0 items-center justify-center rounded-lg bg-info text-info-foreground transition-colors hover:bg-info/90 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&_svg]:size-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-plus" aria-hidden="true"><path d="M5 12h14"></path><path d="M12 5v14"></path></svg></button></div></div>'
5988
5993
  },
5989
5994
  privacynotice: {
5990
5995
  name: "PrivacyNotice",
5991
- html: '<div class="inline-flex items-center gap-2 rounded-lg bg-muted/60 px-3 py-2 text-xs text-muted-foreground [&amp;_svg]:size-3.5"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-eye-off" aria-hidden="true"><path d="M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49"></path><path d="M14.084 14.158a3 3 0 0 1-4.242-4.242"></path><path d="M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143"></path><path d="m2 2 20 20"></path></svg><span>Incognito chats aren&#x27;t saved or added to memory.</span></div>'
5996
+ html: `<div class="inline-flex items-center gap-2 rounded-lg bg-muted/60 px-3 py-2 text-xs text-muted-foreground [&_svg]:size-3.5"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-eye-off" aria-hidden="true"><path d="M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49"></path><path d="M14.084 14.158a3 3 0 0 1-4.242-4.242"></path><path d="M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143"></path><path d="m2 2 20 20"></path></svg><span>Incognito chats aren't saved or added to memory.</span></div>`
5992
5997
  },
5993
5998
  errorstate: {
5994
5999
  name: "ErrorState",
5995
- html: '<div role="alert" class="flex flex-col items-center gap-3 rounded-xl border border-border bg-background px-6 py-10 text-center"><span class="inline-flex size-12 items-center justify-center rounded-full [&amp;_svg]:size-6 bg-destructive/10 text-destructive"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-triangle-alert" aria-hidden="true"><path d="m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3"></path><path d="M12 9v4"></path><path d="M12 17h.01"></path></svg></span><div class="flex flex-col gap-1"><h3 class="text-base font-semibold text-foreground">Something went wrong</h3><p class="max-w-sm text-sm text-muted-foreground">Your prompt didn&#x27;t go through.</p></div><div class="mt-1 flex flex-wrap items-center justify-center gap-2"><button type="button">Retry</button></div></div>'
6000
+ html: `<div role="alert" class="flex flex-col items-center gap-3 rounded-xl border border-border bg-background px-6 py-10 text-center"><span class="inline-flex size-12 items-center justify-center rounded-full [&_svg]:size-6 bg-destructive/10 text-destructive"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-triangle-alert" aria-hidden="true"><path d="m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3"></path><path d="M12 9v4"></path><path d="M12 17h.01"></path></svg></span><div class="flex flex-col gap-1"><h3 class="text-base font-semibold text-foreground">Something went wrong</h3><p class="max-w-sm text-sm text-muted-foreground">Your prompt didn't go through.</p></div><div class="mt-1 flex flex-wrap items-center justify-center gap-2"><button type="button">Retry</button></div></div>`
5996
6001
  },
5997
6002
  audiomessage: {
5998
6003
  name: "AudioMessage",
5999
- html: '<div class="flex flex-col gap-2 rounded-xl border border-border bg-background p-3"><div class="flex items-center gap-3"><button type="button" aria-label="Play" aria-pressed="false" class="inline-flex size-9 shrink-0 items-center justify-center rounded-full bg-info text-info-foreground transition-colors hover:bg-info/90 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&amp;_svg]:size-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-play" aria-hidden="true"><polygon points="6 3 20 12 6 21 6 3"></polygon></svg></button><div class="flex h-8 flex-1 items-center gap-0.5" aria-hidden="true"><span class="w-1 flex-1 rounded-full bg-info/60" style="height:40%;animation-delay:0ms"></span><span class="w-1 flex-1 rounded-full bg-info/60" style="height:70%;animation-delay:90ms"></span><span class="w-1 flex-1 rounded-full bg-info/60" style="height:55%;animation-delay:180ms"></span><span class="w-1 flex-1 rounded-full bg-info/60" style="height:90%;animation-delay:270ms"></span><span class="w-1 flex-1 rounded-full bg-info/60" style="height:60%;animation-delay:360ms"></span><span class="w-1 flex-1 rounded-full bg-info/60" style="height:35%;animation-delay:450ms"></span><span class="w-1 flex-1 rounded-full bg-info/60" style="height:75%;animation-delay:0ms"></span><span class="w-1 flex-1 rounded-full bg-info/60" style="height:50%;animation-delay:90ms"></span><span class="w-1 flex-1 rounded-full bg-info/60" style="height:85%;animation-delay:180ms"></span><span class="w-1 flex-1 rounded-full bg-info/60" style="height:45%;animation-delay:270ms"></span><span class="w-1 flex-1 rounded-full bg-info/60" style="height:65%;animation-delay:360ms"></span><span class="w-1 flex-1 rounded-full bg-info/60" style="height:30%;animation-delay:450ms"></span><span class="w-1 flex-1 rounded-full bg-info/60" style="height:80%;animation-delay:0ms"></span><span class="w-1 flex-1 rounded-full bg-info/60" style="height:55%;animation-delay:90ms"></span><span class="w-1 flex-1 rounded-full bg-info/60" style="height:70%;animation-delay:180ms"></span><span class="w-1 flex-1 rounded-full bg-info/60" style="height:40%;animation-delay:270ms"></span><span class="w-1 flex-1 rounded-full bg-info/60" style="height:60%;animation-delay:360ms"></span><span class="w-1 flex-1 rounded-full bg-info/60" style="height:50%;animation-delay:450ms"></span></div><span class="shrink-0 text-xs tabular-nums text-muted-foreground">0:42</span></div></div>'
6004
+ html: '<div class="flex flex-col gap-2 rounded-xl border border-border bg-background p-3"><div class="flex items-center gap-3"><button type="button" aria-label="Play" aria-pressed="false" class="inline-flex size-9 shrink-0 items-center justify-center rounded-full bg-info text-info-foreground transition-colors hover:bg-info/90 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&_svg]:size-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-play" aria-hidden="true"><polygon points="6 3 20 12 6 21 6 3"></polygon></svg></button><div class="flex h-8 flex-1 items-center gap-0.5" aria-hidden="true"><span class="w-1 flex-1 rounded-full bg-info/60" style="height:40%;animation-delay:0ms"></span><span class="w-1 flex-1 rounded-full bg-info/60" style="height:70%;animation-delay:90ms"></span><span class="w-1 flex-1 rounded-full bg-info/60" style="height:55%;animation-delay:180ms"></span><span class="w-1 flex-1 rounded-full bg-info/60" style="height:90%;animation-delay:270ms"></span><span class="w-1 flex-1 rounded-full bg-info/60" style="height:60%;animation-delay:360ms"></span><span class="w-1 flex-1 rounded-full bg-info/60" style="height:35%;animation-delay:450ms"></span><span class="w-1 flex-1 rounded-full bg-info/60" style="height:75%;animation-delay:0ms"></span><span class="w-1 flex-1 rounded-full bg-info/60" style="height:50%;animation-delay:90ms"></span><span class="w-1 flex-1 rounded-full bg-info/60" style="height:85%;animation-delay:180ms"></span><span class="w-1 flex-1 rounded-full bg-info/60" style="height:45%;animation-delay:270ms"></span><span class="w-1 flex-1 rounded-full bg-info/60" style="height:65%;animation-delay:360ms"></span><span class="w-1 flex-1 rounded-full bg-info/60" style="height:30%;animation-delay:450ms"></span><span class="w-1 flex-1 rounded-full bg-info/60" style="height:80%;animation-delay:0ms"></span><span class="w-1 flex-1 rounded-full bg-info/60" style="height:55%;animation-delay:90ms"></span><span class="w-1 flex-1 rounded-full bg-info/60" style="height:70%;animation-delay:180ms"></span><span class="w-1 flex-1 rounded-full bg-info/60" style="height:40%;animation-delay:270ms"></span><span class="w-1 flex-1 rounded-full bg-info/60" style="height:60%;animation-delay:360ms"></span><span class="w-1 flex-1 rounded-full bg-info/60" style="height:50%;animation-delay:450ms"></span></div><span class="shrink-0 text-xs tabular-nums text-muted-foreground">0:42</span></div></div>'
6000
6005
  },
6001
6006
  badge: {
6002
6007
  name: "Badge",
@@ -6008,7 +6013,7 @@ var html_snippets_default = {
6008
6013
  },
6009
6014
  iconbutton: {
6010
6015
  name: "IconButton",
6011
- html: '<button type="button" class="inline-flex shrink-0 items-center justify-center transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&amp;_svg]:size-5 rounded-md text-muted-foreground hover:bg-accent hover:text-foreground size-9" aria-label="Home"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-house"><path d="M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8"></path><path d="M3 10a2 2 0 0 1 .709-1.528l7-5.999a2 2 0 0 1 2.582 0l7 5.999A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"></path></svg></button>'
6016
+ html: '<button type="button" class="inline-flex shrink-0 items-center justify-center transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:size-5 rounded-md text-muted-foreground hover:bg-accent hover:text-foreground size-9" aria-label="Home"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-house"><path d="M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8"></path><path d="M3 10a2 2 0 0 1 .709-1.528l7-5.999a2 2 0 0 1 2.582 0l7 5.999A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"></path></svg></button>'
6012
6017
  },
6013
6018
  cardcontainer: {
6014
6019
  name: "CardContainer",
@@ -6024,7 +6029,7 @@ var html_snippets_default = {
6024
6029
  },
6025
6030
  gettingstartedpill: {
6026
6031
  name: "GettingStartedPill",
6027
- html: '<button type="button" aria-expanded="false" class="group inline-flex items-center gap-2.5 rounded-3xl border border-info/20 bg-background px-4 py-2 text-left shadow-[0_0_10px_-2px_hsl(var(--nx-info)/0.4)] transition-colors hover:bg-muted/40 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring"><span class="flex flex-1 items-center gap-2.5"><span class="flex size-9 shrink-0 items-center justify-center rounded-full bg-muted text-foreground [&amp;_svg]:size-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-rocket"><path d="M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09z"></path><path d="m12 15-3-3a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.35 22.35 0 0 1-4 2z"></path><path d="M9 12H4s.55-3.03 2-4c1.62-1.08 5 0 5 0"></path><path d="M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5"></path></svg></span><span class="text-sm text-foreground">Getting Started</span></span><span class="flex shrink-0 items-center gap-2.5"><span class="inline-flex items-center gap-1 whitespace-nowrap py-0.5 text-xs font-medium leading-4 bg-info/15 text-info rounded-[10px] px-2">2 of 4</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-up size-4 text-muted-foreground"><path d="m18 15-6-6-6 6"></path></svg></span></button>'
6032
+ html: '<button type="button" aria-expanded="false" class="group inline-flex items-center gap-2.5 rounded-3xl border border-info/20 bg-background px-4 py-2 text-left shadow-[0_0_10px_-2px_hsl(var(--nx-info)/0.4)] transition-colors hover:bg-muted/40 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring"><span class="flex flex-1 items-center gap-2.5"><span class="flex size-9 shrink-0 items-center justify-center rounded-full bg-muted text-foreground [&_svg]:size-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-rocket"><path d="M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09z"></path><path d="m12 15-3-3a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.35 22.35 0 0 1-4 2z"></path><path d="M9 12H4s.55-3.03 2-4c1.62-1.08 5 0 5 0"></path><path d="M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5"></path></svg></span><span class="text-sm text-foreground">Getting Started</span></span><span class="flex shrink-0 items-center gap-2.5"><span class="inline-flex items-center gap-1 whitespace-nowrap py-0.5 text-xs font-medium leading-4 bg-info/15 text-info rounded-[10px] px-2">2 of 4</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-up size-4 text-muted-foreground"><path d="m18 15-6-6-6 6"></path></svg></span></button>'
6028
6033
  },
6029
6034
  chip: {
6030
6035
  name: "Chip",
@@ -6036,7 +6041,7 @@ var html_snippets_default = {
6036
6041
  },
6037
6042
  alert: {
6038
6043
  name: "Alert",
6039
- html: '<div role="alert" class="flex items-start gap-3 rounded-lg border p-4 text-sm border-info/30 bg-info/5 text-foreground [&amp;_[data-alert-icon]]:text-info"><span data-alert-icon="true" class="mt-0.5 shrink-0 [&amp;_svg]:size-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-info"><circle cx="12" cy="12" r="10"></circle><path d="M12 16v-4"></path><path d="M12 8h.01"></path></svg></span><div class="min-w-0 flex-1 space-y-1"><p class="font-medium leading-none">Heads up</p><div class="leading-relaxed text-muted-foreground">Body text</div></div></div>'
6044
+ html: '<div role="alert" class="flex items-start gap-3 rounded-lg border p-4 text-sm border-info/30 bg-info/5 text-foreground [&_[data-alert-icon]]:text-info"><span data-alert-icon="true" class="mt-0.5 shrink-0 [&_svg]:size-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-info"><circle cx="12" cy="12" r="10"></circle><path d="M12 16v-4"></path><path d="M12 8h.01"></path></svg></span><div class="min-w-0 flex-1 space-y-1"><p class="font-medium leading-none">Heads up</p><div class="leading-relaxed text-muted-foreground">Body text</div></div></div>'
6040
6045
  },
6041
6046
  switch: {
6042
6047
  name: "Switch",
@@ -6052,7 +6057,7 @@ var html_snippets_default = {
6052
6057
  },
6053
6058
  searchinput: {
6054
6059
  name: "SearchInput",
6055
- html: '<div class="flex min-h-9 items-center gap-2 rounded-lg border border-input bg-background px-3 py-1.5 text-sm shadow-sm focus-within:ring-2 focus-within:ring-ring"><span class="shrink-0 text-muted-foreground [&amp;_svg]:size-5"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search"><circle cx="11" cy="11" r="8"></circle><path d="m21 21-4.3-4.3"></path></svg></span><input type="search" placeholder="Ask or search" class="min-w-0 flex-1 bg-transparent text-foreground outline-none placeholder:text-muted-foreground" aria-label="Search"/></div>'
6060
+ html: '<div class="flex min-h-9 items-center gap-2 rounded-lg border border-input bg-background px-3 py-1.5 text-sm shadow-sm focus-within:ring-2 focus-within:ring-ring"><span class="shrink-0 text-muted-foreground [&_svg]:size-5"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search"><circle cx="11" cy="11" r="8"></circle><path d="m21 21-4.3-4.3"></path></svg></span><input type="search" placeholder="Ask or search" class="min-w-0 flex-1 bg-transparent text-foreground outline-none placeholder:text-muted-foreground" aria-label="Search"/></div>'
6056
6061
  },
6057
6062
  globalnav: {
6058
6063
  name: "GlobalNav",
@@ -6060,7 +6065,7 @@ var html_snippets_default = {
6060
6065
  },
6061
6066
  sidebar: {
6062
6067
  name: "Sidebar",
6063
- html: '<nav class="flex h-full w-[69px] shrink-0 flex-col items-center gap-4 border-r border-border bg-background p-4"><button type="button" title="Home" aria-label="Home" aria-current="page" class="inline-flex size-9 shrink-0 items-center justify-center rounded-md transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&amp;_svg]:size-5 bg-accent text-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-house"><path d="M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8"></path><path d="M3 10a2 2 0 0 1 .709-1.528l7-5.999a2 2 0 0 1 2.582 0l7 5.999A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"></path></svg></button><div role="separator" class="h-px w-9 shrink-0 bg-border"></div><button type="button" title="More" aria-label="More" class="inline-flex size-9 shrink-0 items-center justify-center rounded-md transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&amp;_svg]:size-5 text-muted-foreground hover:bg-accent hover:text-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-house"><path d="M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8"></path><path d="M3 10a2 2 0 0 1 .709-1.528l7-5.999a2 2 0 0 1 2.582 0l7 5.999A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"></path></svg></button><div class="mt-auto flex flex-col items-center gap-1"><button type="button" title="Settings" aria-label="Settings" class="inline-flex size-9 shrink-0 items-center justify-center rounded-md transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&amp;_svg]:size-5 text-muted-foreground hover:bg-accent hover:text-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-house"><path d="M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8"></path><path d="M3 10a2 2 0 0 1 .709-1.528l7-5.999a2 2 0 0 1 2.582 0l7 5.999A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"></path></svg></button></div></nav>'
6068
+ html: '<nav class="flex h-full w-[69px] shrink-0 flex-col items-center gap-4 border-r border-border bg-background p-4"><button type="button" title="Home" aria-label="Home" aria-current="page" class="inline-flex size-9 shrink-0 items-center justify-center rounded-md transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&_svg]:size-5 bg-accent text-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-house"><path d="M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8"></path><path d="M3 10a2 2 0 0 1 .709-1.528l7-5.999a2 2 0 0 1 2.582 0l7 5.999A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"></path></svg></button><div role="separator" class="h-px w-9 shrink-0 bg-border"></div><button type="button" title="More" aria-label="More" class="inline-flex size-9 shrink-0 items-center justify-center rounded-md transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&_svg]:size-5 text-muted-foreground hover:bg-accent hover:text-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-house"><path d="M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8"></path><path d="M3 10a2 2 0 0 1 .709-1.528l7-5.999a2 2 0 0 1 2.582 0l7 5.999A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"></path></svg></button><div class="mt-auto flex flex-col items-center gap-1"><button type="button" title="Settings" aria-label="Settings" class="inline-flex size-9 shrink-0 items-center justify-center rounded-md transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&_svg]:size-5 text-muted-foreground hover:bg-accent hover:text-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-house"><path d="M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8"></path><path d="M3 10a2 2 0 0 1 .709-1.528l7-5.999a2 2 0 0 1 2.582 0l7 5.999A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"></path></svg></button></div></nav>'
6064
6069
  },
6065
6070
  streamingtext: {
6066
6071
  name: "StreamingText",
@@ -6096,7 +6101,7 @@ var html_snippets_default = {
6096
6101
  },
6097
6102
  linkbutton: {
6098
6103
  name: "LinkButton",
6099
- html: '<a href="#" class="inline-flex items-center justify-center gap-2 rounded-lg text-sm font-semibold text-foreground underline decoration-from-font underline-offset-2 transition-opacity hover:opacity-70 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&amp;_svg]:size-4">Learn more</a>'
6104
+ html: '<a href="#" class="inline-flex items-center justify-center gap-2 rounded-lg text-sm font-semibold text-foreground underline decoration-from-font underline-offset-2 transition-opacity hover:opacity-70 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&_svg]:size-4">Learn more</a>'
6100
6105
  },
6101
6106
  checkbox: {
6102
6107
  name: "Checkbox",
@@ -6104,19 +6109,19 @@ var html_snippets_default = {
6104
6109
  },
6105
6110
  tabs: {
6106
6111
  name: "Tabs",
6107
- html: '<div data-orientation="horizontal" class="flex flex-col gap-3"><div role="tablist" aria-orientation="horizontal" class="gap-1 rounded-lg bg-muted p-1 text-muted-foreground inline-flex items-center"><button type="button" role="tab" id=":R0:-trigger-a" aria-selected="true" aria-controls=":R0:-content-a" tabindex="0" class="inline-flex items-center justify-center gap-2 rounded-md px-3 py-1.5 text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&amp;_svg]:size-4 bg-background text-foreground shadow-sm">A</button><button type="button" role="tab" id=":R0:-trigger-b" aria-selected="false" aria-controls=":R0:-content-b" tabindex="-1" class="inline-flex items-center justify-center gap-2 rounded-md px-3 py-1.5 text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&amp;_svg]:size-4 hover:text-foreground">B</button></div><div role="tabpanel" id=":R0:-content-a" aria-labelledby=":R0:-trigger-a" tabindex="0" class="focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring">Panel A</div></div>'
6112
+ html: '<div data-orientation="horizontal" class="flex flex-col gap-3"><div role="tablist" aria-orientation="horizontal" class="gap-1 rounded-lg bg-muted p-1 text-muted-foreground inline-flex items-center"><button type="button" role="tab" id=":R0:-trigger-a" aria-selected="true" aria-controls=":R0:-content-a" tabindex="0" class="inline-flex items-center justify-center gap-2 rounded-md px-3 py-1.5 text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:size-4 bg-background text-foreground shadow-sm">A</button><button type="button" role="tab" id=":R0:-trigger-b" aria-selected="false" aria-controls=":R0:-content-b" tabindex="-1" class="inline-flex items-center justify-center gap-2 rounded-md px-3 py-1.5 text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:size-4 hover:text-foreground">B</button></div><div role="tabpanel" id=":R0:-content-a" aria-labelledby=":R0:-trigger-a" tabindex="0" class="focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring">Panel A</div></div>'
6108
6113
  },
6109
6114
  menu: {
6110
6115
  name: "Menu",
6111
- html: '<div role="menu" class="min-w-[12rem] rounded-lg border border-border bg-background p-1 text-foreground shadow-md"><button type="button" role="menuitem" class="flex w-full items-center gap-2 rounded-md px-2 py-1.5 text-left text-sm transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&amp;_svg]:size-4 text-foreground hover:bg-accent"><span class="flex-1 truncate">Try again</span></button><div role="separator" class="-mx-1 my-1 h-px bg-border"></div><button type="button" role="menuitem" class="flex w-full items-center gap-2 rounded-md px-2 py-1.5 text-left text-sm transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&amp;_svg]:size-4 text-foreground hover:bg-accent"><span class="flex-1 truncate">Delete</span></button></div>'
6116
+ html: '<div role="menu" class="min-w-[12rem] rounded-lg border border-border bg-background p-1 text-foreground shadow-md"><button type="button" role="menuitem" class="flex w-full items-center gap-2 rounded-md px-2 py-1.5 text-left text-sm transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:size-4 text-foreground hover:bg-accent"><span class="flex-1 truncate">Try again</span></button><div role="separator" class="-mx-1 my-1 h-px bg-border"></div><button type="button" role="menuitem" class="flex w-full items-center gap-2 rounded-md px-2 py-1.5 text-left text-sm transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:size-4 text-foreground hover:bg-accent"><span class="flex-1 truncate">Delete</span></button></div>'
6112
6117
  },
6113
6118
  suggestions: {
6114
6119
  name: "Suggestions",
6115
- html: '<div class="flex flex-wrap gap-2"><button type="button" class="inline-flex min-h-9 items-center justify-center gap-2 rounded-lg bg-muted px-4 py-1.5 text-sm font-semibold text-foreground transition-colors hover:bg-accent focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&amp;_svg]:size-4">Highlights</button><button type="button" class="inline-flex min-h-9 items-center justify-center gap-2 rounded-lg bg-muted px-4 py-1.5 text-sm font-semibold text-foreground transition-colors hover:bg-accent focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&amp;_svg]:size-4">Action items</button></div>'
6120
+ html: '<div class="flex flex-wrap gap-2"><button type="button" class="inline-flex min-h-9 items-center justify-center gap-2 rounded-lg bg-muted px-4 py-1.5 text-sm font-semibold text-foreground transition-colors hover:bg-accent focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&_svg]:size-4">Highlights</button><button type="button" class="inline-flex min-h-9 items-center justify-center gap-2 rounded-lg bg-muted px-4 py-1.5 text-sm font-semibold text-foreground transition-colors hover:bg-accent focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&_svg]:size-4">Action items</button></div>'
6116
6121
  },
6117
6122
  suggestionchip: {
6118
6123
  name: "SuggestionChip",
6119
- html: '<button type="button" class="inline-flex min-h-9 items-center justify-center gap-2 rounded-lg bg-muted px-4 py-1.5 text-sm font-semibold text-foreground transition-colors hover:bg-accent focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&amp;_svg]:size-4">Show highlights</button>'
6124
+ html: '<button type="button" class="inline-flex min-h-9 items-center justify-center gap-2 rounded-lg bg-muted px-4 py-1.5 text-sm font-semibold text-foreground transition-colors hover:bg-accent focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring [&_svg]:size-4">Show highlights</button>'
6120
6125
  },
6121
6126
  richcheckboxgroup: {
6122
6127
  name: "RichCheckboxGroup",
@@ -6132,7 +6137,7 @@ var html_snippets_default = {
6132
6137
  },
6133
6138
  table: {
6134
6139
  name: "Table",
6135
- html: '<div class="relative w-full overflow-x-auto"><table class="w-full caption-bottom text-sm"><thead class="[&amp;_tr]:border-b [&amp;_tr]:border-border"><tr class="border-b border-border transition-colors hover:bg-muted/50"><th scope="col" class="h-10 px-4 text-left align-middle text-xs font-medium text-muted-foreground">Name</th><th scope="col" class="h-10 px-4 text-left align-middle text-xs font-medium text-muted-foreground">Status</th></tr></thead><tbody class="[&amp;_tr:last-child]:border-0"><tr class="border-b border-border transition-colors hover:bg-muted/50"><td class="px-4 py-2.5 align-middle text-foreground">Sync</td><td class="px-4 py-2.5 align-middle text-foreground">Done</td></tr></tbody></table></div>'
6140
+ html: '<div class="relative w-full overflow-x-auto"><table class="w-full caption-bottom text-sm"><thead class="[&_tr]:border-b [&_tr]:border-border"><tr class="border-b border-border transition-colors hover:bg-muted/50"><th scope="col" class="h-10 px-4 text-left align-middle text-xs font-medium text-muted-foreground">Name</th><th scope="col" class="h-10 px-4 text-left align-middle text-xs font-medium text-muted-foreground">Status</th></tr></thead><tbody class="[&_tr:last-child]:border-0"><tr class="border-b border-border transition-colors hover:bg-muted/50"><td class="px-4 py-2.5 align-middle text-foreground">Sync</td><td class="px-4 py-2.5 align-middle text-foreground">Done</td></tr></tbody></table></div>'
6136
6141
  },
6137
6142
  dialog: {
6138
6143
  name: "Dialog",
@@ -6156,7 +6161,7 @@ var html_snippets_default = {
6156
6161
  },
6157
6162
  breadcrumb: {
6158
6163
  name: "Breadcrumb",
6159
- html: '<nav aria-label="Breadcrumb"><ol class="flex flex-wrap items-center gap-1.5 text-sm text-muted-foreground"><li class="inline-flex items-center gap-1.5"><a class="transition-colors hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring" href="#">Home</a></li><li role="presentation" aria-hidden="true" class="[&amp;_svg]:size-3.5"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-right"><path d="m9 18 6-6-6-6"></path></svg></li><li class="inline-flex items-center gap-1.5"><span role="link" aria-disabled="true" aria-current="page" class="font-medium text-foreground">Details</span></li></ol></nav>'
6164
+ html: '<nav aria-label="Breadcrumb"><ol class="flex flex-wrap items-center gap-1.5 text-sm text-muted-foreground"><li class="inline-flex items-center gap-1.5"><a class="transition-colors hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring" href="#">Home</a></li><li role="presentation" aria-hidden="true" class="[&_svg]:size-3.5"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-right"><path d="m9 18 6-6-6-6"></path></svg></li><li class="inline-flex items-center gap-1.5"><span role="link" aria-disabled="true" aria-current="page" class="font-medium text-foreground">Details</span></li></ol></nav>'
6160
6165
  },
6161
6166
  accordion: {
6162
6167
  name: "Accordion",
@@ -6236,7 +6241,7 @@ var html_snippets_default = {
6236
6241
  },
6237
6242
  scrollarea: {
6238
6243
  name: "ScrollArea",
6239
- html: '<div class="relative overflow-hidden h-24 w-40"><div class="h-full w-full rounded-[inherit] [scrollbar-width:thin] [scrollbar-color:hsl(var(--nx-border))_transparent] [&amp;::-webkit-scrollbar]:h-2 [&amp;::-webkit-scrollbar]:w-2 [&amp;::-webkit-scrollbar-thumb]:rounded-full [&amp;::-webkit-scrollbar-thumb]:bg-border [&amp;::-webkit-scrollbar-track]:bg-transparent overflow-y-auto overflow-x-hidden"><div class="text-sm">Scrollable content</div></div></div>'
6244
+ html: '<div class="relative overflow-hidden h-24 w-40"><div class="h-full w-full rounded-[inherit] [scrollbar-width:thin] [scrollbar-color:hsl(var(--nx-border))_transparent] [&::-webkit-scrollbar]:h-2 [&::-webkit-scrollbar]:w-2 [&::-webkit-scrollbar-thumb]:rounded-full [&::-webkit-scrollbar-thumb]:bg-border [&::-webkit-scrollbar-track]:bg-transparent overflow-y-auto overflow-x-hidden"><div class="text-sm">Scrollable content</div></div></div>'
6240
6245
  },
6241
6246
  pagination: {
6242
6247
  name: "Pagination",
@@ -6276,7 +6281,7 @@ var html_snippets_default = {
6276
6281
  },
6277
6282
  calendar: {
6278
6283
  name: "Calendar",
6279
- html: '<div class="rdp p-3"><div class="flex flex-col sm:flex-row gap-4"><div class="flex flex-col gap-4 rdp-caption_start rdp-caption_end"><div class="flex justify-center pt-1 relative items-center"><div class="text-sm font-medium text-foreground" aria-live="polite" role="presentation">September 2026</div><div class="flex items-center gap-1"><button name="previous-month" aria-label="Go to previous month" class="rdp-button_reset rdp-button inline-flex h-7 w-7 items-center justify-center rounded-md border border-input bg-transparent p-0 text-foreground opacity-70 transition-opacity hover:opacity-100 disabled:pointer-events-none disabled:opacity-30 absolute left-1" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-left h-4 w-4"><path d="m15 18-6-6 6-6"></path></svg></button><button name="next-month" aria-label="Go to next month" class="rdp-button_reset rdp-button inline-flex h-7 w-7 items-center justify-center rounded-md border border-input bg-transparent p-0 text-foreground opacity-70 transition-opacity hover:opacity-100 disabled:pointer-events-none disabled:opacity-30 absolute right-1" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-right h-4 w-4"><path d="m9 18 6-6-6-6"></path></svg></button></div></div><table class="w-full border-collapse space-y-1" role="grid"><thead class="rdp-head"><tr class="flex"><th scope="col" class="w-9 rounded-md text-[0.8rem] font-normal text-muted-foreground" aria-label="Sunday">Su</th><th scope="col" class="w-9 rounded-md text-[0.8rem] font-normal text-muted-foreground" aria-label="Monday">Mo</th><th scope="col" class="w-9 rounded-md text-[0.8rem] font-normal text-muted-foreground" aria-label="Tuesday">Tu</th><th scope="col" class="w-9 rounded-md text-[0.8rem] font-normal text-muted-foreground" aria-label="Wednesday">We</th><th scope="col" class="w-9 rounded-md text-[0.8rem] font-normal text-muted-foreground" aria-label="Thursday">Th</th><th scope="col" class="w-9 rounded-md text-[0.8rem] font-normal text-muted-foreground" aria-label="Friday">Fr</th><th scope="col" class="w-9 rounded-md text-[0.8rem] font-normal text-muted-foreground" aria-label="Saturday">Sa</th></tr></thead><tbody class="rdp-tbody"><tr class="flex w-full mt-2"><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100 text-muted-foreground opacity-50" role="gridcell" tabindex="-1" type="button">30</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100 text-muted-foreground opacity-50" role="gridcell" tabindex="-1" type="button">31</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">1</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">2</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">3</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">4</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">5</button></td></tr><tr class="flex w-full mt-2"><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">6</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">7</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">8</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">9</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">10</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">11</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">12</button></td></tr><tr class="flex w-full mt-2"><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">13</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">14</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">15</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">16</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">17</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">18</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">19</button></td></tr><tr class="flex w-full mt-2"><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">20</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">21</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">22</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">23</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">24</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">25</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">26</button></td></tr><tr class="flex w-full mt-2"><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">27</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">28</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100 bg-accent text-accent-foreground" role="gridcell" tabindex="0" type="button">29</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">30</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100 text-muted-foreground opacity-50" role="gridcell" tabindex="-1" type="button">1</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100 text-muted-foreground opacity-50" role="gridcell" tabindex="-1" type="button">2</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100 text-muted-foreground opacity-50" role="gridcell" tabindex="-1" type="button">3</button></td></tr></tbody></table></div></div></div>'
6284
+ html: '<div class="rdp p-3"><div class="flex flex-col sm:flex-row gap-4"><div class="flex flex-col gap-4 rdp-caption_start rdp-caption_end"><div class="flex justify-center pt-1 relative items-center"><div class="text-sm font-medium text-foreground" aria-live="polite" role="presentation">September 2026</div><div class="flex items-center gap-1"><button name="previous-month" aria-label="Go to previous month" class="rdp-button_reset rdp-button inline-flex h-7 w-7 items-center justify-center rounded-md border border-input bg-transparent p-0 text-foreground opacity-70 transition-opacity hover:opacity-100 disabled:pointer-events-none disabled:opacity-30 absolute left-1" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-left h-4 w-4"><path d="m15 18-6-6 6-6"></path></svg></button><button name="next-month" aria-label="Go to next month" class="rdp-button_reset rdp-button inline-flex h-7 w-7 items-center justify-center rounded-md border border-input bg-transparent p-0 text-foreground opacity-70 transition-opacity hover:opacity-100 disabled:pointer-events-none disabled:opacity-30 absolute right-1" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-right h-4 w-4"><path d="m9 18 6-6-6-6"></path></svg></button></div></div><table class="w-full border-collapse space-y-1" role="grid"><thead class="rdp-head"><tr class="flex"><th scope="col" class="w-9 rounded-md text-[0.8rem] font-normal text-muted-foreground" aria-label="Sunday">Su</th><th scope="col" class="w-9 rounded-md text-[0.8rem] font-normal text-muted-foreground" aria-label="Monday">Mo</th><th scope="col" class="w-9 rounded-md text-[0.8rem] font-normal text-muted-foreground" aria-label="Tuesday">Tu</th><th scope="col" class="w-9 rounded-md text-[0.8rem] font-normal text-muted-foreground" aria-label="Wednesday">We</th><th scope="col" class="w-9 rounded-md text-[0.8rem] font-normal text-muted-foreground" aria-label="Thursday">Th</th><th scope="col" class="w-9 rounded-md text-[0.8rem] font-normal text-muted-foreground" aria-label="Friday">Fr</th><th scope="col" class="w-9 rounded-md text-[0.8rem] font-normal text-muted-foreground" aria-label="Saturday">Sa</th></tr></thead><tbody class="rdp-tbody"><tr class="flex w-full mt-2"><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100 text-muted-foreground opacity-50" role="gridcell" tabindex="-1" type="button">30</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100 text-muted-foreground opacity-50" role="gridcell" tabindex="-1" type="button">31</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">1</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">2</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">3</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">4</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">5</button></td></tr><tr class="flex w-full mt-2"><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">6</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">7</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">8</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">9</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">10</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">11</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">12</button></td></tr><tr class="flex w-full mt-2"><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">13</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">14</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">15</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">16</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">17</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">18</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">19</button></td></tr><tr class="flex w-full mt-2"><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">20</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">21</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">22</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">23</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">24</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">25</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">26</button></td></tr><tr class="flex w-full mt-2"><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">27</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">28</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100" role="gridcell" tabindex="-1" type="button">29</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100 bg-accent text-accent-foreground" role="gridcell" tabindex="0" type="button">30</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100 text-muted-foreground opacity-50" role="gridcell" tabindex="-1" type="button">1</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100 text-muted-foreground opacity-50" role="gridcell" tabindex="-1" type="button">2</button></td><td class="relative p-0 text-center text-sm focus-within:relative focus-within:z-20" role="presentation"><button name="day" class="rdp-button_reset rdp-button inline-flex h-9 w-9 items-center justify-center rounded-md p-0 text-sm font-normal text-foreground transition-colors hover:bg-accent hover:text-accent-foreground aria-selected:opacity-100 text-muted-foreground opacity-50" role="gridcell" tabindex="-1" type="button">3</button></td></tr></tbody></table></div></div></div>'
6280
6285
  },
6281
6286
  datepicker: {
6282
6287
  name: "DatePicker",
@@ -6288,11 +6293,11 @@ var html_snippets_default = {
6288
6293
  },
6289
6294
  chart: {
6290
6295
  name: "Chart",
6291
- html: '<div data-chart="" class="flex aspect-video justify-center text-xs [&amp;_.recharts-cartesian-grid_line]:stroke-border/50 [&amp;_.recharts-text]:fill-muted-foreground w-64" style="--color-desktop:hsl(var(--nx-info))"><div class="recharts-responsive-container" style="width:100%;height:100%;min-width:0"></div></div>'
6296
+ html: '<div data-chart="" class="flex aspect-video justify-center text-xs [&_.recharts-cartesian-grid_line]:stroke-border/50 [&_.recharts-text]:fill-muted-foreground w-64" style="--color-desktop:hsl(var(--nx-info))"><div class="recharts-responsive-container" style="width:100%;height:100%;min-width:0"></div></div>'
6292
6297
  },
6293
6298
  datatable: {
6294
6299
  name: "DataTable",
6295
- html: '<div class="w-full"><div class="overflow-hidden rounded-md border border-border"><table class="w-full caption-bottom text-sm"><thead class="[&amp;_tr]:border-b [&amp;_tr]:border-border"><tr class="bg-muted/40"><th class="h-10 px-3 text-left align-middle font-medium text-muted-foreground"><button type="button" class="inline-flex items-center gap-1 rounded-sm hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring">Invoice<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevrons-up-down h-3.5 w-3.5 opacity-50"><path d="m7 15 5 5 5-5"></path><path d="m7 9 5-5 5 5"></path></svg></button></th><th class="h-10 px-3 text-left align-middle font-medium text-muted-foreground"><button type="button" class="inline-flex items-center gap-1 rounded-sm hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring">Amount<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevrons-up-down h-3.5 w-3.5 opacity-50"><path d="m7 15 5 5 5-5"></path><path d="m7 9 5-5 5 5"></path></svg></button></th></tr></thead><tbody><tr class="border-b border-border transition-colors hover:bg-muted/40"><td class="p-3 align-middle text-foreground">INV-001</td><td class="p-3 align-middle text-foreground">250</td></tr><tr class="border-b border-border transition-colors hover:bg-muted/40"><td class="p-3 align-middle text-foreground">INV-002</td><td class="p-3 align-middle text-foreground">150</td></tr></tbody></table></div></div>'
6300
+ html: '<div class="w-full"><div class="overflow-hidden rounded-md border border-border"><table class="w-full caption-bottom text-sm"><thead class="[&_tr]:border-b [&_tr]:border-border"><tr class="bg-muted/40"><th class="h-10 px-3 text-left align-middle font-medium text-muted-foreground"><button type="button" class="inline-flex items-center gap-1 rounded-sm hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring">Invoice<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevrons-up-down h-3.5 w-3.5 opacity-50"><path d="m7 15 5 5 5-5"></path><path d="m7 9 5-5 5 5"></path></svg></button></th><th class="h-10 px-3 text-left align-middle font-medium text-muted-foreground"><button type="button" class="inline-flex items-center gap-1 rounded-sm hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring">Amount<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevrons-up-down h-3.5 w-3.5 opacity-50"><path d="m7 15 5 5 5-5"></path><path d="m7 9 5-5 5 5"></path></svg></button></th></tr></thead><tbody><tr class="border-b border-border transition-colors hover:bg-muted/40"><td class="p-3 align-middle text-foreground">INV-001</td><td class="p-3 align-middle text-foreground">250</td></tr><tr class="border-b border-border transition-colors hover:bg-muted/40"><td class="p-3 align-middle text-foreground">INV-002</td><td class="p-3 align-middle text-foreground">150</td></tr></tbody></table></div></div>'
6296
6301
  },
6297
6302
  form: {
6298
6303
  name: "Form",
@@ -6300,15 +6305,15 @@ var html_snippets_default = {
6300
6305
  },
6301
6306
  md3button: {
6302
6307
  name: "Md3Button",
6303
- html: '<button type="button" class="relative inline-flex h-10 items-center justify-center gap-2 overflow-hidden rounded-full text-sm font-medium transition-shadow px-6 [&amp;_svg]:size-[18px] before:absolute before:inset-0 before:bg-current before:opacity-0 before:transition-opacity before:content-[&#x27;&#x27;] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12] active:before:opacity-[0.12] outline-none focus-visible:ring-2 focus-visible:ring-md-primary focus-visible:ring-offset-2 focus-visible:ring-offset-md-surface disabled:pointer-events-none disabled:opacity-[0.38] disabled:shadow-none bg-md-primary text-md-on-primary hover:shadow-md-1"><span class="relative">Save</span></button>'
6308
+ html: `<button type="button" class="relative inline-flex h-10 items-center justify-center gap-2 overflow-hidden rounded-full text-sm font-medium transition-shadow px-6 [&_svg]:size-[18px] before:absolute before:inset-0 before:bg-current before:opacity-0 before:transition-opacity before:content-[''] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12] active:before:opacity-[0.12] outline-none focus-visible:ring-2 focus-visible:ring-md-primary focus-visible:ring-offset-2 focus-visible:ring-offset-md-surface disabled:pointer-events-none disabled:opacity-[0.38] disabled:shadow-none bg-md-primary text-md-on-primary hover:shadow-md-1"><span class="relative">Save</span></button>`
6304
6309
  },
6305
6310
  md3iconbutton: {
6306
6311
  name: "Md3IconButton",
6307
- html: '<button type="button" class="relative inline-flex h-10 w-10 items-center justify-center overflow-hidden rounded-full transition-colors [&amp;_svg]:size-6 before:absolute before:inset-0 before:bg-current before:opacity-0 before:transition-opacity before:content-[&#x27;&#x27;] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12] active:before:opacity-[0.12] outline-none focus-visible:ring-2 focus-visible:ring-md-primary focus-visible:ring-offset-2 focus-visible:ring-offset-md-surface disabled:pointer-events-none disabled:opacity-[0.38] bg-transparent text-md-on-surface-variant" aria-label="Favorite"><span class="relative"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-house"><path d="M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8"></path><path d="M3 10a2 2 0 0 1 .709-1.528l7-5.999a2 2 0 0 1 2.582 0l7 5.999A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"></path></svg></span></button>'
6312
+ html: `<button type="button" class="relative inline-flex h-10 w-10 items-center justify-center overflow-hidden rounded-full transition-colors [&_svg]:size-6 before:absolute before:inset-0 before:bg-current before:opacity-0 before:transition-opacity before:content-[''] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12] active:before:opacity-[0.12] outline-none focus-visible:ring-2 focus-visible:ring-md-primary focus-visible:ring-offset-2 focus-visible:ring-offset-md-surface disabled:pointer-events-none disabled:opacity-[0.38] bg-transparent text-md-on-surface-variant" aria-label="Favorite"><span class="relative"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-house"><path d="M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8"></path><path d="M3 10a2 2 0 0 1 .709-1.528l7-5.999a2 2 0 0 1 2.582 0l7 5.999A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"></path></svg></span></button>`
6308
6313
  },
6309
6314
  md3fab: {
6310
6315
  name: "Md3Fab",
6311
- html: '<button type="button" class="relative inline-flex items-center justify-center overflow-hidden shadow-md-3 transition-shadow hover:shadow-md-4 before:absolute before:inset-0 before:bg-current before:opacity-0 before:transition-opacity before:content-[&#x27;&#x27;] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12] active:before:opacity-[0.12] outline-none focus-visible:ring-2 focus-visible:ring-md-primary focus-visible:ring-offset-2 focus-visible:ring-offset-md-surface disabled:pointer-events-none disabled:opacity-[0.38] disabled:shadow-none bg-md-primary-container text-md-on-primary-container h-14 w-14 rounded-md-lg [&amp;_svg]:size-6" aria-label="Add"><span class="relative shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-house"><path d="M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8"></path><path d="M3 10a2 2 0 0 1 .709-1.528l7-5.999a2 2 0 0 1 2.582 0l7 5.999A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"></path></svg></span></button>'
6316
+ html: `<button type="button" class="relative inline-flex items-center justify-center overflow-hidden shadow-md-3 transition-shadow hover:shadow-md-4 before:absolute before:inset-0 before:bg-current before:opacity-0 before:transition-opacity before:content-[''] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12] active:before:opacity-[0.12] outline-none focus-visible:ring-2 focus-visible:ring-md-primary focus-visible:ring-offset-2 focus-visible:ring-offset-md-surface disabled:pointer-events-none disabled:opacity-[0.38] disabled:shadow-none bg-md-primary-container text-md-on-primary-container h-14 w-14 rounded-md-lg [&_svg]:size-6" aria-label="Add"><span class="relative shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-house"><path d="M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8"></path><path d="M3 10a2 2 0 0 1 .709-1.528l7-5.999a2 2 0 0 1 2.582 0l7 5.999A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"></path></svg></span></button>`
6312
6317
  },
6313
6318
  md3textfield: {
6314
6319
  name: "Md3TextField",
@@ -6320,7 +6325,7 @@ var html_snippets_default = {
6320
6325
  },
6321
6326
  md3chip: {
6322
6327
  name: "Md3Chip",
6323
- html: '<div class="flex gap-2"><button type="button" class="relative inline-flex h-8 items-center gap-1.5 overflow-hidden rounded-md-sm px-3 text-sm font-medium transition-colors [&amp;_svg]:size-[18px] border border-md-outline bg-transparent text-md-on-surface-variant outline-none focus-visible:ring-2 focus-visible:ring-md-primary disabled:pointer-events-none disabled:opacity-[0.38] before:absolute before:inset-0 before:bg-current before:opacity-0 before:transition-opacity before:content-[&#x27;&#x27;] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12] active:before:opacity-[0.12]"><span class="relative">Assist</span></button><button type="button" aria-pressed="true" class="relative inline-flex h-8 items-center gap-1.5 overflow-hidden rounded-md-sm px-3 text-sm font-medium transition-colors [&amp;_svg]:size-[18px] border border-transparent bg-md-secondary-container text-md-on-secondary-container outline-none focus-visible:ring-2 focus-visible:ring-md-primary disabled:pointer-events-none disabled:opacity-[0.38] before:absolute before:inset-0 before:bg-current before:opacity-0 before:transition-opacity before:content-[&#x27;&#x27;] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12] active:before:opacity-[0.12]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-check relative shrink-0" aria-hidden="true"><path d="M20 6 9 17l-5-5"></path></svg><span class="relative">Filter</span></button><span class="relative inline-flex h-8 items-center gap-1.5 overflow-hidden rounded-md-sm px-3 text-sm font-medium transition-colors [&amp;_svg]:size-[18px] border border-md-outline bg-transparent text-md-on-surface-variant outline-none focus-visible:ring-2 focus-visible:ring-md-primary disabled:pointer-events-none disabled:opacity-[0.38] pr-1"><span class="relative">Input</span><button type="button" aria-label="Remove" class="relative z-10 ml-0.5 inline-flex h-5 w-5 items-center justify-center rounded-full text-current hover:bg-current/10 [&amp;_svg]:size-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-x" aria-hidden="true"><path d="M18 6 6 18"></path><path d="m6 6 12 12"></path></svg></button></span></div>'
6328
+ html: `<div class="flex gap-2"><button type="button" class="relative inline-flex h-8 items-center gap-1.5 overflow-hidden rounded-md-sm px-3 text-sm font-medium transition-colors [&_svg]:size-[18px] border border-md-outline bg-transparent text-md-on-surface-variant outline-none focus-visible:ring-2 focus-visible:ring-md-primary disabled:pointer-events-none disabled:opacity-[0.38] before:absolute before:inset-0 before:bg-current before:opacity-0 before:transition-opacity before:content-[''] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12] active:before:opacity-[0.12]"><span class="relative">Assist</span></button><button type="button" aria-pressed="true" class="relative inline-flex h-8 items-center gap-1.5 overflow-hidden rounded-md-sm px-3 text-sm font-medium transition-colors [&_svg]:size-[18px] border border-transparent bg-md-secondary-container text-md-on-secondary-container outline-none focus-visible:ring-2 focus-visible:ring-md-primary disabled:pointer-events-none disabled:opacity-[0.38] before:absolute before:inset-0 before:bg-current before:opacity-0 before:transition-opacity before:content-[''] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12] active:before:opacity-[0.12]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-check relative shrink-0" aria-hidden="true"><path d="M20 6 9 17l-5-5"></path></svg><span class="relative">Filter</span></button><span class="relative inline-flex h-8 items-center gap-1.5 overflow-hidden rounded-md-sm px-3 text-sm font-medium transition-colors [&_svg]:size-[18px] border border-md-outline bg-transparent text-md-on-surface-variant outline-none focus-visible:ring-2 focus-visible:ring-md-primary disabled:pointer-events-none disabled:opacity-[0.38] pr-1"><span class="relative">Input</span><button type="button" aria-label="Remove" class="relative z-10 ml-0.5 inline-flex h-5 w-5 items-center justify-center rounded-full text-current hover:bg-current/10 [&_svg]:size-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-x" aria-hidden="true"><path d="M18 6 6 18"></path><path d="m6 6 12 12"></path></svg></button></span></div>`
6324
6329
  },
6325
6330
  md3switch: {
6326
6331
  name: "Md3Switch",
@@ -6328,11 +6333,11 @@ var html_snippets_default = {
6328
6333
  },
6329
6334
  md3checkbox: {
6330
6335
  name: "Md3Checkbox",
6331
- html: '<button type="button" role="checkbox" aria-checked="true" class="relative inline-flex h-10 w-10 items-center justify-center rounded-full outline-none before:absolute before:inset-0 before:rounded-full before:bg-md-on-surface before:opacity-0 before:transition-opacity before:content-[&#x27;&#x27;] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12] active:before:opacity-[0.12] focus-visible:ring-2 focus-visible:ring-md-primary disabled:pointer-events-none disabled:opacity-[0.38]" aria-label="Accept"><span class="relative flex h-[18px] w-[18px] items-center justify-center rounded-[2px] border-2 transition-colors [&amp;_svg]:size-[14px] border-md-primary bg-md-primary text-md-on-primary"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-check" aria-hidden="true"><path d="M20 6 9 17l-5-5"></path></svg></span></button>'
6336
+ html: `<button type="button" role="checkbox" aria-checked="true" class="relative inline-flex h-10 w-10 items-center justify-center rounded-full outline-none before:absolute before:inset-0 before:rounded-full before:bg-md-on-surface before:opacity-0 before:transition-opacity before:content-[''] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12] active:before:opacity-[0.12] focus-visible:ring-2 focus-visible:ring-md-primary disabled:pointer-events-none disabled:opacity-[0.38]" aria-label="Accept"><span class="relative flex h-[18px] w-[18px] items-center justify-center rounded-[2px] border-2 transition-colors [&_svg]:size-[14px] border-md-primary bg-md-primary text-md-on-primary"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-check" aria-hidden="true"><path d="M20 6 9 17l-5-5"></path></svg></span></button>`
6332
6337
  },
6333
6338
  md3radio: {
6334
6339
  name: "Md3Radio",
6335
- html: '<div role="radiogroup" aria-label="Choice" class="flex flex-col gap-1"><button type="button" role="radio" aria-checked="true" class="relative inline-flex h-10 w-10 items-center justify-center rounded-full outline-none before:absolute before:inset-0 before:rounded-full before:bg-md-on-surface before:opacity-0 before:transition-opacity before:content-[&#x27;&#x27;] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12] active:before:opacity-[0.12] focus-visible:ring-2 focus-visible:ring-md-primary disabled:pointer-events-none disabled:opacity-[0.38]" aria-label="A"><span class="relative flex h-5 w-5 items-center justify-center rounded-full border-2 transition-colors border-md-primary"><span class="h-2.5 w-2.5 rounded-full bg-md-primary"></span></span></button><button type="button" role="radio" aria-checked="false" class="relative inline-flex h-10 w-10 items-center justify-center rounded-full outline-none before:absolute before:inset-0 before:rounded-full before:bg-md-on-surface before:opacity-0 before:transition-opacity before:content-[&#x27;&#x27;] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12] active:before:opacity-[0.12] focus-visible:ring-2 focus-visible:ring-md-primary disabled:pointer-events-none disabled:opacity-[0.38]" aria-label="B"><span class="relative flex h-5 w-5 items-center justify-center rounded-full border-2 transition-colors border-md-on-surface-variant"></span></button></div>'
6340
+ html: `<div role="radiogroup" aria-label="Choice" class="flex flex-col gap-1"><button type="button" role="radio" aria-checked="true" class="relative inline-flex h-10 w-10 items-center justify-center rounded-full outline-none before:absolute before:inset-0 before:rounded-full before:bg-md-on-surface before:opacity-0 before:transition-opacity before:content-[''] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12] active:before:opacity-[0.12] focus-visible:ring-2 focus-visible:ring-md-primary disabled:pointer-events-none disabled:opacity-[0.38]" aria-label="A"><span class="relative flex h-5 w-5 items-center justify-center rounded-full border-2 transition-colors border-md-primary"><span class="h-2.5 w-2.5 rounded-full bg-md-primary"></span></span></button><button type="button" role="radio" aria-checked="false" class="relative inline-flex h-10 w-10 items-center justify-center rounded-full outline-none before:absolute before:inset-0 before:rounded-full before:bg-md-on-surface before:opacity-0 before:transition-opacity before:content-[''] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12] active:before:opacity-[0.12] focus-visible:ring-2 focus-visible:ring-md-primary disabled:pointer-events-none disabled:opacity-[0.38]" aria-label="B"><span class="relative flex h-5 w-5 items-center justify-center rounded-full border-2 transition-colors border-md-on-surface-variant"></span></button></div>`
6336
6341
  },
6337
6342
  md3slider: {
6338
6343
  name: "Md3Slider",
@@ -6340,19 +6345,19 @@ var html_snippets_default = {
6340
6345
  },
6341
6346
  md3tabs: {
6342
6347
  name: "Md3Tabs",
6343
- html: '<div><div role="tablist" class="flex border-b border-md-surface-variant bg-md-surface"><button type="button" role="tab" aria-selected="true" class="relative inline-flex h-12 flex-1 items-center justify-center gap-2 overflow-hidden px-4 text-sm font-medium transition-colors [&amp;_svg]:size-5 before:absolute before:inset-0 before:bg-current before:opacity-0 before:transition-opacity before:content-[&#x27;&#x27;] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12] outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-md-primary text-md-primary"><span class="relative">A</span><span aria-hidden="true" class="absolute inset-x-0 bottom-0 mx-auto h-[3px] w-3/5 rounded-t-full bg-md-primary"></span></button><button type="button" role="tab" aria-selected="false" class="relative inline-flex h-12 flex-1 items-center justify-center gap-2 overflow-hidden px-4 text-sm font-medium transition-colors [&amp;_svg]:size-5 before:absolute before:inset-0 before:bg-current before:opacity-0 before:transition-opacity before:content-[&#x27;&#x27;] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12] outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-md-primary text-md-on-surface-variant"><span class="relative">B</span></button></div><div role="tabpanel" class="p-4 text-md-on-surface">Panel A</div></div>'
6348
+ html: `<div><div role="tablist" class="flex border-b border-md-surface-variant bg-md-surface"><button type="button" role="tab" aria-selected="true" class="relative inline-flex h-12 flex-1 items-center justify-center gap-2 overflow-hidden px-4 text-sm font-medium transition-colors [&_svg]:size-5 before:absolute before:inset-0 before:bg-current before:opacity-0 before:transition-opacity before:content-[''] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12] outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-md-primary text-md-primary"><span class="relative">A</span><span aria-hidden="true" class="absolute inset-x-0 bottom-0 mx-auto h-[3px] w-3/5 rounded-t-full bg-md-primary"></span></button><button type="button" role="tab" aria-selected="false" class="relative inline-flex h-12 flex-1 items-center justify-center gap-2 overflow-hidden px-4 text-sm font-medium transition-colors [&_svg]:size-5 before:absolute before:inset-0 before:bg-current before:opacity-0 before:transition-opacity before:content-[''] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12] outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-md-primary text-md-on-surface-variant"><span class="relative">B</span></button></div><div role="tabpanel" class="p-4 text-md-on-surface">Panel A</div></div>`
6344
6349
  },
6345
6350
  md3navigationbar: {
6346
6351
  name: "Md3NavigationBar",
6347
- html: '<nav class="flex h-20 items-stretch justify-around bg-md-surface-container px-2"><button type="button" aria-current="page" class="group flex flex-1 flex-col items-center justify-center gap-1 pt-3 pb-2 outline-none"><span class="relative flex h-8 w-16 items-center justify-center overflow-hidden rounded-full transition-colors [&amp;_svg]:size-6 before:absolute before:inset-0 before:bg-md-on-surface before:opacity-0 before:transition-opacity before:content-[&#x27;&#x27;] group-hover:before:opacity-[0.08] group-focus-visible:before:opacity-[0.12] bg-md-secondary-container text-md-on-secondary-container"><span class="relative"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-house"><path d="M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8"></path><path d="M3 10a2 2 0 0 1 .709-1.528l7-5.999a2 2 0 0 1 2.582 0l7 5.999A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"></path></svg></span></span><span class="text-xs font-medium text-md-on-surface">Home</span></button><button type="button" class="group flex flex-1 flex-col items-center justify-center gap-1 pt-3 pb-2 outline-none"><span class="relative flex h-8 w-16 items-center justify-center overflow-hidden rounded-full transition-colors [&amp;_svg]:size-6 before:absolute before:inset-0 before:bg-md-on-surface before:opacity-0 before:transition-opacity before:content-[&#x27;&#x27;] group-hover:before:opacity-[0.08] group-focus-visible:before:opacity-[0.12] text-md-on-surface-variant"><span class="relative"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-mic"><path d="M12 2a3 3 0 0 0-3 3v7a3 3 0 0 0 6 0V5a3 3 0 0 0-3-3Z"></path><path d="M19 10v2a7 7 0 0 1-14 0v-2"></path><line x1="12" x2="12" y1="19" y2="22"></line></svg></span></span><span class="text-xs font-medium text-md-on-surface-variant">Search</span></button></nav>'
6352
+ html: `<nav class="flex h-20 items-stretch justify-around bg-md-surface-container px-2"><button type="button" aria-current="page" class="group flex flex-1 flex-col items-center justify-center gap-1 pt-3 pb-2 outline-none"><span class="relative flex h-8 w-16 items-center justify-center overflow-hidden rounded-full transition-colors [&_svg]:size-6 before:absolute before:inset-0 before:bg-md-on-surface before:opacity-0 before:transition-opacity before:content-[''] group-hover:before:opacity-[0.08] group-focus-visible:before:opacity-[0.12] bg-md-secondary-container text-md-on-secondary-container"><span class="relative"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-house"><path d="M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8"></path><path d="M3 10a2 2 0 0 1 .709-1.528l7-5.999a2 2 0 0 1 2.582 0l7 5.999A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"></path></svg></span></span><span class="text-xs font-medium text-md-on-surface">Home</span></button><button type="button" class="group flex flex-1 flex-col items-center justify-center gap-1 pt-3 pb-2 outline-none"><span class="relative flex h-8 w-16 items-center justify-center overflow-hidden rounded-full transition-colors [&_svg]:size-6 before:absolute before:inset-0 before:bg-md-on-surface before:opacity-0 before:transition-opacity before:content-[''] group-hover:before:opacity-[0.08] group-focus-visible:before:opacity-[0.12] text-md-on-surface-variant"><span class="relative"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-mic"><path d="M12 2a3 3 0 0 0-3 3v7a3 3 0 0 0 6 0V5a3 3 0 0 0-3-3Z"></path><path d="M19 10v2a7 7 0 0 1-14 0v-2"></path><line x1="12" x2="12" y1="19" y2="22"></line></svg></span></span><span class="text-xs font-medium text-md-on-surface-variant">Search</span></button></nav>`
6348
6353
  },
6349
6354
  md3navigationrail: {
6350
6355
  name: "Md3NavigationRail",
6351
- html: '<nav class="flex w-20 flex-col items-center gap-3 bg-md-surface py-4"><button type="button" aria-current="page" class="group flex w-full flex-col items-center gap-1 outline-none"><span class="relative flex h-8 w-14 items-center justify-center overflow-hidden rounded-full transition-colors [&amp;_svg]:size-6 before:absolute before:inset-0 before:bg-md-on-surface before:opacity-0 before:transition-opacity before:content-[&#x27;&#x27;] group-hover:before:opacity-[0.08] group-focus-visible:before:opacity-[0.12] bg-md-secondary-container text-md-on-secondary-container"><span class="relative"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-house"><path d="M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8"></path><path d="M3 10a2 2 0 0 1 .709-1.528l7-5.999a2 2 0 0 1 2.582 0l7 5.999A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"></path></svg></span></span><span class="text-xs font-medium text-md-on-surface">Home</span></button><button type="button" class="group flex w-full flex-col items-center gap-1 outline-none"><span class="relative flex h-8 w-14 items-center justify-center overflow-hidden rounded-full transition-colors [&amp;_svg]:size-6 before:absolute before:inset-0 before:bg-md-on-surface before:opacity-0 before:transition-opacity before:content-[&#x27;&#x27;] group-hover:before:opacity-[0.08] group-focus-visible:before:opacity-[0.12] text-md-on-surface-variant"><span class="relative"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-mic"><path d="M12 2a3 3 0 0 0-3 3v7a3 3 0 0 0 6 0V5a3 3 0 0 0-3-3Z"></path><path d="M19 10v2a7 7 0 0 1-14 0v-2"></path><line x1="12" x2="12" y1="19" y2="22"></line></svg></span></span><span class="text-xs font-medium text-md-on-surface-variant">Search</span></button></nav>'
6356
+ html: `<nav class="flex w-20 flex-col items-center gap-3 bg-md-surface py-4"><button type="button" aria-current="page" class="group flex w-full flex-col items-center gap-1 outline-none"><span class="relative flex h-8 w-14 items-center justify-center overflow-hidden rounded-full transition-colors [&_svg]:size-6 before:absolute before:inset-0 before:bg-md-on-surface before:opacity-0 before:transition-opacity before:content-[''] group-hover:before:opacity-[0.08] group-focus-visible:before:opacity-[0.12] bg-md-secondary-container text-md-on-secondary-container"><span class="relative"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-house"><path d="M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8"></path><path d="M3 10a2 2 0 0 1 .709-1.528l7-5.999a2 2 0 0 1 2.582 0l7 5.999A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"></path></svg></span></span><span class="text-xs font-medium text-md-on-surface">Home</span></button><button type="button" class="group flex w-full flex-col items-center gap-1 outline-none"><span class="relative flex h-8 w-14 items-center justify-center overflow-hidden rounded-full transition-colors [&_svg]:size-6 before:absolute before:inset-0 before:bg-md-on-surface before:opacity-0 before:transition-opacity before:content-[''] group-hover:before:opacity-[0.08] group-focus-visible:before:opacity-[0.12] text-md-on-surface-variant"><span class="relative"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-mic"><path d="M12 2a3 3 0 0 0-3 3v7a3 3 0 0 0 6 0V5a3 3 0 0 0-3-3Z"></path><path d="M19 10v2a7 7 0 0 1-14 0v-2"></path><line x1="12" x2="12" y1="19" y2="22"></line></svg></span></span><span class="text-xs font-medium text-md-on-surface-variant">Search</span></button></nav>`
6352
6357
  },
6353
6358
  md3menu: {
6354
6359
  name: "Md3Menu",
6355
- html: '<div role="menu" class="min-w-[12rem] rounded-md-xs bg-md-surface-container py-2 text-md-on-surface shadow-md-2"><button type="button" role="menuitem" class="relative flex h-12 w-full items-center gap-3 overflow-hidden px-3 text-left text-sm text-md-on-surface outline-none [&amp;_svg]:size-6 before:absolute before:inset-0 before:bg-md-on-surface before:opacity-0 before:transition-opacity before:content-[&#x27;&#x27;] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12] disabled:pointer-events-none disabled:opacity-[0.38]"><span class="relative flex-1 truncate">New</span></button><button type="button" role="menuitem" class="relative flex h-12 w-full items-center gap-3 overflow-hidden px-3 text-left text-sm text-md-on-surface outline-none [&amp;_svg]:size-6 before:absolute before:inset-0 before:bg-md-on-surface before:opacity-0 before:transition-opacity before:content-[&#x27;&#x27;] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12] disabled:pointer-events-none disabled:opacity-[0.38]"><span class="relative flex-1 truncate">Open</span></button></div>'
6360
+ html: `<div role="menu" class="min-w-[12rem] rounded-md-xs bg-md-surface-container py-2 text-md-on-surface shadow-md-2"><button type="button" role="menuitem" class="relative flex h-12 w-full items-center gap-3 overflow-hidden px-3 text-left text-sm text-md-on-surface outline-none [&_svg]:size-6 before:absolute before:inset-0 before:bg-md-on-surface before:opacity-0 before:transition-opacity before:content-[''] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12] disabled:pointer-events-none disabled:opacity-[0.38]"><span class="relative flex-1 truncate">New</span></button><button type="button" role="menuitem" class="relative flex h-12 w-full items-center gap-3 overflow-hidden px-3 text-left text-sm text-md-on-surface outline-none [&_svg]:size-6 before:absolute before:inset-0 before:bg-md-on-surface before:opacity-0 before:transition-opacity before:content-[''] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12] disabled:pointer-events-none disabled:opacity-[0.38]"><span class="relative flex-1 truncate">Open</span></button></div>`
6356
6361
  },
6357
6362
  md3dialog: {
6358
6363
  name: "Md3Dialog",
@@ -6360,7 +6365,7 @@ var html_snippets_default = {
6360
6365
  },
6361
6366
  md3snackbar: {
6362
6367
  name: "Md3Snackbar",
6363
- html: '<div role="status" aria-live="polite" class="flex min-h-12 items-center gap-2 rounded-md-xs bg-md-inverse-surface px-4 py-3 text-sm text-md-inverse-on-surface shadow-md-3"><span class="flex-1">Message archived</span><button type="button" class="relative -mr-2 shrink-0 overflow-hidden rounded-md-xs px-3 py-1.5 text-sm font-medium text-md-inverse-primary outline-none before:absolute before:inset-0 before:bg-current before:opacity-0 before:transition-opacity before:content-[&#x27;&#x27;] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12]"><span class="relative">Undo</span></button></div>'
6368
+ html: `<div role="status" aria-live="polite" class="flex min-h-12 items-center gap-2 rounded-md-xs bg-md-inverse-surface px-4 py-3 text-sm text-md-inverse-on-surface shadow-md-3"><span class="flex-1">Message archived</span><button type="button" class="relative -mr-2 shrink-0 overflow-hidden rounded-md-xs px-3 py-1.5 text-sm font-medium text-md-inverse-primary outline-none before:absolute before:inset-0 before:bg-current before:opacity-0 before:transition-opacity before:content-[''] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12]"><span class="relative">Undo</span></button></div>`
6364
6369
  },
6365
6370
  md3list: {
6366
6371
  name: "Md3List",
@@ -6372,7 +6377,7 @@ var html_snippets_default = {
6372
6377
  },
6373
6378
  md3navigationdrawer: {
6374
6379
  name: "Md3NavigationDrawer",
6375
- html: '<nav class="flex w-80 flex-col gap-1 bg-md-surface-container-low p-3 rounded-md-xl"><button type="button" aria-current="page" class="relative flex h-14 items-center gap-3 overflow-hidden rounded-full px-4 text-sm font-medium outline-none transition-colors [&amp;_svg]:size-6 before:absolute before:inset-0 before:bg-md-on-surface before:opacity-0 before:transition-opacity before:content-[&#x27;&#x27;] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12] bg-md-secondary-container text-md-on-secondary-container"><span class="relative shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-house"><path d="M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8"></path><path d="M3 10a2 2 0 0 1 .709-1.528l7-5.999a2 2 0 0 1 2.582 0l7 5.999A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"></path></svg></span><span class="relative flex-1 truncate text-left">Inbox</span></button><button type="button" class="relative flex h-14 items-center gap-3 overflow-hidden rounded-full px-4 text-sm font-medium outline-none transition-colors [&amp;_svg]:size-6 before:absolute before:inset-0 before:bg-md-on-surface before:opacity-0 before:transition-opacity before:content-[&#x27;&#x27;] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12] text-md-on-surface-variant"><span class="relative shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-mic"><path d="M12 2a3 3 0 0 0-3 3v7a3 3 0 0 0 6 0V5a3 3 0 0 0-3-3Z"></path><path d="M19 10v2a7 7 0 0 1-14 0v-2"></path><line x1="12" x2="12" y1="19" y2="22"></line></svg></span><span class="relative flex-1 truncate text-left">Sent</span></button></nav>'
6380
+ html: `<nav class="flex w-80 flex-col gap-1 bg-md-surface-container-low p-3 rounded-md-xl"><button type="button" aria-current="page" class="relative flex h-14 items-center gap-3 overflow-hidden rounded-full px-4 text-sm font-medium outline-none transition-colors [&_svg]:size-6 before:absolute before:inset-0 before:bg-md-on-surface before:opacity-0 before:transition-opacity before:content-[''] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12] bg-md-secondary-container text-md-on-secondary-container"><span class="relative shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-house"><path d="M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8"></path><path d="M3 10a2 2 0 0 1 .709-1.528l7-5.999a2 2 0 0 1 2.582 0l7 5.999A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"></path></svg></span><span class="relative flex-1 truncate text-left">Inbox</span></button><button type="button" class="relative flex h-14 items-center gap-3 overflow-hidden rounded-full px-4 text-sm font-medium outline-none transition-colors [&_svg]:size-6 before:absolute before:inset-0 before:bg-md-on-surface before:opacity-0 before:transition-opacity before:content-[''] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12] text-md-on-surface-variant"><span class="relative shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-mic"><path d="M12 2a3 3 0 0 0-3 3v7a3 3 0 0 0 6 0V5a3 3 0 0 0-3-3Z"></path><path d="M19 10v2a7 7 0 0 1-14 0v-2"></path><line x1="12" x2="12" y1="19" y2="22"></line></svg></span><span class="relative flex-1 truncate text-left">Sent</span></button></nav>`
6376
6381
  },
6377
6382
  md3bottomsheet: {
6378
6383
  name: "Md3BottomSheet",
@@ -6380,7 +6385,7 @@ var html_snippets_default = {
6380
6385
  },
6381
6386
  md3segmentedbutton: {
6382
6387
  name: "Md3SegmentedButton",
6383
- html: '<div role="group" class="inline-flex h-10 divide-x divide-md-outline overflow-hidden rounded-full border border-md-outline"><button type="button" aria-pressed="false" class="relative inline-flex items-center justify-center gap-2 overflow-hidden px-4 text-sm font-medium transition-colors [&amp;_svg]:size-[18px] before:absolute before:inset-0 before:bg-current before:opacity-0 before:transition-opacity before:content-[&#x27;&#x27;] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12] outline-none focus-visible:z-10 focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-md-primary text-md-on-surface"><span class="relative">Day</span></button><button type="button" aria-pressed="true" class="relative inline-flex items-center justify-center gap-2 overflow-hidden px-4 text-sm font-medium transition-colors [&amp;_svg]:size-[18px] before:absolute before:inset-0 before:bg-current before:opacity-0 before:transition-opacity before:content-[&#x27;&#x27;] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12] outline-none focus-visible:z-10 focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-md-primary bg-md-secondary-container text-md-on-secondary-container"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-check relative shrink-0" aria-hidden="true"><path d="M20 6 9 17l-5-5"></path></svg><span class="relative">Week</span></button></div>'
6388
+ html: `<div role="group" class="inline-flex h-10 divide-x divide-md-outline overflow-hidden rounded-full border border-md-outline"><button type="button" aria-pressed="false" class="relative inline-flex items-center justify-center gap-2 overflow-hidden px-4 text-sm font-medium transition-colors [&_svg]:size-[18px] before:absolute before:inset-0 before:bg-current before:opacity-0 before:transition-opacity before:content-[''] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12] outline-none focus-visible:z-10 focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-md-primary text-md-on-surface"><span class="relative">Day</span></button><button type="button" aria-pressed="true" class="relative inline-flex items-center justify-center gap-2 overflow-hidden px-4 text-sm font-medium transition-colors [&_svg]:size-[18px] before:absolute before:inset-0 before:bg-current before:opacity-0 before:transition-opacity before:content-[''] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12] outline-none focus-visible:z-10 focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-md-primary bg-md-secondary-container text-md-on-secondary-container"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-check relative shrink-0" aria-hidden="true"><path d="M20 6 9 17l-5-5"></path></svg><span class="relative">Week</span></button></div>`
6384
6389
  },
6385
6390
  md3badge: {
6386
6391
  name: "Md3Badge",
@@ -6412,7 +6417,7 @@ var html_snippets_default = {
6412
6417
  },
6413
6418
  md3search: {
6414
6419
  name: "Md3Search",
6415
- html: '<div class="flex h-14 w-full items-center gap-3 rounded-full bg-md-surface-container-high px-4 text-md-on-surface"><span class="shrink-0 text-md-on-surface-variant [&amp;_svg]:size-6"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search" aria-hidden="true"><circle cx="11" cy="11" r="8"></circle><path d="m21 21-4.3-4.3"></path></svg></span><input type="search" placeholder="Search" class="h-full flex-1 bg-transparent text-base outline-none placeholder:text-md-on-surface-variant [&amp;::-webkit-search-cancel-button]:appearance-none" aria-label="Search"/></div>'
6420
+ html: '<div class="flex h-14 w-full items-center gap-3 rounded-full bg-md-surface-container-high px-4 text-md-on-surface"><span class="shrink-0 text-md-on-surface-variant [&_svg]:size-6"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search" aria-hidden="true"><circle cx="11" cy="11" r="8"></circle><path d="m21 21-4.3-4.3"></path></svg></span><input type="search" placeholder="Search" class="h-full flex-1 bg-transparent text-base outline-none placeholder:text-md-on-surface-variant [&::-webkit-search-cancel-button]:appearance-none" aria-label="Search"/></div>'
6416
6421
  },
6417
6422
  md3banner: {
6418
6423
  name: "Md3Banner",
@@ -6420,39 +6425,41 @@ var html_snippets_default = {
6420
6425
  },
6421
6426
  md3message: {
6422
6427
  name: "Md3Message",
6423
- html: '<div data-role="assistant" class="flex w-full animate-nx-fade-in gap-3 flex-row"><span class="grid size-8 shrink-0 place-items-center rounded-full bg-md-primary-container text-md-on-primary-container [&amp;_svg]:size-5"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-bot"><path d="M12 8V4H8"></path><rect width="16" height="12" x="4" y="8" rx="2"></rect><path d="M2 14h2"></path><path d="M20 14h2"></path><path d="M15 13v2"></path><path d="M9 13v2"></path></svg></span><div class="flex min-w-0 max-w-[80%] flex-col gap-2 items-start"><div class="rounded-md-xl px-4 py-2.5 text-sm leading-relaxed rounded-bl-md-xs bg-md-surface-container-high text-md-on-surface"><span class="whitespace-pre-wrap break-words">Hi there</span></div></div></div>'
6428
+ html: '<div data-role="assistant" class="flex w-full animate-nx-fade-in gap-3 flex-row"><span class="grid size-8 shrink-0 place-items-center rounded-full bg-md-primary-container text-md-on-primary-container [&_svg]:size-5"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-bot"><path d="M12 8V4H8"></path><rect width="16" height="12" x="4" y="8" rx="2"></rect><path d="M2 14h2"></path><path d="M20 14h2"></path><path d="M15 13v2"></path><path d="M9 13v2"></path></svg></span><div class="flex min-w-0 max-w-[80%] flex-col gap-2 items-start"><div class="rounded-md-xl px-4 py-2.5 text-sm leading-relaxed rounded-bl-md-xs bg-md-surface-container-high text-md-on-surface"><span class="whitespace-pre-wrap break-words">Hi there</span></div></div></div>'
6424
6429
  },
6425
6430
  md3toolcall: {
6426
6431
  name: "Md3ToolCall",
6427
- html: '<div class="overflow-hidden rounded-md-md border border-md-outline-variant bg-md-surface-container-low text-sm text-md-on-surface animate-nx-fade-in"><button type="button" aria-expanded="true" class="relative flex w-full items-center gap-2 overflow-hidden px-3 py-2.5 text-left outline-none before:absolute before:inset-0 before:bg-md-on-surface before:opacity-0 before:transition-opacity before:content-[&#x27;&#x27;] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-right relative size-4 shrink-0 text-md-on-surface-variant transition-transform rotate-90"><path d="m9 18 6-6-6-6"></path></svg><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-wrench relative size-4 shrink-0 text-md-on-surface-variant"><path d="M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94l-3.76 3.76z"></path></svg><span class="relative font-mono font-medium text-md-on-surface">search</span><span class="relative ml-auto inline-flex items-center gap-1 text-xs text-md-primary"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-check size-3.5"><path d="M20 6 9 17l-5-5"></path></svg>Completed</span></button><div class="space-y-3 border-t border-md-outline-variant px-3 py-2.5"><div><p class="mb-1 text-xs font-medium text-md-on-surface-variant">Arguments</p><pre class="overflow-x-auto rounded-md-xs bg-md-surface-variant p-2 font-mono text-xs text-md-on-surface">{\n &quot;q&quot;: &quot;x&quot;\n}</pre></div><div><p class="mb-1 text-xs font-medium text-md-on-surface-variant">Result</p><pre class="overflow-x-auto rounded-md-xs bg-md-surface-variant p-2 font-mono text-xs text-md-on-surface">ok</pre></div></div></div>'
6432
+ html: `<div class="overflow-hidden rounded-md-md border border-md-outline-variant bg-md-surface-container-low text-sm text-md-on-surface animate-nx-fade-in"><button type="button" aria-expanded="true" class="relative flex w-full items-center gap-2 overflow-hidden px-3 py-2.5 text-left outline-none before:absolute before:inset-0 before:bg-md-on-surface before:opacity-0 before:transition-opacity before:content-[''] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-right relative size-4 shrink-0 text-md-on-surface-variant transition-transform rotate-90"><path d="m9 18 6-6-6-6"></path></svg><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-wrench relative size-4 shrink-0 text-md-on-surface-variant"><path d="M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94l-3.76 3.76z"></path></svg><span class="relative font-mono font-medium text-md-on-surface">search</span><span class="relative ml-auto inline-flex items-center gap-1 text-xs text-md-primary"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-check size-3.5"><path d="M20 6 9 17l-5-5"></path></svg>Completed</span></button><div class="space-y-3 border-t border-md-outline-variant px-3 py-2.5"><div><p class="mb-1 text-xs font-medium text-md-on-surface-variant">Arguments</p><pre class="overflow-x-auto rounded-md-xs bg-md-surface-variant p-2 font-mono text-xs text-md-on-surface">{
6433
+ &quot;q&quot;: &quot;x&quot;
6434
+ }</pre></div><div><p class="mb-1 text-xs font-medium text-md-on-surface-variant">Result</p><pre class="overflow-x-auto rounded-md-xs bg-md-surface-variant p-2 font-mono text-xs text-md-on-surface">ok</pre></div></div></div>`
6428
6435
  },
6429
6436
  md3actionplan: {
6430
6437
  name: "Md3ActionPlan",
6431
- html: '<div class="flex flex-col gap-4 rounded-md-lg border border-md-outline-variant bg-md-surface-container-low p-5 text-md-on-surface"><div class="flex flex-col gap-1"><h3 class="text-sm font-semibold text-md-on-surface">Proposed plan</h3></div><ol class="flex flex-col gap-3 [counter-reset:nx-step]"><li class="flex gap-3 [counter-increment:nx-step] before:mt-0.5 before:inline-flex before:size-6 before:shrink-0 before:items-center before:justify-center before:rounded-full before:bg-md-secondary-container before:text-xs before:font-semibold before:text-md-on-secondary-container before:[content:counter(nx-step)]"><span class="flex min-w-0 flex-1 flex-col gap-0.5"><span class="text-sm font-medium text-md-on-surface">Pull accounts</span></span></li><li class="flex gap-3 [counter-increment:nx-step] before:mt-0.5 before:inline-flex before:size-6 before:shrink-0 before:items-center before:justify-center before:rounded-full before:bg-md-secondary-container before:text-xs before:font-semibold before:text-md-on-secondary-container before:[content:counter(nx-step)]"><span class="flex min-w-0 flex-1 flex-col gap-0.5"><span class="text-sm font-medium text-md-on-surface">Draft emails</span></span></li></ol><div class="flex flex-wrap items-center gap-2"><button type="button" class="relative inline-flex h-10 items-center overflow-hidden rounded-full bg-md-primary px-6 text-sm font-medium text-md-on-primary outline-none focus-visible:ring-2 focus-visible:ring-md-primary focus-visible:ring-offset-2 focus-visible:ring-offset-md-surface before:absolute before:inset-0 before:bg-current before:opacity-0 before:transition-opacity before:content-[&#x27;&#x27;] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12] active:before:opacity-[0.12]"><span class="relative">Accept plan</span></button><button type="button" class="relative ml-auto inline-flex h-10 items-center overflow-hidden rounded-full px-4 text-sm font-medium text-md-primary outline-none focus-visible:ring-2 focus-visible:ring-md-primary before:absolute before:inset-0 before:bg-current before:opacity-0 before:transition-opacity before:content-[&#x27;&#x27;] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12] active:before:opacity-[0.12]"><span class="relative">Reject</span></button></div></div>'
6438
+ html: `<div class="flex flex-col gap-4 rounded-md-lg border border-md-outline-variant bg-md-surface-container-low p-5 text-md-on-surface"><div class="flex flex-col gap-1"><h3 class="text-sm font-semibold text-md-on-surface">Proposed plan</h3></div><ol class="flex flex-col gap-3 [counter-reset:nx-step]"><li class="flex gap-3 [counter-increment:nx-step] before:mt-0.5 before:inline-flex before:size-6 before:shrink-0 before:items-center before:justify-center before:rounded-full before:bg-md-secondary-container before:text-xs before:font-semibold before:text-md-on-secondary-container before:[content:counter(nx-step)]"><span class="flex min-w-0 flex-1 flex-col gap-0.5"><span class="text-sm font-medium text-md-on-surface">Pull accounts</span></span></li><li class="flex gap-3 [counter-increment:nx-step] before:mt-0.5 before:inline-flex before:size-6 before:shrink-0 before:items-center before:justify-center before:rounded-full before:bg-md-secondary-container before:text-xs before:font-semibold before:text-md-on-secondary-container before:[content:counter(nx-step)]"><span class="flex min-w-0 flex-1 flex-col gap-0.5"><span class="text-sm font-medium text-md-on-surface">Draft emails</span></span></li></ol><div class="flex flex-wrap items-center gap-2"><button type="button" class="relative inline-flex h-10 items-center overflow-hidden rounded-full bg-md-primary px-6 text-sm font-medium text-md-on-primary outline-none focus-visible:ring-2 focus-visible:ring-md-primary focus-visible:ring-offset-2 focus-visible:ring-offset-md-surface before:absolute before:inset-0 before:bg-current before:opacity-0 before:transition-opacity before:content-[''] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12] active:before:opacity-[0.12]"><span class="relative">Accept plan</span></button><button type="button" class="relative ml-auto inline-flex h-10 items-center overflow-hidden rounded-full px-4 text-sm font-medium text-md-primary outline-none focus-visible:ring-2 focus-visible:ring-md-primary before:absolute before:inset-0 before:bg-current before:opacity-0 before:transition-opacity before:content-[''] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12] active:before:opacity-[0.12]"><span class="relative">Reject</span></button></div></div>`
6432
6439
  },
6433
6440
  md3agentcomposer: {
6434
6441
  name: "Md3AgentComposer",
6435
- html: '<div class="flex flex-col gap-3 rounded-md-xl bg-md-surface-container-high p-3 focus-within:ring-2 focus-within:ring-md-primary" aria-label="Task"><textarea rows="1" placeholder="Describe a task, workflow or goal\u2026" aria-label="Describe a task, workflow or goal\u2026" class="max-h-[inherit] w-full resize-none bg-transparent px-1 text-sm text-md-on-surface outline-none placeholder:text-md-on-surface-variant disabled:opacity-50"></textarea><div class="flex items-center justify-between gap-2"><div class="flex items-center gap-1"></div><div class="flex items-center gap-2"><button type="button" disabled="" aria-label="Send" class="relative inline-flex size-10 shrink-0 items-center justify-center overflow-hidden rounded-full bg-md-primary text-md-on-primary outline-none focus-visible:ring-2 focus-visible:ring-md-primary focus-visible:ring-offset-2 focus-visible:ring-offset-md-surface before:absolute before:inset-0 before:bg-current before:opacity-0 before:transition-opacity before:content-[&#x27;&#x27;] hover:before:opacity-[0.08] active:before:opacity-[0.12] disabled:opacity-[0.38] disabled:before:opacity-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-up relative size-4"><path d="m5 12 7-7 7 7"></path><path d="M12 19V5"></path></svg></button></div></div></div>'
6442
+ html: `<div class="flex flex-col gap-3 rounded-md-xl bg-md-surface-container-high p-3 focus-within:ring-2 focus-within:ring-md-primary" aria-label="Task"><textarea rows="1" placeholder="Describe a task, workflow or goal\u2026" aria-label="Describe a task, workflow or goal\u2026" class="max-h-[inherit] w-full resize-none bg-transparent px-1 text-sm text-md-on-surface outline-none placeholder:text-md-on-surface-variant disabled:opacity-50"></textarea><div class="flex items-center justify-between gap-2"><div class="flex items-center gap-1"></div><div class="flex items-center gap-2"><button type="button" disabled="" aria-label="Send" class="relative inline-flex size-10 shrink-0 items-center justify-center overflow-hidden rounded-full bg-md-primary text-md-on-primary outline-none focus-visible:ring-2 focus-visible:ring-md-primary focus-visible:ring-offset-2 focus-visible:ring-offset-md-surface before:absolute before:inset-0 before:bg-current before:opacity-0 before:transition-opacity before:content-[''] hover:before:opacity-[0.08] active:before:opacity-[0.12] disabled:opacity-[0.38] disabled:before:opacity-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-up relative size-4"><path d="m5 12 7-7 7 7"></path><path d="M12 19V5"></path></svg></button></div></div></div>`
6436
6443
  },
6437
6444
  md3reasoning: {
6438
6445
  name: "Md3Reasoning",
6439
- html: '<div class="overflow-hidden rounded-md-md bg-md-surface-container-low"><button type="button" aria-expanded="true" class="relative flex w-full items-center gap-2 overflow-hidden px-3 py-2.5 text-left text-sm text-md-on-surface-variant outline-none before:absolute before:inset-0 before:bg-md-on-surface before:opacity-0 before:transition-opacity before:content-[&#x27;&#x27;] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-brain relative size-4 shrink-0"><path d="M12 5a3 3 0 1 0-5.997.125 4 4 0 0 0-2.526 5.77 4 4 0 0 0 .556 6.588A4 4 0 1 0 12 18Z"></path><path d="M12 5a3 3 0 1 1 5.997.125 4 4 0 0 1 2.526 5.77 4 4 0 0 1-.556 6.588A4 4 0 1 1 12 18Z"></path><path d="M15 13a4.5 4.5 0 0 1-3-4 4.5 4.5 0 0 1-3 4"></path><path d="M17.599 6.5a3 3 0 0 0 .399-1.375"></path><path d="M6.003 5.125A3 3 0 0 0 6.401 6.5"></path><path d="M3.477 10.896a4 4 0 0 1 .585-.396"></path><path d="M19.938 10.5a4 4 0 0 1 .585.396"></path><path d="M6 18a4 4 0 0 1-1.967-.516"></path><path d="M19.967 17.484A4 4 0 0 1 18 18"></path></svg><span class="relative font-medium">Reasoning</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-right relative ml-auto size-4 transition-transform rotate-90"><path d="m9 18 6-6-6-6"></path></svg></button><div class="whitespace-pre-wrap break-words border-t border-md-outline-variant px-3 py-2.5 text-sm italic text-md-on-surface-variant">thinking\u2026</div></div>'
6446
+ html: `<div class="overflow-hidden rounded-md-md bg-md-surface-container-low"><button type="button" aria-expanded="true" class="relative flex w-full items-center gap-2 overflow-hidden px-3 py-2.5 text-left text-sm text-md-on-surface-variant outline-none before:absolute before:inset-0 before:bg-md-on-surface before:opacity-0 before:transition-opacity before:content-[''] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-brain relative size-4 shrink-0"><path d="M12 5a3 3 0 1 0-5.997.125 4 4 0 0 0-2.526 5.77 4 4 0 0 0 .556 6.588A4 4 0 1 0 12 18Z"></path><path d="M12 5a3 3 0 1 1 5.997.125 4 4 0 0 1 2.526 5.77 4 4 0 0 1-.556 6.588A4 4 0 1 1 12 18Z"></path><path d="M15 13a4.5 4.5 0 0 1-3-4 4.5 4.5 0 0 1-3 4"></path><path d="M17.599 6.5a3 3 0 0 0 .399-1.375"></path><path d="M6.003 5.125A3 3 0 0 0 6.401 6.5"></path><path d="M3.477 10.896a4 4 0 0 1 .585-.396"></path><path d="M19.938 10.5a4 4 0 0 1 .585.396"></path><path d="M6 18a4 4 0 0 1-1.967-.516"></path><path d="M19.967 17.484A4 4 0 0 1 18 18"></path></svg><span class="relative font-medium">Reasoning</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-right relative ml-auto size-4 transition-transform rotate-90"><path d="m9 18 6-6-6-6"></path></svg></button><div class="whitespace-pre-wrap break-words border-t border-md-outline-variant px-3 py-2.5 text-sm italic text-md-on-surface-variant">thinking\u2026</div></div>`
6440
6447
  },
6441
6448
  md3agentsteps: {
6442
6449
  name: "Md3AgentSteps",
6443
- html: '<ol class="flex flex-col"><li class="relative flex gap-3 pb-5 last:pb-0 before:absolute before:left-[0.6875rem] before:top-6 before:h-[calc(100%-1.25rem)] before:w-px before:-translate-x-1/2 before:bg-md-outline-variant last:before:hidden"><span class="relative z-10 mt-0.5 inline-flex size-[1.375rem] shrink-0 items-center justify-center rounded-full border [&amp;_svg]:size-3.5 border-md-primary bg-md-primary text-md-on-primary"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-check size-3.5" aria-hidden="true"><path d="M20 6 9 17l-5-5"></path></svg></span><span class="flex min-w-0 flex-1 flex-col gap-1"><span class="text-sm font-medium text-md-on-surface">Read doc</span></span></li><li class="relative flex gap-3 pb-5 last:pb-0 before:absolute before:left-[0.6875rem] before:top-6 before:h-[calc(100%-1.25rem)] before:w-px before:-translate-x-1/2 before:bg-md-outline-variant last:before:hidden" aria-current="step"><span class="relative z-10 mt-0.5 inline-flex size-[1.375rem] shrink-0 items-center justify-center rounded-full border [&amp;_svg]:size-3.5 border-md-primary bg-md-primary-container text-md-on-primary-container"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-loader-circle size-3.5 animate-spin" aria-hidden="true"><path d="M21 12a9 9 0 1 1-6.219-8.56"></path></svg></span><span class="flex min-w-0 flex-1 flex-col gap-1"><span class="text-sm font-medium text-md-on-surface">Executing</span><span class="mt-1 block h-1 w-full overflow-hidden rounded-full bg-md-surface-variant"><span class="block h-full rounded-full bg-md-primary transition-[width]" style="width:60%"></span></span></span></li><li class="relative flex gap-3 pb-5 last:pb-0 before:absolute before:left-[0.6875rem] before:top-6 before:h-[calc(100%-1.25rem)] before:w-px before:-translate-x-1/2 before:bg-md-outline-variant last:before:hidden"><span class="relative z-10 mt-0.5 inline-flex size-[1.375rem] shrink-0 items-center justify-center rounded-full border [&amp;_svg]:size-3.5 border-md-outline bg-md-surface text-md-on-surface-variant"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle size-2 fill-current" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle></svg></span><span class="flex min-w-0 flex-1 flex-col gap-1"><span class="text-sm font-medium text-md-on-surface-variant">Create file</span></span></li></ol>'
6450
+ html: '<ol class="flex flex-col"><li class="relative flex gap-3 pb-5 last:pb-0 before:absolute before:left-[0.6875rem] before:top-6 before:h-[calc(100%-1.25rem)] before:w-px before:-translate-x-1/2 before:bg-md-outline-variant last:before:hidden"><span class="relative z-10 mt-0.5 inline-flex size-[1.375rem] shrink-0 items-center justify-center rounded-full border [&_svg]:size-3.5 border-md-primary bg-md-primary text-md-on-primary"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-check size-3.5" aria-hidden="true"><path d="M20 6 9 17l-5-5"></path></svg></span><span class="flex min-w-0 flex-1 flex-col gap-1"><span class="text-sm font-medium text-md-on-surface">Read doc</span></span></li><li class="relative flex gap-3 pb-5 last:pb-0 before:absolute before:left-[0.6875rem] before:top-6 before:h-[calc(100%-1.25rem)] before:w-px before:-translate-x-1/2 before:bg-md-outline-variant last:before:hidden" aria-current="step"><span class="relative z-10 mt-0.5 inline-flex size-[1.375rem] shrink-0 items-center justify-center rounded-full border [&_svg]:size-3.5 border-md-primary bg-md-primary-container text-md-on-primary-container"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-loader-circle size-3.5 animate-spin" aria-hidden="true"><path d="M21 12a9 9 0 1 1-6.219-8.56"></path></svg></span><span class="flex min-w-0 flex-1 flex-col gap-1"><span class="text-sm font-medium text-md-on-surface">Executing</span><span class="mt-1 block h-1 w-full overflow-hidden rounded-full bg-md-surface-variant"><span class="block h-full rounded-full bg-md-primary transition-[width]" style="width:60%"></span></span></span></li><li class="relative flex gap-3 pb-5 last:pb-0 before:absolute before:left-[0.6875rem] before:top-6 before:h-[calc(100%-1.25rem)] before:w-px before:-translate-x-1/2 before:bg-md-outline-variant last:before:hidden"><span class="relative z-10 mt-0.5 inline-flex size-[1.375rem] shrink-0 items-center justify-center rounded-full border [&_svg]:size-3.5 border-md-outline bg-md-surface text-md-on-surface-variant"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle size-2 fill-current" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle></svg></span><span class="flex min-w-0 flex-1 flex-col gap-1"><span class="text-sm font-medium text-md-on-surface-variant">Create file</span></span></li></ol>'
6444
6451
  },
6445
6452
  md3activitylog: {
6446
6453
  name: "Md3ActivityLog",
6447
- html: '<div class="flex flex-col gap-3"><p class="text-xs font-medium uppercase tracking-wide text-md-on-surface-variant">Footprints</p><ol class="relative before:absolute before:left-3 before:top-1 before:h-[calc(100%-1rem)] before:w-px before:-translate-x-1/2 before:bg-md-outline-variant"><li class="relative flex gap-3 pb-4 last:pb-0"><span class="relative z-10 mt-0.5 inline-flex size-6 shrink-0 items-center justify-center rounded-full border border-md-outline-variant bg-md-surface-container text-md-on-surface-variant [&amp;_svg]:size-3.5"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-activity" aria-hidden="true"><path d="M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2"></path></svg></span><span class="flex min-w-0 flex-1 flex-col gap-0.5"><span class="text-sm text-md-on-surface">Sent email to Sam</span><span class="text-xs text-md-on-surface-variant">2m ago</span></span></li><li class="relative flex gap-3 pb-4 last:pb-0"><span class="relative z-10 mt-0.5 inline-flex size-6 shrink-0 items-center justify-center rounded-full border border-md-outline-variant bg-md-surface-container text-md-on-surface-variant [&amp;_svg]:size-3.5"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-activity" aria-hidden="true"><path d="M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2"></path></svg></span><span class="flex min-w-0 flex-1 flex-col gap-0.5"><span class="text-sm text-md-on-surface">Read 3 CRM records</span><span class="text-xs text-md-on-surface-variant">3m ago</span></span></li></ol></div>'
6454
+ html: '<div class="flex flex-col gap-3"><p class="text-xs font-medium uppercase tracking-wide text-md-on-surface-variant">Footprints</p><ol class="relative before:absolute before:left-3 before:top-1 before:h-[calc(100%-1rem)] before:w-px before:-translate-x-1/2 before:bg-md-outline-variant"><li class="relative flex gap-3 pb-4 last:pb-0"><span class="relative z-10 mt-0.5 inline-flex size-6 shrink-0 items-center justify-center rounded-full border border-md-outline-variant bg-md-surface-container text-md-on-surface-variant [&_svg]:size-3.5"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-activity" aria-hidden="true"><path d="M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2"></path></svg></span><span class="flex min-w-0 flex-1 flex-col gap-0.5"><span class="text-sm text-md-on-surface">Sent email to Sam</span><span class="text-xs text-md-on-surface-variant">2m ago</span></span></li><li class="relative flex gap-3 pb-4 last:pb-0"><span class="relative z-10 mt-0.5 inline-flex size-6 shrink-0 items-center justify-center rounded-full border border-md-outline-variant bg-md-surface-container text-md-on-surface-variant [&_svg]:size-3.5"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-activity" aria-hidden="true"><path d="M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2"></path></svg></span><span class="flex min-w-0 flex-1 flex-col gap-0.5"><span class="text-sm text-md-on-surface">Read 3 CRM records</span><span class="text-xs text-md-on-surface-variant">3m ago</span></span></li></ol></div>'
6448
6455
  },
6449
6456
  md3thread: {
6450
6457
  name: "Md3Thread",
6451
- html: '<div class="relative flex min-h-0 flex-1 flex-col"><div class="flex-1 space-y-4 overflow-y-auto scroll-smooth p-4"><div data-role="user" class="flex w-full animate-nx-fade-in gap-3 flex-row-reverse"><span class="grid size-8 shrink-0 place-items-center rounded-full bg-md-primary-container text-md-on-primary-container [&amp;_svg]:size-5"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-user"><path d="M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2"></path><circle cx="12" cy="7" r="4"></circle></svg></span><div class="flex min-w-0 max-w-[80%] flex-col gap-2 items-end"><div class="rounded-md-xl px-4 py-2.5 text-sm leading-relaxed rounded-br-md-xs bg-md-primary text-md-on-primary"><span class="whitespace-pre-wrap break-words">Hello</span></div></div></div><div data-role="assistant" class="flex w-full animate-nx-fade-in gap-3 flex-row"><span class="grid size-8 shrink-0 place-items-center rounded-full bg-md-primary-container text-md-on-primary-container [&amp;_svg]:size-5"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-bot"><path d="M12 8V4H8"></path><rect width="16" height="12" x="4" y="8" rx="2"></rect><path d="M2 14h2"></path><path d="M20 14h2"></path><path d="M15 13v2"></path><path d="M9 13v2"></path></svg></span><div class="flex min-w-0 max-w-[80%] flex-col gap-2 items-start"><div class="rounded-md-xl px-4 py-2.5 text-sm leading-relaxed rounded-bl-md-xs bg-md-surface-container-high text-md-on-surface"><span class="whitespace-pre-wrap break-words">Hi</span></div></div></div></div></div>'
6458
+ html: '<div class="relative flex min-h-0 flex-1 flex-col"><div class="flex-1 space-y-4 overflow-y-auto scroll-smooth p-4"><div data-role="user" class="flex w-full animate-nx-fade-in gap-3 flex-row-reverse"><span class="grid size-8 shrink-0 place-items-center rounded-full bg-md-primary-container text-md-on-primary-container [&_svg]:size-5"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-user"><path d="M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2"></path><circle cx="12" cy="7" r="4"></circle></svg></span><div class="flex min-w-0 max-w-[80%] flex-col gap-2 items-end"><div class="rounded-md-xl px-4 py-2.5 text-sm leading-relaxed rounded-br-md-xs bg-md-primary text-md-on-primary"><span class="whitespace-pre-wrap break-words">Hello</span></div></div></div><div data-role="assistant" class="flex w-full animate-nx-fade-in gap-3 flex-row"><span class="grid size-8 shrink-0 place-items-center rounded-full bg-md-primary-container text-md-on-primary-container [&_svg]:size-5"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-bot"><path d="M12 8V4H8"></path><rect width="16" height="12" x="4" y="8" rx="2"></rect><path d="M2 14h2"></path><path d="M20 14h2"></path><path d="M15 13v2"></path><path d="M9 13v2"></path></svg></span><div class="flex min-w-0 max-w-[80%] flex-col gap-2 items-start"><div class="rounded-md-xl px-4 py-2.5 text-sm leading-relaxed rounded-bl-md-xs bg-md-surface-container-high text-md-on-surface"><span class="whitespace-pre-wrap break-words">Hi</span></div></div></div></div></div>'
6452
6459
  },
6453
6460
  md3actionconfirmation: {
6454
6461
  name: "Md3ActionConfirmation",
6455
- html: '<div role="alertdialog" aria-label="Send 18 emails?" class="flex flex-col gap-3 rounded-md-xl bg-md-surface-container-high p-5 text-md-on-surface shadow-md-1"><div class="flex items-start gap-3"><span class="mt-0.5 inline-flex size-8 shrink-0 items-center justify-center rounded-full [&amp;_svg]:size-4 bg-md-error-container text-md-on-error-container"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-triangle-alert" aria-hidden="true"><path d="m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3"></path><path d="M12 9v4"></path><path d="M12 17h.01"></path></svg></span><div class="flex min-w-0 flex-1 flex-col gap-1"><span class="inline-flex w-fit items-center rounded-full bg-md-secondary-container px-2 py-0.5 text-[0.6875rem] font-medium uppercase tracking-wide text-md-on-secondary-container">AI action</span><h3 class="text-base font-semibold text-md-on-surface">Send 18 emails?</h3><p class="text-sm text-md-on-surface-variant">You can&#x27;t undo this.</p></div></div><div class="flex items-center justify-end gap-2"><button type="button" class="relative inline-flex h-10 items-center overflow-hidden rounded-full border border-md-outline px-5 text-sm font-medium text-md-primary outline-none focus-visible:ring-2 focus-visible:ring-md-primary before:absolute before:inset-0 before:bg-current before:opacity-0 before:transition-opacity before:content-[&#x27;&#x27;] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12] active:before:opacity-[0.12]"><span class="relative">Cancel</span></button><button type="button" class="relative inline-flex h-10 items-center overflow-hidden rounded-full px-5 text-sm font-medium outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-offset-md-surface bg-md-error text-md-on-error focus-visible:ring-md-error before:absolute before:inset-0 before:bg-current before:opacity-0 before:transition-opacity before:content-[&#x27;&#x27;] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12] active:before:opacity-[0.12]"><span class="relative">Confirm</span></button></div></div>'
6462
+ html: `<div role="alertdialog" aria-label="Send 18 emails?" class="flex flex-col gap-3 rounded-md-xl bg-md-surface-container-high p-5 text-md-on-surface shadow-md-1"><div class="flex items-start gap-3"><span class="mt-0.5 inline-flex size-8 shrink-0 items-center justify-center rounded-full [&_svg]:size-4 bg-md-error-container text-md-on-error-container"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-triangle-alert" aria-hidden="true"><path d="m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3"></path><path d="M12 9v4"></path><path d="M12 17h.01"></path></svg></span><div class="flex min-w-0 flex-1 flex-col gap-1"><span class="inline-flex w-fit items-center rounded-full bg-md-secondary-container px-2 py-0.5 text-[0.6875rem] font-medium uppercase tracking-wide text-md-on-secondary-container">AI action</span><h3 class="text-base font-semibold text-md-on-surface">Send 18 emails?</h3><p class="text-sm text-md-on-surface-variant">You can't undo this.</p></div></div><div class="flex items-center justify-end gap-2"><button type="button" class="relative inline-flex h-10 items-center overflow-hidden rounded-full border border-md-outline px-5 text-sm font-medium text-md-primary outline-none focus-visible:ring-2 focus-visible:ring-md-primary before:absolute before:inset-0 before:bg-current before:opacity-0 before:transition-opacity before:content-[''] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12] active:before:opacity-[0.12]"><span class="relative">Cancel</span></button><button type="button" class="relative inline-flex h-10 items-center overflow-hidden rounded-full px-5 text-sm font-medium outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-offset-md-surface bg-md-error text-md-on-error focus-visible:ring-md-error before:absolute before:inset-0 before:bg-current before:opacity-0 before:transition-opacity before:content-[''] hover:before:opacity-[0.08] focus-visible:before:opacity-[0.12] active:before:opacity-[0.12]"><span class="relative">Confirm</span></button></div></div>`
6456
6463
  }
6457
6464
  }
6458
6465
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nucleux/mcp",
3
- "version": "0.4.3",
3
+ "version": "0.4.4",
4
4
  "type": "module",
5
5
  "description": "Model Context Protocol server for the Nucleux agentic UI component library — lets AI coding agents discover, search, and correctly use @nucleux components.",
6
6
  "bin": {