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