{
  "name": "playground-chat",
  "kind": "block",
  "primary": "chat-shell",
  "page": "/playgrounds/chat/app/chat.contents.html",
  "slots": [],
  "nested": [],
  "attrs": {
    "proxy-url": "/api/chat",
    "model": "claude-haiku-4-5-20251001"
  },
  "html": "<chat-shell id=\"chat\" proxy-url=\"/api/chat\" model=\"claude-haiku-4-5-20251001\" style=\"flex: 1; border: none; border-radius: 0\">\n  <chat-header>\n    <span slot=\"name\">Factory Chat</span>\n    <chat-status slot=\"status\"></chat-status>\n    <span slot=\"action\" size=\"sm\" style=\"display: flex; align-items: center; gap: var(--a-space-1)\">\n      <button-ui id=\"theme-toggle\" icon=\"moon\" variant=\"ghost\" size=\"sm\"></button-ui>\n      <popover-ui id=\"theme-popover\" placement=\"bottom-end\">\n        <button-ui icon=\"gear\" variant=\"ghost\" size=\"sm\" slot=\"trigger\"></button-ui>\n        <div slot=\"content\" style=\"padding: var(--a-space-3); display: flex; flex-direction: column; gap: var(--a-space-3); min-width: 240px\">\n          <text-ui variant=\"label\">Theme</text-ui>\n          <div style=\"display: flex; gap: var(--a-space-1); flex-wrap: wrap\">\n            <button-ui id=\"theme-default\" text=\"Default\" variant=\"outline\" size=\"sm\"></button-ui>\n            <button-ui id=\"theme-ocean\" text=\"Ocean\" variant=\"outline\" size=\"sm\"></button-ui>\n            <button-ui id=\"theme-forest\" text=\"Forest\" variant=\"outline\" size=\"sm\"></button-ui>\n            <button-ui id=\"theme-sunset\" text=\"Sunset\" variant=\"outline\" size=\"sm\"></button-ui>\n            <button-ui id=\"theme-lavender\" text=\"Lavender\" variant=\"outline\" size=\"sm\"></button-ui>\n            <button-ui id=\"theme-rose\" text=\"Rose\" variant=\"outline\" size=\"sm\"></button-ui>\n            <button-ui id=\"theme-slate\" text=\"Slate\" variant=\"outline\" size=\"sm\"></button-ui>\n            <button-ui id=\"theme-midnight\" text=\"Midnight\" variant=\"outline\" size=\"sm\"></button-ui>\n          </div>\n          <divider-ui></divider-ui>\n          <text-ui variant=\"label\">Parametric</text-ui>\n          <field-ui label=\"Density\">\n            <slider-ui id=\"param-density\" value=\"1\" min=\"0.5\" max=\"1.5\" step=\"0.05\" suffix=\"×\"></slider-ui>\n          </field-ui>\n          <field-ui label=\"Radius\">\n            <slider-ui id=\"param-radius\" value=\"1\" min=\"0\" max=\"2\" step=\"0.1\" suffix=\"×\"></slider-ui>\n          </field-ui>\n        </div>\n      </popover-ui>\n    </span>\n  </chat-header>\n  <chat-thread>\n    <chat-empty>\n      <empty-state-ui\n        icon=\"chat-circle\"\n        heading=\"AdiaUI Chat\"\n        description=\"Type a message to start a conversation. Connects to LLM model via proxy if available.\">\n      </empty-state-ui>\n    </chat-empty>\n  </chat-thread>\n  <chat-composer>\n    <chat-input-ui placeholder=\"Message Claude...\"></chat-input-ui>\n  </chat-composer>\n</chat-shell>",
  "source": "playgrounds/chat/app/chat.contents.html",
  "metadata": {
    "domain": "agent",
    "description": "Chat playground — full chat thread interface with composer and streaming response.",
    "keywords": [
      "playground",
      "chat",
      "thread",
      "streaming",
      "composer",
      "agent"
    ]
  },
  "captured_at": "2026-06-07T19:28:13.657Z",
  "template": [
    {
      "id": "text",
      "component": "Text",
      "variant": "body",
      "slot": "name",
      "textContent": "Factory Chat"
    },
    {
      "id": "chat-status",
      "component": "ChatStatus",
      "slot": "status"
    },
    {
      "id": "theme-toggle",
      "component": "Button",
      "icon": "moon",
      "size": "sm",
      "variant": "ghost"
    },
    {
      "id": "button",
      "component": "Button",
      "slot": "trigger",
      "icon": "gear",
      "size": "sm",
      "variant": "ghost"
    },
    {
      "id": "text-3",
      "component": "Text",
      "variant": "label",
      "textContent": "Theme"
    },
    {
      "id": "theme-default",
      "component": "Button",
      "size": "sm",
      "text": "Default",
      "variant": "outline"
    },
    {
      "id": "theme-ocean",
      "component": "Button",
      "size": "sm",
      "text": "Ocean",
      "variant": "outline"
    },
    {
      "id": "theme-forest",
      "component": "Button",
      "size": "sm",
      "text": "Forest",
      "variant": "outline"
    },
    {
      "id": "theme-sunset",
      "component": "Button",
      "size": "sm",
      "text": "Sunset",
      "variant": "outline"
    },
    {
      "id": "theme-lavender",
      "component": "Button",
      "size": "sm",
      "text": "Lavender",
      "variant": "outline"
    },
    {
      "id": "theme-rose",
      "component": "Button",
      "size": "sm",
      "text": "Rose",
      "variant": "outline"
    },
    {
      "id": "theme-slate",
      "component": "Button",
      "size": "sm",
      "text": "Slate",
      "variant": "outline"
    },
    {
      "id": "theme-midnight",
      "component": "Button",
      "size": "sm",
      "text": "Midnight",
      "variant": "outline"
    },
    {
      "id": "row",
      "component": "Row",
      "gap": "md",
      "wrap": true,
      "children": [
        "theme-default",
        "theme-ocean",
        "theme-forest",
        "theme-sunset",
        "theme-lavender",
        "theme-rose",
        "theme-slate",
        "theme-midnight"
      ]
    },
    {
      "id": "divider",
      "component": "Divider"
    },
    {
      "id": "text-4",
      "component": "Text",
      "variant": "label",
      "textContent": "Parametric"
    },
    {
      "id": "param-density",
      "component": "Slider",
      "max": 1.5,
      "min": 0.5,
      "step": 0.05,
      "suffix": "×",
      "value": 1
    },
    {
      "id": "field",
      "component": "Field",
      "label": "Density",
      "children": [
        "param-density"
      ]
    },
    {
      "id": "param-radius",
      "component": "Slider",
      "max": 2,
      "min": 0,
      "step": 0.1,
      "suffix": "×",
      "value": 1
    },
    {
      "id": "field-2",
      "component": "Field",
      "label": "Radius",
      "children": [
        "param-radius"
      ]
    },
    {
      "id": "column",
      "component": "Column",
      "gap": "md",
      "slot": "content",
      "children": [
        "text-3",
        "row",
        "divider",
        "text-4",
        "field",
        "field-2"
      ]
    },
    {
      "id": "theme-popover",
      "component": "Popover",
      "placement": "bottom-end",
      "children": [
        "button",
        "column"
      ]
    },
    {
      "id": "text-2",
      "component": "Text",
      "variant": "body",
      "slot": "action",
      "size": "sm",
      "children": [
        "theme-toggle",
        "theme-popover"
      ]
    },
    {
      "id": "chat-header",
      "component": "ChatHeader",
      "children": [
        "text",
        "chat-status",
        "text-2"
      ]
    },
    {
      "id": "empty-state",
      "component": "EmptyState",
      "description": "Type a message to start a conversation. Connects to LLM model via proxy if available.",
      "heading": "AdiaUI Chat",
      "icon": "chat-circle"
    },
    {
      "id": "chat-empty",
      "component": "ChatEmpty",
      "children": [
        "empty-state"
      ]
    },
    {
      "id": "chat-thread",
      "component": "ChatThread",
      "children": [
        "chat-empty"
      ]
    },
    {
      "id": "chat-input",
      "component": "ChatInput",
      "placeholder": "Message Claude..."
    },
    {
      "id": "chat-composer",
      "component": "ChatComposer",
      "children": [
        "chat-input"
      ]
    },
    {
      "id": "root",
      "component": "ChatShell",
      "model": "claude-haiku-4-5-20251001",
      "children": [
        "chat-header",
        "chat-thread",
        "chat-composer"
      ]
    }
  ]
}
