[{"data":1,"prerenderedAt":432},["ShallowReactive",2],{"mobile-docs-navigation":3,"command-menu-docs":46,"navigation":63,"mobile-docs-page-meta":78,"docs-pages-category":90,"\u002Fdocs\u002Fcomponents\u002Fchat-prompt":99,"surround-\u002Fdocs\u002Fcomponents\u002Fchat-prompt":429},[4],{"title":5,"path":6,"stem":7,"children":8,"page":45},"Docs","\u002Fdocs","docs",[9,19],{"title":10,"path":11,"stem":12,"children":13},"Introduction","\u002Fdocs\u002Fgetting-started","docs\u002F1.getting-started\u002F1.index",[14,15],{"title":10,"path":11,"stem":12},{"title":16,"path":17,"stem":18},"Installation","\u002Fdocs\u002Fgetting-started\u002Finstallation","docs\u002F1.getting-started\u002F2.installation",{"title":20,"path":21,"stem":22,"children":23},"Components","\u002Fdocs\u002Fcomponents","docs\u002F2.components\u002F0.index",[24,25,29,33,37,41],{"title":20,"path":21,"stem":22},{"title":26,"path":27,"stem":28},"LucideIcon","\u002Fdocs\u002Fcomponents\u002Flucide-icon","docs\u002F2.components\u002F1.lucide-icon",{"title":30,"path":31,"stem":32},"ChatMessage","\u002Fdocs\u002Fcomponents\u002Fchat-message","docs\u002F2.components\u002F2.chat-message",{"title":34,"path":35,"stem":36},"ChatMessages","\u002Fdocs\u002Fcomponents\u002Fchat-messages","docs\u002F2.components\u002F3.chat-messages",{"title":38,"path":39,"stem":40},"ChatPrompt","\u002Fdocs\u002Fcomponents\u002Fchat-prompt","docs\u002F2.components\u002F4.chat-prompt",{"title":42,"path":43,"stem":44},"ChatPromptSubmit","\u002Fdocs\u002Fcomponents\u002Fchat-prompt-submit","docs\u002F2.components\u002F5.chat-prompt-submit",false,[47,49,51,53,55,57,59,61],{"path":31,"title":30,"description":48},"Render a single chat message with AI SDK parts, actions, and layout control for Nuxt chat interfaces.",{"path":35,"title":34,"description":50},"Manage chat message lists with scrolling behavior, loading states, and action-ready assistant output.",{"path":39,"title":38,"description":52},"Build chat input flows with an auto-resizing prompt, keyboard shortcuts, and flexible slot composition.",{"path":43,"title":42,"description":54},"Handle chat submit, stop, and retry actions with a status-aware control for prompt workflows.",{"path":21,"title":20,"description":56},"Explore reusable components that complement Nuxt templates and real app workflows.",{"path":17,"title":16,"description":58},"Start from templates or install individual components in your Nuxt project.",{"path":11,"title":10,"description":60},"Stackhacker UI is an open-source collection of Nuxt templates and components for the shadcn-vue community.",{"path":27,"title":26,"description":62},"Use Lucide icons in Nuxt projects with shadcn-vue-friendly naming and component support.",[64],{"title":5,"path":6,"stem":7,"children":65,"page":45},[66,70],{"title":10,"path":11,"stem":12,"children":67},[68,69],{"title":10,"path":11,"stem":12},{"title":16,"path":17,"stem":18},{"title":20,"path":21,"stem":22,"children":71},[72,73,74,75,76,77],{"title":20,"path":21,"stem":22},{"title":26,"path":27,"stem":28},{"title":30,"path":31,"stem":32},{"title":34,"path":35,"stem":36},{"title":38,"path":39,"stem":40},{"title":42,"path":43,"stem":44},[79,81,82,83,85,87,88,89],{"path":11,"category":80},"overview",{"path":17,"category":80},{"path":21,"category":80},{"path":27,"category":84},"element",{"path":31,"category":86},"chat",{"path":35,"category":86},{"path":39,"category":86},{"path":43,"category":86},[91,92,93,94,95,96,97,98],{"path":11,"category":80},{"path":17,"category":80},{"path":21,"category":80},{"path":27,"category":84},{"path":31,"category":86},{"path":35,"category":86},{"path":39,"category":86},{"path":43,"category":86},{"id":100,"title":38,"body":101,"category":86,"description":52,"extension":424,"meta":425,"navigation":426,"path":39,"seo":427,"stem":40,"__hash__":428},"docs\u002Fdocs\u002F2.components\u002F4.chat-prompt.md",{"type":102,"value":103,"toc":409},"minimark",[104,108,112,123,127,135,139,144,146,150,154,290,294,338,342,375,379],[105,106],"component-preview",{"name":107},"ChatPromptDemo",[109,110,16],"h2",{"id":111},"installation",[113,114,120],"pre",{"className":115,"code":117,"language":118,"meta":119},[116],"language-bash","npx shadcn-vue@latest add \"https:\u002F\u002Fui.stackhacker.io\u002Fr\u002Fchat-prompt.json\"\n","bash","",[121,122,117],"code",{"__ignoreMap":119},[109,124,126],{"id":125},"usage","Usage",[113,128,133],{"className":129,"code":131,"language":132,"meta":119},[130],"language-vue","\u003Cscript setup lang=\"ts\">\nimport { ChatPrompt } from '@\u002Fcomponents\u002Fui\u002Fchat-prompt'\n\nconst input = ref('')\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003CChatPrompt v-model=\"input\" @submit=\"handleSubmit\" \u002F>\n\u003C\u002Ftemplate>\n","vue",[121,134,131],{"__ignoreMap":119},[109,136,138],{"id":137},"examples","Examples",[140,141,143],"h3",{"id":142},"default","Default",[105,145],{"name":107},[109,147,149],{"id":148},"api-reference","API Reference",[140,151,153],{"id":152},"props","Props",[155,156,157,175],"table",{},[158,159,160],"thead",{},[161,162,163,167,170,172],"tr",{},[164,165,166],"th",{},"Prop",[164,168,169],{},"Type",[164,171,143],{},[164,173,174],{},"Description",[176,177,178,199,218,238,256,274],"tbody",{},[161,179,180,186,191,196],{},[181,182,183],"td",{},[121,184,185],{},"modelValue",[181,187,188],{},[121,189,190],{},"string",[181,192,193],{},[121,194,195],{},"''",[181,197,198],{},"Current input value (v-model).",[161,200,201,206,210,215],{},[181,202,203],{},[121,204,205],{},"placeholder",[181,207,208],{},[121,209,190],{},[181,211,212],{},[121,213,214],{},"'Type your message here...'",[181,216,217],{},"Textarea placeholder text.",[161,219,220,225,230,235],{},[181,221,222],{},[121,223,224],{},"disabled",[181,226,227],{},[121,228,229],{},"boolean",[181,231,232],{},[121,233,234],{},"false",[181,236,237],{},"Disable the prompt.",[161,239,240,245,249,253],{},[181,241,242],{},[121,243,244],{},"autofocus",[181,246,247],{},[121,248,229],{},[181,250,251],{},[121,252,234],{},[181,254,255],{},"Auto-focus the textarea on mount.",[161,257,258,263,268,271],{},[181,259,260],{},[121,261,262],{},"error",[181,264,265],{},[121,266,267],{},"Error | null",[181,269,270],{},"—",[181,272,273],{},"Error state.",[161,275,276,281,285,287],{},[181,277,278],{},[121,279,280],{},"class",[181,282,283],{},[121,284,190],{},[181,286,270],{},[181,288,289],{},"Additional CSS classes.",[140,291,293],{"id":292},"emits","Emits",[155,295,296,308],{},[158,297,298],{},[161,299,300,303,306],{},[164,301,302],{},"Event",[164,304,305],{},"Payload",[164,307,174],{},[176,309,310,324],{},[161,311,312,317,321],{},[181,313,314],{},[121,315,316],{},"update:modelValue",[181,318,319],{},[121,320,190],{},[181,322,323],{},"Emitted when the input value changes.",[161,325,326,331,335],{},[181,327,328],{},[121,329,330],{},"submit",[181,332,333],{},[121,334,302],{},[181,336,337],{},"Emitted when Enter is pressed (without Shift) or the form is submitted.",[140,339,341],{"id":340},"slots","Slots",[155,343,344,353],{},[158,345,346],{},[161,347,348,351],{},[164,349,350],{},"Slot",[164,352,174],{},[176,354,355,365],{},[161,356,357,362],{},[181,358,359],{},[121,360,361],{},"header",[181,363,364],{},"Content rendered above the textarea.",[161,366,367,372],{},[181,368,369],{},[121,370,371],{},"footer",[181,373,374],{},"Content rendered below the textarea, typically for action buttons.",[140,376,378],{"id":377},"expose","Expose",[155,380,381,392],{},[158,382,383],{},[161,384,385,388,390],{},[164,386,387],{},"Name",[164,389,169],{},[164,391,174],{},[176,393,394],{},[161,395,396,401,406],{},[181,397,398],{},[121,399,400],{},"textareaRef",[181,402,403],{},[121,404,405],{},"Ref\u003CHTMLTextAreaElement>",[181,407,408],{},"Reference to the underlying textarea element.",{"title":119,"searchDepth":410,"depth":410,"links":411},2,[412,413,414,418],{"id":111,"depth":410,"text":16},{"id":125,"depth":410,"text":126},{"id":137,"depth":410,"text":138,"children":415},[416],{"id":142,"depth":417,"text":143},3,{"id":148,"depth":410,"text":149,"children":419},[420,421,422,423],{"id":152,"depth":417,"text":153},{"id":292,"depth":417,"text":293},{"id":340,"depth":417,"text":341},{"id":377,"depth":417,"text":378},"md",{},true,{"title":38,"description":52},"_0uOsdm4BurS_EbvscP2pfXr17rBMO9deHHiegPQGtE",[430,431],{"title":34,"path":35,"stem":36,"children":-1},{"title":42,"path":43,"stem":44,"children":-1},1777561254439]