[{"data":1,"prerenderedAt":2634},["ShallowReactive",2],{"navigation":3,"-docs-getting-started-integrations-i18n-vue":914,"-docs-getting-started-integrations-i18n-vue-description":2624},[4],{"title":5,"path":6,"stem":7,"children":8,"page":36},"Docs","/docs","docs",[9,157,777,813],{"title":10,"path":11,"stem":12,"children":13,"framework":16,"category":16,"description":16,"icon":30},"Get Started","/docs/getting-started","docs/1.getting-started/1.index",[14,19,37,47,53,76,140],{"title":15,"path":11,"stem":12,"framework":16,"category":16,"description":17,"icon":18},"Introduction",null,"Nuxt UI is a comprehensive UI library for Vue and Nuxt applications, offering a collection of fully styled and accessible components.","i-lucide-house",{"title":20,"framework":16,"category":16,"description":16,"shadow":21,"path":22,"stem":23,"children":24,"page":36},"Installation",true,"/docs/getting-started/installation","docs/1.getting-started/2.installation",[25,31],{"title":20,"path":26,"stem":27,"framework":28,"category":16,"description":29,"icon":30},"/docs/getting-started/installation/nuxt","docs/1.getting-started/2.installation/1.nuxt","nuxt","Learn how to install and configure Nuxt UI in your Nuxt application.","i-lucide-square-play",{"title":20,"path":32,"stem":33,"framework":34,"category":16,"description":35,"icon":30},"/docs/getting-started/installation/vue","docs/1.getting-started/2.installation/2.vue","vue","Learn how to install and configure Nuxt UI in your Vue application, compatible with both plain Vite and Inertia.",false,{"title":38,"framework":16,"category":16,"description":16,"icon":39,"shadow":21,"path":40,"stem":41,"children":42,"page":36},"Migration","i-lucide-arrow-right-left","/docs/getting-started/migration","docs/1.getting-started/3.migration",[43],{"title":38,"path":44,"stem":45,"framework":16,"category":16,"description":46,"icon":39},"/docs/getting-started/migration/v4","docs/1.getting-started/3.migration/1.v4","A comprehensive guide to migrate your application from Nuxt UI v3 to Nuxt UI v4.",{"title":48,"path":49,"stem":50,"framework":16,"category":16,"description":51,"icon":52},"Contribution","/docs/getting-started/contribution","docs/1.getting-started/4.contribution","A comprehensive guide on contributing to Nuxt UI, including project structure, development workflow, and best practices.","i-lucide-handshake",{"title":54,"path":55,"stem":56,"children":57,"page":36},"Theme","/docs/getting-started/theme","docs/1.getting-started/5.theme",[58,64,70],{"title":59,"path":60,"stem":61,"framework":16,"category":16,"description":62,"icon":63},"Design System","/docs/getting-started/theme/design-system","docs/1.getting-started/5.theme/1.design-system","Nuxt UI's design system uses Tailwind CSS for simple theming and easy customization.","i-lucide-palette",{"title":65,"path":66,"stem":67,"framework":16,"category":16,"description":68,"icon":69},"CSS Variables","/docs/getting-started/theme/css-variables","docs/1.getting-started/5.theme/2.css-variables","Nuxt UI uses CSS variables as design tokens for flexible, consistent theming with built-in light and dark mode support.","i-lucide-swatch-book",{"title":71,"path":72,"stem":73,"framework":16,"category":16,"description":74,"icon":75},"Components","/docs/getting-started/theme/components","docs/1.getting-started/5.theme/3.components","Learn how to customize Nuxt UI components with the Tailwind Variants API for advanced, flexible, and maintainable styling.","i-lucide-layout-grid",{"title":77,"framework":16,"category":16,"description":16,"path":78,"stem":79,"children":80,"page":36},"Integrations","/docs/getting-started/integrations","docs/1.getting-started/6.integrations",[81,95,101,115,129,135],{"title":82,"framework":16,"category":16,"description":16,"shadow":21,"path":83,"stem":84,"children":85,"page":36},"Icons","/docs/getting-started/integrations/icons","docs/1.getting-started/6.integrations/1.icons",[86,91],{"title":82,"path":87,"stem":88,"framework":28,"category":16,"description":89,"icon":90},"/docs/getting-started/integrations/icons/nuxt","docs/1.getting-started/6.integrations/1.icons/1.nuxt","Nuxt UI integrates with Nuxt Icon to access over 200,000+ icons from Iconify.","i-lucide-smile",{"title":82,"path":92,"stem":93,"framework":34,"category":16,"description":94,"icon":90},"/docs/getting-started/integrations/icons/vue","docs/1.getting-started/6.integrations/1.icons/2.vue","Nuxt UI integrates with Iconify to access over 200,000+ icons.",{"title":96,"path":97,"stem":98,"framework":28,"category":16,"description":99,"icon":100},"Fonts","/docs/getting-started/integrations/fonts","docs/1.getting-started/6.integrations/2.fonts","Nuxt UI integrates with Nuxt Fonts to provide plug-and-play font optimization.","i-lucide-a-large-small",{"title":102,"framework":16,"category":16,"description":16,"shadow":21,"path":103,"stem":104,"children":105,"page":36},"Color Mode","/docs/getting-started/integrations/color-mode","docs/1.getting-started/6.integrations/3.color-mode",[106,111],{"title":102,"path":107,"stem":108,"framework":28,"category":16,"description":109,"icon":110},"/docs/getting-started/integrations/color-mode/nuxt","docs/1.getting-started/6.integrations/3.color-mode/1.nuxt","Nuxt UI integrates with Nuxt Color Mode to allow for easy switching between light and dark themes.","i-lucide-sun-moon",{"title":102,"path":112,"stem":113,"framework":34,"category":16,"description":114,"icon":110},"/docs/getting-started/integrations/color-mode/vue","docs/1.getting-started/6.integrations/3.color-mode/2.vue","Nuxt UI integrates with VueUse to allow for easy switching between light and dark themes.",{"title":116,"framework":16,"category":16,"description":16,"shadow":21,"path":117,"stem":118,"children":119,"page":36},"I18n","/docs/getting-started/integrations/i18n","docs/1.getting-started/6.integrations/4.i18n",[120,126],{"title":121,"path":122,"stem":123,"framework":28,"category":16,"description":124,"icon":125},"Internationalization (i18n)","/docs/getting-started/integrations/i18n/nuxt","docs/1.getting-started/6.integrations/4.i18n/1.nuxt","Nuxt UI supports 50+ locales and multi-directional (LTR/RTL) internationalization.","i-lucide-languages",{"title":121,"path":127,"stem":128,"framework":34,"category":16,"description":124,"icon":125},"/docs/getting-started/integrations/i18n/vue","docs/1.getting-started/6.integrations/4.i18n/2.vue",{"title":130,"path":131,"stem":132,"framework":28,"category":16,"description":133,"icon":134},"Content","/docs/getting-started/integrations/content","docs/1.getting-started/6.integrations/5.content","Nuxt UI integrates with Nuxt Content to deliver beautiful typography and consistent component styling.","i-simple-icons-markdown",{"title":136,"path":137,"stem":138,"framework":34,"category":16,"description":139,"icon":134},"SSR","/docs/getting-started/integrations/ssr","docs/1.getting-started/6.integrations/6.ssr","Nuxt UI have first-party support for Vue.js SSR. This guide will help you have it fully enabled.",{"title":141,"framework":16,"category":16,"description":16,"path":142,"stem":143,"children":144,"page":36},"AI Tools","/docs/getting-started/ai","docs/1.getting-started/7.ai",[145,151],{"title":146,"path":147,"stem":148,"framework":16,"category":16,"description":149,"icon":150},"MCP Server","/docs/getting-started/ai/mcp","docs/1.getting-started/7.ai/1.mcp","Use Nuxt UI components in your AI assistants with Model Context Protocol support.","i-lucide-server",{"title":152,"path":153,"stem":154,"framework":16,"category":16,"description":155,"icon":156},"LLMs.txt","/docs/getting-started/ai/llms-txt","docs/1.getting-started/7.ai/2.llms-txt","How to get AI tools like Cursor, Windsurf, GitHub Copilot, ChatGPT, and Claude to understand Nuxt UI components, theming, and best practices.","i-lucide-bot",{"title":71,"framework":16,"category":16,"description":16,"icon":158,"path":159,"stem":160,"children":161,"page":36},"i-lucide-square-code","/docs/components","docs/2.components",[162,168,174,180,186,191,196,201,206,211,216,222,227,232,237,242,247,252,258,263,268,273,278,284,289,294,299,305,310,315,320,325,330,335,340,346,351,356,361,366,372,378,383,388,393,398,403,408,413,418,423,428,433,440,445,450,455,460,465,470,475,480,485,490,495,500,505,510,515,520,526,531,536,541,546,551,556,562,567,572,577,582,587,592,597,602,607,612,617,622,627,632,637,642,647,652,657,662,667,672,677,682,687,692,697,702,707,712,717,722,727,732,737,742,747,752,757,762,767,772],{"title":163,"path":164,"stem":165,"framework":16,"category":166,"description":167},"Accordion","/docs/components/accordion","docs/2.components/accordion","data","A stacked set of collapsible panels.",{"title":169,"path":170,"stem":171,"framework":16,"category":172,"description":173},"Alert","/docs/components/alert","docs/2.components/alert","element","A callout to draw user's attention.",{"title":175,"path":176,"stem":177,"framework":16,"category":178,"description":179},"App","/docs/components/app","docs/2.components/app","layout","Wraps your app to provide global configurations and more.",{"title":181,"path":182,"stem":183,"framework":16,"category":184,"description":185},"AuthForm","/docs/components/auth-form","docs/2.components/auth-form","page","A customizable Form to create login, register or password reset forms.",{"title":187,"path":188,"stem":189,"framework":16,"category":172,"description":190},"Avatar","/docs/components/avatar","docs/2.components/avatar","An img element with fallback and Nuxt Image support.",{"title":192,"path":193,"stem":194,"framework":16,"category":172,"description":195},"AvatarGroup","/docs/components/avatar-group","docs/2.components/avatar-group","Stack multiple avatars in a group.",{"title":197,"path":198,"stem":199,"framework":16,"category":172,"description":200},"Badge","/docs/components/badge","docs/2.components/badge","A short text to represent a status or a category.",{"title":202,"path":203,"stem":204,"framework":16,"category":172,"description":205},"Banner","/docs/components/banner","docs/2.components/banner","Display a banner at the top of your website to inform users about important information.",{"title":207,"path":208,"stem":209,"framework":16,"category":184,"description":210},"BlogPost","/docs/components/blog-post","docs/2.components/blog-post","A customizable article to display in a blog page.",{"title":212,"path":213,"stem":214,"framework":16,"category":184,"description":215},"BlogPosts","/docs/components/blog-posts","docs/2.components/blog-posts","Display a list of blog posts in a responsive grid layout.",{"title":217,"path":218,"stem":219,"framework":16,"category":220,"description":221},"Breadcrumb","/docs/components/breadcrumb","docs/2.components/breadcrumb","navigation","A hierarchy of links to navigate through a website.",{"title":223,"path":224,"stem":225,"framework":16,"category":172,"description":226},"Button","/docs/components/button","docs/2.components/button","A button element that can act as a link or trigger an action.",{"title":228,"path":229,"stem":230,"framework":16,"category":172,"description":231},"Calendar","/docs/components/calendar","docs/2.components/calendar","A calendar component for selecting single dates, multiple dates or date ranges.",{"title":233,"path":234,"stem":235,"framework":16,"category":172,"description":236},"Card","/docs/components/card","docs/2.components/card","Display content in a card with a header, body and footer.",{"title":238,"path":239,"stem":240,"framework":16,"category":166,"description":241},"Carousel","/docs/components/carousel","docs/2.components/carousel","A carousel with motion and swipe built using Embla.",{"title":243,"path":244,"stem":245,"framework":16,"category":184,"description":246},"ChangelogVersion","/docs/components/changelog-version","docs/2.components/changelog-version","A customizable article to display in a changelog.",{"title":248,"path":249,"stem":250,"framework":16,"category":184,"description":251},"ChangelogVersions","/docs/components/changelog-versions","docs/2.components/changelog-versions","Display a list of changelog versions in a timeline.",{"title":253,"path":254,"stem":255,"framework":16,"category":256,"description":257},"ChatMessage","/docs/components/chat-message","docs/2.components/chat-message","chat","Display a chat message with icon, avatar, and actions.",{"title":259,"path":260,"stem":261,"framework":16,"category":256,"description":262},"ChatMessages","/docs/components/chat-messages","docs/2.components/chat-messages","Display a list of chat messages, designed to work seamlessly with Vercel AI SDK.",{"title":264,"path":265,"stem":266,"framework":16,"category":256,"description":267},"ChatPalette","/docs/components/chat-palette","docs/2.components/chat-palette","A chat palette to create a chatbot interface inside an overlay.",{"title":269,"path":270,"stem":271,"framework":16,"category":256,"description":272},"ChatPrompt","/docs/components/chat-prompt","docs/2.components/chat-prompt","An enhanced Textarea for submitting prompts in AI chat interfaces.",{"title":274,"path":275,"stem":276,"framework":16,"category":256,"description":277},"ChatPromptSubmit","/docs/components/chat-prompt-submit","docs/2.components/chat-prompt-submit","A Button for submitting chat prompts with automatic status handling.",{"title":279,"path":280,"stem":281,"framework":16,"category":282,"description":283},"Checkbox","/docs/components/checkbox","docs/2.components/checkbox","form","An input element to toggle between checked and unchecked states.",{"title":285,"path":286,"stem":287,"framework":16,"category":282,"description":288},"CheckboxGroup","/docs/components/checkbox-group","docs/2.components/checkbox-group","A set of checklist buttons to select multiple option from a list.",{"title":290,"path":291,"stem":292,"framework":16,"category":172,"description":293},"Chip","/docs/components/chip","docs/2.components/chip","An indicator of a numeric value or a state.",{"title":295,"path":296,"stem":297,"framework":16,"category":172,"description":298},"Collapsible","/docs/components/collapsible","docs/2.components/collapsible","A collapsible element to toggle visibility of its content.",{"title":300,"path":301,"stem":302,"framework":16,"category":303,"description":304},"ColorModeAvatar","/docs/components/color-mode-avatar","docs/2.components/color-mode-avatar","color-mode","An Avatar with a different source for light and dark mode.",{"title":306,"path":307,"stem":308,"framework":16,"category":303,"description":309},"ColorModeButton","/docs/components/color-mode-button","docs/2.components/color-mode-button","A Button to switch between light and dark mode.",{"title":311,"path":312,"stem":313,"framework":16,"category":303,"description":314},"ColorModeImage","/docs/components/color-mode-image","docs/2.components/color-mode-image","An image element with a different source for light and dark mode.",{"title":316,"path":317,"stem":318,"framework":16,"category":303,"description":319},"ColorModeSelect","/docs/components/color-mode-select","docs/2.components/color-mode-select","A Select to switch between system, dark & light mode.",{"title":321,"path":322,"stem":323,"framework":16,"category":303,"description":324},"ColorModeSwitch","/docs/components/color-mode-switch","docs/2.components/color-mode-switch","A switch to toggle between light and dark mode.",{"title":326,"path":327,"stem":328,"framework":16,"category":282,"description":329},"ColorPicker","/docs/components/color-picker","docs/2.components/color-picker","A component to select a color.",{"title":331,"path":332,"stem":333,"framework":16,"category":220,"description":334},"CommandPalette","/docs/components/command-palette","docs/2.components/command-palette","A command palette with full-text search powered by Fuse.js for efficient fuzzy matching.",{"title":336,"path":337,"stem":338,"framework":16,"category":178,"description":339},"Container","/docs/components/container","docs/2.components/container","A container lets you center and constrain the width of your content.",{"title":341,"path":342,"stem":343,"framework":28,"category":344,"description":345},"ContentNavigation","/docs/components/content-navigation","docs/2.components/content-navigation","content","An accordion-style navigation component for organizing page links.",{"title":347,"path":348,"stem":349,"framework":28,"category":344,"description":350},"ContentSearch","/docs/components/content-search","docs/2.components/content-search","A ready to use CommandPalette to add to your documentation.",{"title":352,"path":353,"stem":354,"framework":28,"category":344,"description":355},"ContentSearchButton","/docs/components/content-search-button","docs/2.components/content-search-button","A pre-styled Button to open the ContentSearch modal.",{"title":357,"path":358,"stem":359,"framework":28,"category":344,"description":360},"ContentSurround","/docs/components/content-surround","docs/2.components/content-surround","A pair of prev and next links to navigate between pages.",{"title":362,"path":363,"stem":364,"framework":28,"category":344,"description":365},"ContentToc","/docs/components/content-toc","docs/2.components/content-toc","A sticky Table of Contents with automatic active anchor link highlighting.",{"title":367,"path":368,"stem":369,"framework":16,"category":370,"description":371},"ContextMenu","/docs/components/context-menu","docs/2.components/context-menu","overlay","A menu to display actions when right-clicking on an element.",{"title":373,"path":374,"stem":375,"framework":16,"category":376,"description":377},"DashboardGroup","/docs/components/dashboard-group","docs/2.components/dashboard-group","dashboard","A fixed layout component that provides context for dashboard components with sidebar state management and persistence.",{"title":379,"path":380,"stem":381,"framework":16,"category":376,"description":382},"DashboardNavbar","/docs/components/dashboard-navbar","docs/2.components/dashboard-navbar","A responsive navbar to display in a dashboard.",{"title":384,"path":385,"stem":386,"framework":16,"category":376,"description":387},"DashboardPanel","/docs/components/dashboard-panel","docs/2.components/dashboard-panel","A resizable panel to display in a dashboard.",{"title":389,"path":390,"stem":391,"framework":16,"category":376,"description":392},"DashboardResizeHandle","/docs/components/dashboard-resize-handle","docs/2.components/dashboard-resize-handle","A handle to resize a sidebar or panel.",{"title":394,"path":395,"stem":396,"framework":16,"category":376,"description":397},"DashboardSearch","/docs/components/dashboard-search","docs/2.components/dashboard-search","A ready to use CommandPalette to add to your dashboard.",{"title":399,"path":400,"stem":401,"framework":16,"category":376,"description":402},"DashboardSearchButton","/docs/components/dashboard-search-button","docs/2.components/dashboard-search-button","A pre-styled Button to open the DashboardSearch modal.",{"title":404,"path":405,"stem":406,"framework":16,"category":376,"description":407},"DashboardSidebar","/docs/components/dashboard-sidebar","docs/2.components/dashboard-sidebar","A resizable and collapsible sidebar to display in a dashboard.",{"title":409,"path":410,"stem":411,"framework":16,"category":376,"description":412},"DashboardSidebarCollapse","/docs/components/dashboard-sidebar-collapse","docs/2.components/dashboard-sidebar-collapse","A Button to collapse the sidebar on desktop.",{"title":414,"path":415,"stem":416,"framework":16,"category":376,"description":417},"DashboardSidebarToggle","/docs/components/dashboard-sidebar-toggle","docs/2.components/dashboard-sidebar-toggle","A Button to toggle the sidebar on mobile.",{"title":419,"path":420,"stem":421,"framework":16,"category":376,"description":422},"DashboardToolbar","/docs/components/dashboard-toolbar","docs/2.components/dashboard-toolbar","A toolbar to display under the navbar in a dashboard.",{"title":424,"path":425,"stem":426,"framework":16,"category":370,"description":427},"Drawer","/docs/components/drawer","docs/2.components/drawer","A drawer that smoothly slides in & out of the screen.",{"title":429,"path":430,"stem":431,"framework":16,"category":370,"description":432},"DropdownMenu","/docs/components/dropdown-menu","docs/2.components/dropdown-menu","A menu to display actions when clicking on an element.",{"title":434,"path":435,"stem":436,"framework":16,"category":437,"description":438,"badge":439},"Editor","/docs/components/editor","docs/2.components/editor","editor","A rich text editor component based on TipTap with support for markdown, HTML, and JSON content types.","Soon",{"title":441,"path":442,"stem":443,"framework":16,"category":437,"description":444,"badge":439},"EditorDragHandle","/docs/components/editor-drag-handle","docs/2.components/editor-drag-handle","A draggable handle for reordering and selecting blocks in the editor.",{"title":446,"path":447,"stem":448,"framework":16,"category":437,"description":449,"badge":439},"EditorEmojiMenu","/docs/components/editor-emoji-menu","docs/2.components/editor-emoji-menu","An emoji picker menu that displays emoji suggestions when typing the : character in the editor.",{"title":451,"path":452,"stem":453,"framework":16,"category":437,"description":454,"badge":439},"EditorMentionMenu","/docs/components/editor-mention-menu","docs/2.components/editor-mention-menu","A mention menu that displays user suggestions when typing the @ character in the editor.",{"title":456,"path":457,"stem":458,"framework":16,"category":437,"description":459,"badge":439},"EditorSuggestionMenu","/docs/components/editor-suggestion-menu","docs/2.components/editor-suggestion-menu","A command menu that displays formatting and action suggestions when typing the / character in the editor.",{"title":461,"path":462,"stem":463,"framework":16,"category":437,"description":464,"badge":439},"EditorToolbar","/docs/components/editor-toolbar","docs/2.components/editor-toolbar","A customizable toolbar for editor actions that can be displayed as fixed, bubble, or floating menu.",{"title":466,"path":467,"stem":468,"framework":16,"category":166,"description":469},"Empty","/docs/components/empty","docs/2.components/empty","A component to display an empty state.",{"title":471,"path":472,"stem":473,"framework":16,"category":178,"description":474},"Error","/docs/components/error","docs/2.components/error","A pre-built error component with NuxtError support.",{"title":476,"path":477,"stem":478,"framework":16,"category":172,"description":479},"FieldGroup","/docs/components/field-group","docs/2.components/field-group","Group multiple button-like elements together.",{"title":481,"path":482,"stem":483,"framework":16,"category":282,"description":484},"FileUpload","/docs/components/file-upload","docs/2.components/file-upload","An input element to upload files.",{"title":486,"path":487,"stem":488,"framework":16,"category":178,"description":489},"Footer","/docs/components/footer","docs/2.components/footer","A responsive footer component.",{"title":491,"path":492,"stem":493,"framework":16,"category":220,"description":494},"FooterColumns","/docs/components/footer-columns","docs/2.components/footer-columns","A list of links as columns to display in your Footer.",{"title":496,"path":497,"stem":498,"framework":16,"category":282,"description":499},"Form","/docs/components/form","docs/2.components/form","A form component with built-in validation and submission handling.",{"title":501,"path":502,"stem":503,"framework":16,"category":282,"description":504},"FormField","/docs/components/form-field","docs/2.components/form-field","A wrapper for form elements that provides validation and error handling.",{"title":506,"path":507,"stem":508,"framework":16,"category":178,"description":509},"Header","/docs/components/header","docs/2.components/header","A responsive header component.",{"title":511,"path":512,"stem":513,"framework":16,"category":172,"description":514},"Icon","/docs/components/icon","docs/2.components/icon","A component to display any icon from Iconify or another component.",{"title":516,"path":517,"stem":518,"framework":16,"category":282,"description":519},"Input","/docs/components/input","docs/2.components/input","An input element to enter text.",{"title":521,"path":522,"stem":523,"framework":16,"category":282,"description":524,"badge":525},"InputDate","/docs/components/input-date","docs/2.components/input-date","An input component for date selection.","New",{"title":527,"path":528,"stem":529,"framework":16,"category":282,"description":530},"InputMenu","/docs/components/input-menu","docs/2.components/input-menu","An autocomplete input with real-time suggestions.",{"title":532,"path":533,"stem":534,"framework":16,"category":282,"description":535},"InputNumber","/docs/components/input-number","docs/2.components/input-number","An input for numerical values with a customizable range.",{"title":537,"path":538,"stem":539,"framework":16,"category":282,"description":540},"InputTags","/docs/components/input-tags","docs/2.components/input-tags","An input element that displays interactive tags.",{"title":542,"path":543,"stem":544,"framework":16,"category":282,"description":545,"badge":525},"InputTime","/docs/components/input-time","docs/2.components/input-time","An input for selecting a time.",{"title":547,"path":548,"stem":549,"framework":16,"category":172,"description":550},"Kbd","/docs/components/kbd","docs/2.components/kbd","A kbd element to display a keyboard key.",{"title":552,"path":553,"stem":554,"framework":16,"category":220,"description":555},"Link","/docs/components/link","docs/2.components/link","A wrapper around \u003CNuxtLink> with extra props.",{"title":557,"path":558,"stem":559,"framework":16,"category":560,"description":561},"LocaleSelect","/docs/components/locale-select","docs/2.components/locale-select","i18n","A Select to switch between locales.",{"title":563,"path":564,"stem":565,"framework":16,"category":178,"description":566},"Main","/docs/components/main","docs/2.components/main","A main element that fills the available viewport height.",{"title":568,"path":569,"stem":570,"framework":16,"category":166,"description":571},"Marquee","/docs/components/marquee","docs/2.components/marquee","A component to create infinite scrolling content.",{"title":573,"path":574,"stem":575,"framework":16,"category":370,"description":576},"Modal","/docs/components/modal","docs/2.components/modal","A dialog window that can be used to display a message or request user input.",{"title":578,"path":579,"stem":580,"framework":16,"category":220,"description":581},"NavigationMenu","/docs/components/navigation-menu","docs/2.components/navigation-menu","A list of links that can be displayed horizontally or vertically.",{"title":583,"path":584,"stem":585,"framework":16,"category":184,"description":586},"Page","/docs/components/page","docs/2.components/page","A grid layout for your pages with left and right columns.",{"title":588,"path":589,"stem":590,"framework":16,"category":184,"description":591},"PageAnchors","/docs/components/page-anchors","docs/2.components/page-anchors","A list of anchors to be displayed in the page.",{"title":593,"path":594,"stem":595,"framework":16,"category":184,"description":596},"PageAside","/docs/components/page-aside","docs/2.components/page-aside","A sticky aside to display your page navigation.",{"title":598,"path":599,"stem":600,"framework":16,"category":184,"description":601},"PageBody","/docs/components/page-body","docs/2.components/page-body","The main content of your page.",{"title":603,"path":604,"stem":605,"framework":16,"category":184,"description":606},"PageCard","/docs/components/page-card","docs/2.components/page-card","A pre-styled card component that displays a title, description and optional link.",{"title":608,"path":609,"stem":610,"framework":16,"category":184,"description":611},"PageColumns","/docs/components/page-columns","docs/2.components/page-columns","A responsive multi-column layout system for organizing content side-by-side.",{"title":613,"path":614,"stem":615,"framework":16,"category":184,"description":616},"PageCTA","/docs/components/page-cta","docs/2.components/page-cta","A call to action section to display in your pages.",{"title":618,"path":619,"stem":620,"framework":16,"category":184,"description":621},"PageFeature","/docs/components/page-feature","docs/2.components/page-feature","A component to showcase key features of your application.",{"title":623,"path":624,"stem":625,"framework":16,"category":184,"description":626},"PageGrid","/docs/components/page-grid","docs/2.components/page-grid","A responsive grid system for displaying content in a flexible layout.",{"title":628,"path":629,"stem":630,"framework":16,"category":184,"description":631},"PageHeader","/docs/components/page-header","docs/2.components/page-header","A responsive header for your pages.",{"title":633,"path":634,"stem":635,"framework":16,"category":184,"description":636},"PageHero","/docs/components/page-hero","docs/2.components/page-hero","A responsive hero for your pages.",{"title":638,"path":639,"stem":640,"framework":16,"category":184,"description":641},"PageLinks","/docs/components/page-links","docs/2.components/page-links","A list of links to be displayed in the page.",{"title":643,"path":644,"stem":645,"framework":16,"category":184,"description":646},"PageList","/docs/components/page-list","docs/2.components/page-list","A vertical list layout for displaying content in a stacked format.",{"title":648,"path":649,"stem":650,"framework":16,"category":184,"description":651},"PageLogos","/docs/components/page-logos","docs/2.components/page-logos","A list of logos or images to display on your pages.",{"title":653,"path":654,"stem":655,"framework":16,"category":184,"description":656},"PageSection","/docs/components/page-section","docs/2.components/page-section","A responsive section for your pages.",{"title":658,"path":659,"stem":660,"framework":16,"category":220,"description":661},"Pagination","/docs/components/pagination","docs/2.components/pagination","A list of buttons or links to navigate through pages.",{"title":663,"path":664,"stem":665,"framework":16,"category":282,"description":666},"PinInput","/docs/components/pin-input","docs/2.components/pin-input","An input element to enter a pin.",{"title":668,"path":669,"stem":670,"framework":16,"category":370,"description":671},"Popover","/docs/components/popover","docs/2.components/popover","A non-modal dialog that floats around a trigger element.",{"title":673,"path":674,"stem":675,"framework":16,"category":184,"description":676},"PricingPlan","/docs/components/pricing-plan","docs/2.components/pricing-plan","A customizable pricing plan to display in a pricing page.",{"title":678,"path":679,"stem":680,"framework":16,"category":184,"description":681},"PricingPlans","/docs/components/pricing-plans","docs/2.components/pricing-plans","Display a list of pricing plans in a responsive grid layout.",{"title":683,"path":684,"stem":685,"framework":16,"category":184,"description":686},"PricingTable","/docs/components/pricing-table","docs/2.components/pricing-table","A responsive pricing table component that displays tiered pricing plans with feature comparisons.",{"title":688,"path":689,"stem":690,"framework":16,"category":172,"description":691},"Progress","/docs/components/progress","docs/2.components/progress","An indicator showing the progress of a task.",{"title":693,"path":694,"stem":695,"framework":16,"category":282,"description":696},"RadioGroup","/docs/components/radio-group","docs/2.components/radio-group","A set of radio buttons to select a single option from a list.",{"title":698,"path":699,"stem":700,"framework":16,"category":282,"description":701},"Select","/docs/components/select","docs/2.components/select","A select element to choose from a list of options.",{"title":703,"path":704,"stem":705,"framework":16,"category":282,"description":706},"SelectMenu","/docs/components/select-menu","docs/2.components/select-menu","An advanced searchable select element.",{"title":708,"path":709,"stem":710,"framework":16,"category":172,"description":711},"Separator","/docs/components/separator","docs/2.components/separator","Separates content horizontally or vertically.",{"title":713,"path":714,"stem":715,"framework":16,"category":172,"description":716},"Skeleton","/docs/components/skeleton","docs/2.components/skeleton","A placeholder to show while content is loading.",{"title":718,"path":719,"stem":720,"framework":16,"category":370,"description":721},"Slideover","/docs/components/slideover","docs/2.components/slideover","A dialog that slides in from any side of the screen.",{"title":723,"path":724,"stem":725,"framework":16,"category":282,"description":726},"Slider","/docs/components/slider","docs/2.components/slider","An input to select a numeric value within a range.",{"title":728,"path":729,"stem":730,"framework":16,"category":220,"description":731},"Stepper","/docs/components/stepper","docs/2.components/stepper","A set of steps that are used to indicate progress through a multi-step process.",{"title":733,"path":734,"stem":735,"framework":16,"category":282,"description":736},"Switch","/docs/components/switch","docs/2.components/switch","A control that toggles between two states.",{"title":738,"path":739,"stem":740,"framework":16,"category":166,"description":741},"Table","/docs/components/table","docs/2.components/table","A responsive table element to display data in rows and columns.",{"title":743,"path":744,"stem":745,"framework":16,"category":220,"description":746},"Tabs","/docs/components/tabs","docs/2.components/tabs","A set of tab panels that are displayed one at a time.",{"title":748,"path":749,"stem":750,"framework":16,"category":282,"description":751},"Textarea","/docs/components/textarea","docs/2.components/textarea","A textarea element to input multi-line text.",{"title":753,"path":754,"stem":755,"framework":16,"category":166,"description":756},"Timeline","/docs/components/timeline","docs/2.components/timeline","A component that displays a sequence of events with dates, titles, icons or avatars.",{"title":758,"path":759,"stem":760,"framework":16,"category":370,"description":761},"Toast","/docs/components/toast","docs/2.components/toast","A succinct message to provide information or feedback to the user.",{"title":763,"path":764,"stem":765,"framework":16,"category":370,"description":766},"Tooltip","/docs/components/tooltip","docs/2.components/tooltip","A popup that reveals information when hovering over an element.",{"title":768,"path":769,"stem":770,"framework":16,"category":166,"description":771},"Tree","/docs/components/tree","docs/2.components/tree","A tree view component to display and interact with hierarchical data structures.",{"title":773,"path":774,"stem":775,"framework":16,"category":166,"description":776},"User","/docs/components/user","docs/2.components/user","Display user information with name, description and avatar.",{"title":778,"framework":16,"category":16,"description":16,"icon":779,"path":780,"stem":781,"children":782,"page":36},"Composables","i-lucide-square-function","/docs/composables","docs/3.composables",[783,788,793,798,803,808],{"title":784,"path":785,"stem":786,"framework":16,"category":16,"description":787},"defineLocale","/docs/composables/define-locale","docs/3.composables/define-locale","A utility to create a custom locale for your app.",{"title":789,"path":790,"stem":791,"framework":16,"category":16,"description":792},"defineShortcuts","/docs/composables/define-shortcuts","docs/3.composables/define-shortcuts","A composable to define keyboard shortcuts in your app.",{"title":794,"path":795,"stem":796,"framework":16,"category":16,"description":797},"extendLocale","/docs/composables/extend-locale","docs/3.composables/extend-locale","A utility to extend an existing locale with custom translations.",{"title":799,"path":800,"stem":801,"framework":16,"category":16,"description":802},"extractShortcuts","/docs/composables/extract-shortcuts","docs/3.composables/extract-shortcuts","A utility to extract keyboard shortcuts from menu items.",{"title":804,"path":805,"stem":806,"framework":16,"category":16,"description":807},"useOverlay","/docs/composables/use-overlay","docs/3.composables/use-overlay","A composable to programmatically control overlays.",{"title":809,"path":810,"stem":811,"framework":16,"category":16,"description":812},"useToast","/docs/composables/use-toast","docs/3.composables/use-toast","A composable to display toast notifications in your app.",{"title":814,"path":815,"stem":816,"children":817,"framework":28,"category":16,"description":16,"icon":913},"Typography","/docs/typography","docs/4.typography/1.index",[818,820,825,830,835,840,845,849,854,858,863,868,873,878,883,887,892,896,900,904,909],{"title":15,"path":815,"stem":816,"framework":28,"category":16,"description":819},"Beautiful typography components and utilities to style your content with Nuxt UI.",{"title":821,"path":822,"stem":823,"framework":28,"category":16,"description":824},"Headers and text","/docs/typography/headers-and-text","docs/4.typography/2.headers-and-text","Beautifully styled headings, paragraphs, text formatting, and links for optimal readability.",{"title":826,"path":827,"stem":828,"framework":28,"category":16,"description":829},"Lists and tables","/docs/typography/lists-and-tables","docs/4.typography/3.lists-and-tables","Organize information with styled lists and responsive tables for clear, consistent readability.",{"title":831,"path":832,"stem":833,"framework":28,"category":16,"description":834},"Images and embeds","/docs/typography/images-and-embeds","docs/4.typography/4.images-and-embeds","Responsive images, videos, and rich media embeds to enhance and illustrate your documentation.",{"title":836,"path":837,"stem":838,"framework":28,"category":16,"description":839},"Code","/docs/typography/code","docs/4.typography/5.code","Display inline code and syntax-highlighted code blocks with copy-to-clipboard support.",{"title":163,"path":841,"stem":842,"framework":28,"category":843,"description":844},"/docs/typography/accordion","docs/4.typography/accordion","components","Create expandable content sections for better information organization.",{"title":197,"path":846,"stem":847,"framework":28,"category":843,"description":848},"/docs/typography/badge","docs/4.typography/badge","Display version numbers, status labels, and tags within your content.",{"title":850,"path":851,"stem":852,"framework":28,"category":843,"description":853},"Callout","/docs/typography/callout","docs/4.typography/callout","Highlight important information with eye-catching colored boxes and icons.",{"title":233,"path":855,"stem":856,"framework":28,"category":843,"description":857},"/docs/typography/card","docs/4.typography/card","Create highlighted content blocks with optional links and navigation.",{"title":859,"path":860,"stem":861,"framework":28,"category":843,"description":862},"CardGroup","/docs/typography/card-group","docs/4.typography/card-group","Organize multiple cards in responsive grid layouts for better content presentation.",{"title":864,"path":865,"stem":866,"framework":28,"category":843,"description":867},"CodeCollapse","/docs/typography/code-collapse","docs/4.typography/code-collapse","Make long code blocks collapsible to save space and improve readability.",{"title":869,"path":870,"stem":871,"framework":28,"category":843,"description":872},"CodeGroup","/docs/typography/code-group","docs/4.typography/code-group","Group multiple code examples in tabbed interfaces for easy comparison.",{"title":874,"path":875,"stem":876,"framework":28,"category":843,"description":877},"CodePreview","/docs/typography/code-preview","docs/4.typography/code-preview","Display code examples with a preview and their source for clearer documentation.",{"title":879,"path":880,"stem":881,"framework":28,"category":843,"description":882},"CodeTree","/docs/typography/code-tree","docs/4.typography/code-tree","Visualize file and folder structures with syntax-highlighted code.",{"title":295,"path":884,"stem":885,"framework":28,"category":843,"description":886},"/docs/typography/collapsible","docs/4.typography/collapsible","Toggle content visibility with smooth expand and collapse animations.",{"title":888,"path":889,"stem":890,"framework":28,"category":843,"description":891},"Field","/docs/typography/field","docs/4.typography/field","Document API parameters, props, and configuration options clearly.",{"title":476,"path":893,"stem":894,"framework":28,"category":843,"description":895},"/docs/typography/field-group","docs/4.typography/field-group","Group related fields together for comprehensive API documentation.",{"title":511,"path":897,"stem":898,"framework":28,"category":843,"description":899},"/docs/typography/icon","docs/4.typography/icon","Display icons from popular icon libraries to enhance your content.",{"title":547,"path":901,"stem":902,"framework":28,"category":843,"description":903},"/docs/typography/kbd","docs/4.typography/kbd","Display keyboard shortcuts and key combinations with proper styling.",{"title":905,"path":906,"stem":907,"framework":28,"category":843,"description":908},"Steps","/docs/typography/steps","docs/4.typography/steps","Transform headings into numbered step-by-step guides and tutorials.",{"title":743,"path":910,"stem":911,"framework":28,"category":843,"description":912},"/docs/typography/tabs","docs/4.typography/tabs","Organize related content in interactive tabbed interfaces.","i-lucide-square-pilcrow",{"id":915,"title":121,"body":916,"category":16,"description":124,"extension":2619,"framework":34,"links":16,"meta":2620,"navigation":2621,"path":127,"seo":2622,"stem":128,"__hash__":2623},"docs/docs/1.getting-started/6.integrations/4.i18n/2.vue.md",{"type":917,"value":918,"toc":2609},"minimark",[919,934,939,948,953,964,1116,1120,1127,1378,1403,1407,1419,1627,1631,1641,2276,2280,2290,2310,2599,2603,2605],[920,921,925],"callout",{"className":922,"icon":924,"to":122},[923],"hidden","i-logos-nuxt-icon",[926,927,928,929,933],"p",{},"Looking for the ",[930,931,932],"strong",{},"Nuxt"," version?",[935,936,938],"h2",{"id":937},"usage","Usage",[940,941,942],"note",{"to":176},[926,943,944,945,947],{},"Nuxt UI provides an ",[930,946,175],{}," component that wraps your app to provide global configurations.",[949,950,952],"h3",{"id":951},"locale","Locale",[926,954,955,956,959,960,963],{},"Use the ",[957,958,951],"code",{}," prop with the locale you want to use from ",[957,961,962],{},"@nuxt/ui/locale",":",[965,966,971],"pre",{"className":967,"code":968,"filename":969,"language":34,"meta":970,"style":970},"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u003Cscript setup lang=\"ts\">\nimport { fr } from '@nuxt/ui/locale'\n\u003C/script>\n\n\u003Ctemplate>\n  \u003CUApp :locale=\"fr\">\n    \u003CRouterView />\n  \u003C/UApp>\n\u003C/template>\n","App.vue","",[957,972,973,1008,1036,1046,1052,1062,1085,1097,1107],{"__ignoreMap":970},[974,975,978,982,986,990,993,996,999,1003,1005],"span",{"class":976,"line":977},"line",1,[974,979,981],{"class":980},"sMK4o","\u003C",[974,983,985],{"class":984},"swJcz","script",[974,987,989],{"class":988},"spNyl"," setup",[974,991,992],{"class":988}," lang",[974,994,995],{"class":980},"=",[974,997,998],{"class":980},"\"",[974,1000,1002],{"class":1001},"sfazB","ts",[974,1004,998],{"class":980},[974,1006,1007],{"class":980},">\n",[974,1009,1011,1015,1018,1022,1025,1028,1031,1033],{"class":976,"line":1010},2,[974,1012,1014],{"class":1013},"s7zQu","import",[974,1016,1017],{"class":980}," {",[974,1019,1021],{"class":1020},"sTEyZ"," fr",[974,1023,1024],{"class":980}," }",[974,1026,1027],{"class":1013}," from",[974,1029,1030],{"class":980}," '",[974,1032,962],{"class":1001},[974,1034,1035],{"class":980},"'\n",[974,1037,1039,1042,1044],{"class":976,"line":1038},3,[974,1040,1041],{"class":980},"\u003C/",[974,1043,985],{"class":984},[974,1045,1007],{"class":980},[974,1047,1049],{"class":976,"line":1048},4,[974,1050,1051],{"emptyLinePlaceholder":21},"\n",[974,1053,1055,1057,1060],{"class":976,"line":1054},5,[974,1056,981],{"class":980},[974,1058,1059],{"class":984},"template",[974,1061,1007],{"class":980},[974,1063,1065,1068,1071,1074,1076,1078,1081,1083],{"class":976,"line":1064},6,[974,1066,1067],{"class":980},"  \u003C",[974,1069,1070],{"class":984},"UApp",[974,1072,1073],{"class":988}," :locale",[974,1075,995],{"class":980},[974,1077,998],{"class":980},[974,1079,1080],{"class":1001},"fr",[974,1082,998],{"class":980},[974,1084,1007],{"class":980},[974,1086,1088,1091,1094],{"class":976,"line":1087},7,[974,1089,1090],{"class":980},"    \u003C",[974,1092,1093],{"class":984},"RouterView",[974,1095,1096],{"class":980}," />\n",[974,1098,1100,1103,1105],{"class":976,"line":1099},8,[974,1101,1102],{"class":980},"  \u003C/",[974,1104,1070],{"class":984},[974,1106,1007],{"class":980},[974,1108,1110,1112,1114],{"class":976,"line":1109},9,[974,1111,1041],{"class":980},[974,1113,1059],{"class":984},[974,1115,1007],{"class":980},[949,1117,1119],{"id":1118},"custom-locale","Custom locale",[926,1121,1122,1123,1126],{},"You can create your own locale using the ",[1124,1125,784],"a",{"href":785}," utility:",[965,1128,1130],{"className":967,"code":1129,"filename":969,"language":34,"meta":970,"style":970},"\u003Cscript setup lang=\"ts\">\nimport type { Messages } from '@nuxt/ui'\nimport { defineLocale } from '@nuxt/ui/composables/defineLocale'\n\nconst locale = defineLocale\u003CMessages>({\n  name: 'My custom locale',\n  code: 'en',\n  dir: 'ltr',\n  messages: {\n    // implement pairs\n  }\n})\n\u003C/script>\n\n\u003Ctemplate>\n  \u003CUApp :locale=\"locale\">\n    \u003CRouterView />\n  \u003C/UApp>\n\u003C/template>\n",[957,1131,1132,1152,1175,1195,1199,1227,1245,1261,1277,1287,1294,1300,1309,1318,1323,1332,1351,1360,1369],{"__ignoreMap":970},[974,1133,1134,1136,1138,1140,1142,1144,1146,1148,1150],{"class":976,"line":977},[974,1135,981],{"class":980},[974,1137,985],{"class":984},[974,1139,989],{"class":988},[974,1141,992],{"class":988},[974,1143,995],{"class":980},[974,1145,998],{"class":980},[974,1147,1002],{"class":1001},[974,1149,998],{"class":980},[974,1151,1007],{"class":980},[974,1153,1154,1156,1159,1161,1164,1166,1168,1170,1173],{"class":976,"line":1010},[974,1155,1014],{"class":1013},[974,1157,1158],{"class":1013}," type",[974,1160,1017],{"class":980},[974,1162,1163],{"class":1020}," Messages",[974,1165,1024],{"class":980},[974,1167,1027],{"class":1013},[974,1169,1030],{"class":980},[974,1171,1172],{"class":1001},"@nuxt/ui",[974,1174,1035],{"class":980},[974,1176,1177,1179,1181,1184,1186,1188,1190,1193],{"class":976,"line":1038},[974,1178,1014],{"class":1013},[974,1180,1017],{"class":980},[974,1182,1183],{"class":1020}," defineLocale",[974,1185,1024],{"class":980},[974,1187,1027],{"class":1013},[974,1189,1030],{"class":980},[974,1191,1192],{"class":1001},"@nuxt/ui/composables/defineLocale",[974,1194,1035],{"class":980},[974,1196,1197],{"class":976,"line":1048},[974,1198,1051],{"emptyLinePlaceholder":21},[974,1200,1201,1204,1207,1209,1212,1214,1218,1221,1224],{"class":976,"line":1054},[974,1202,1203],{"class":988},"const",[974,1205,1206],{"class":1020}," locale ",[974,1208,995],{"class":980},[974,1210,1183],{"class":1211},"s2Zo4",[974,1213,981],{"class":980},[974,1215,1217],{"class":1216},"sBMFI","Messages",[974,1219,1220],{"class":980},">",[974,1222,1223],{"class":1020},"(",[974,1225,1226],{"class":980},"{\n",[974,1228,1229,1232,1234,1236,1239,1242],{"class":976,"line":1064},[974,1230,1231],{"class":984},"  name",[974,1233,963],{"class":980},[974,1235,1030],{"class":980},[974,1237,1238],{"class":1001},"My custom locale",[974,1240,1241],{"class":980},"'",[974,1243,1244],{"class":980},",\n",[974,1246,1247,1250,1252,1254,1257,1259],{"class":976,"line":1087},[974,1248,1249],{"class":984},"  code",[974,1251,963],{"class":980},[974,1253,1030],{"class":980},[974,1255,1256],{"class":1001},"en",[974,1258,1241],{"class":980},[974,1260,1244],{"class":980},[974,1262,1263,1266,1268,1270,1273,1275],{"class":976,"line":1099},[974,1264,1265],{"class":984},"  dir",[974,1267,963],{"class":980},[974,1269,1030],{"class":980},[974,1271,1272],{"class":1001},"ltr",[974,1274,1241],{"class":980},[974,1276,1244],{"class":980},[974,1278,1279,1282,1284],{"class":976,"line":1109},[974,1280,1281],{"class":984},"  messages",[974,1283,963],{"class":980},[974,1285,1286],{"class":980}," {\n",[974,1288,1290],{"class":976,"line":1289},10,[974,1291,1293],{"class":1292},"sHwdD","    // implement pairs\n",[974,1295,1297],{"class":976,"line":1296},11,[974,1298,1299],{"class":980},"  }\n",[974,1301,1303,1306],{"class":976,"line":1302},12,[974,1304,1305],{"class":980},"}",[974,1307,1308],{"class":1020},")\n",[974,1310,1312,1314,1316],{"class":976,"line":1311},13,[974,1313,1041],{"class":980},[974,1315,985],{"class":984},[974,1317,1007],{"class":980},[974,1319,1321],{"class":976,"line":1320},14,[974,1322,1051],{"emptyLinePlaceholder":21},[974,1324,1326,1328,1330],{"class":976,"line":1325},15,[974,1327,981],{"class":980},[974,1329,1059],{"class":984},[974,1331,1007],{"class":980},[974,1333,1335,1337,1339,1341,1343,1345,1347,1349],{"class":976,"line":1334},16,[974,1336,1067],{"class":980},[974,1338,1070],{"class":984},[974,1340,1073],{"class":988},[974,1342,995],{"class":980},[974,1344,998],{"class":980},[974,1346,951],{"class":1001},[974,1348,998],{"class":980},[974,1350,1007],{"class":980},[974,1352,1354,1356,1358],{"class":976,"line":1353},17,[974,1355,1090],{"class":980},[974,1357,1093],{"class":984},[974,1359,1096],{"class":980},[974,1361,1363,1365,1367],{"class":976,"line":1362},18,[974,1364,1102],{"class":980},[974,1366,1070],{"class":984},[974,1368,1007],{"class":980},[974,1370,1372,1374,1376],{"class":976,"line":1371},19,[974,1373,1041],{"class":980},[974,1375,1059],{"class":984},[974,1377,1007],{"class":980},[1379,1380,1381,1387],"tip",{},[926,1382,1383,1384,1386],{},"Look at the ",[957,1385,957],{}," parameter, there you need to pass the iso code of the language. Example:",[1388,1389,1390,1397],"ul",{},[1391,1392,1393,1396],"li",{},[957,1394,1395],{},"hi"," Hindi (language)",[1391,1398,1399,1402],{},[957,1400,1401],{},"de-AT",": German (language) as used in Austria (region)",[949,1404,1406],{"id":1405},"extend-locale","Extend locale",[926,1408,1409,1410,1413,1414,1416,1417,1126],{},"You can customize an existing locale by overriding its ",[957,1411,1412],{},"messages"," or ",[957,1415,957],{}," using the ",[1124,1418,794],{"href":795},[965,1420,1422],{"className":967,"code":1421,"filename":969,"language":34,"meta":970,"style":970},"\u003Cscript setup lang=\"ts\">\nimport { en } from '@nuxt/ui/locale'\nimport { extendLocale } from '@nuxt/ui/composables/defineLocale'\n\nconst locale = extendLocale(en, {\n  code: 'en-AU',\n  messages: {\n    commandPalette: {\n      placeholder: 'Search a component...'\n    }\n  }\n})\n\u003C/script>\n\n\u003Ctemplate>\n  \u003CUApp :locale=\"locale\">\n    \u003CRouterView />\n  \u003C/UApp>\n\u003C/template>\n",[957,1423,1424,1444,1463,1482,1486,1504,1519,1527,1536,1550,1555,1559,1565,1573,1577,1585,1603,1611,1619],{"__ignoreMap":970},[974,1425,1426,1428,1430,1432,1434,1436,1438,1440,1442],{"class":976,"line":977},[974,1427,981],{"class":980},[974,1429,985],{"class":984},[974,1431,989],{"class":988},[974,1433,992],{"class":988},[974,1435,995],{"class":980},[974,1437,998],{"class":980},[974,1439,1002],{"class":1001},[974,1441,998],{"class":980},[974,1443,1007],{"class":980},[974,1445,1446,1448,1450,1453,1455,1457,1459,1461],{"class":976,"line":1010},[974,1447,1014],{"class":1013},[974,1449,1017],{"class":980},[974,1451,1452],{"class":1020}," en",[974,1454,1024],{"class":980},[974,1456,1027],{"class":1013},[974,1458,1030],{"class":980},[974,1460,962],{"class":1001},[974,1462,1035],{"class":980},[974,1464,1465,1467,1469,1472,1474,1476,1478,1480],{"class":976,"line":1038},[974,1466,1014],{"class":1013},[974,1468,1017],{"class":980},[974,1470,1471],{"class":1020}," extendLocale",[974,1473,1024],{"class":980},[974,1475,1027],{"class":1013},[974,1477,1030],{"class":980},[974,1479,1192],{"class":1001},[974,1481,1035],{"class":980},[974,1483,1484],{"class":976,"line":1048},[974,1485,1051],{"emptyLinePlaceholder":21},[974,1487,1488,1490,1492,1494,1496,1499,1502],{"class":976,"line":1054},[974,1489,1203],{"class":988},[974,1491,1206],{"class":1020},[974,1493,995],{"class":980},[974,1495,1471],{"class":1211},[974,1497,1498],{"class":1020},"(en",[974,1500,1501],{"class":980},",",[974,1503,1286],{"class":980},[974,1505,1506,1508,1510,1512,1515,1517],{"class":976,"line":1064},[974,1507,1249],{"class":984},[974,1509,963],{"class":980},[974,1511,1030],{"class":980},[974,1513,1514],{"class":1001},"en-AU",[974,1516,1241],{"class":980},[974,1518,1244],{"class":980},[974,1520,1521,1523,1525],{"class":976,"line":1087},[974,1522,1281],{"class":984},[974,1524,963],{"class":980},[974,1526,1286],{"class":980},[974,1528,1529,1532,1534],{"class":976,"line":1099},[974,1530,1531],{"class":984},"    commandPalette",[974,1533,963],{"class":980},[974,1535,1286],{"class":980},[974,1537,1538,1541,1543,1545,1548],{"class":976,"line":1109},[974,1539,1540],{"class":984},"      placeholder",[974,1542,963],{"class":980},[974,1544,1030],{"class":980},[974,1546,1547],{"class":1001},"Search a component...",[974,1549,1035],{"class":980},[974,1551,1552],{"class":976,"line":1289},[974,1553,1554],{"class":980},"    }\n",[974,1556,1557],{"class":976,"line":1296},[974,1558,1299],{"class":980},[974,1560,1561,1563],{"class":976,"line":1302},[974,1562,1305],{"class":980},[974,1564,1308],{"class":1020},[974,1566,1567,1569,1571],{"class":976,"line":1311},[974,1568,1041],{"class":980},[974,1570,985],{"class":984},[974,1572,1007],{"class":980},[974,1574,1575],{"class":976,"line":1320},[974,1576,1051],{"emptyLinePlaceholder":21},[974,1578,1579,1581,1583],{"class":976,"line":1325},[974,1580,981],{"class":980},[974,1582,1059],{"class":984},[974,1584,1007],{"class":980},[974,1586,1587,1589,1591,1593,1595,1597,1599,1601],{"class":976,"line":1334},[974,1588,1067],{"class":980},[974,1590,1070],{"class":984},[974,1592,1073],{"class":988},[974,1594,995],{"class":980},[974,1596,998],{"class":980},[974,1598,951],{"class":1001},[974,1600,998],{"class":980},[974,1602,1007],{"class":980},[974,1604,1605,1607,1609],{"class":976,"line":1353},[974,1606,1090],{"class":980},[974,1608,1093],{"class":984},[974,1610,1096],{"class":980},[974,1612,1613,1615,1617],{"class":976,"line":1362},[974,1614,1102],{"class":980},[974,1616,1070],{"class":984},[974,1618,1007],{"class":980},[974,1620,1621,1623,1625],{"class":976,"line":1371},[974,1622,1041],{"class":980},[974,1624,1059],{"class":984},[974,1626,1007],{"class":980},[949,1628,1630],{"id":1629},"dynamic-locale","Dynamic locale",[926,1632,1633,1634,1640],{},"To dynamically switch between languages, you can use the ",[1124,1635,1639],{"href":1636,"rel":1637},"https://vue-i18n.intlify.dev/",[1638],"nofollow","Vue I18n"," plugin.",[1642,1643,1645,1650,1715,1722,2117,2127],"steps",{"level":1644},"4",[1646,1647,1649],"h4",{"id":1648},"install-the-vue-i18n-package","Install the Vue I18n package",[1651,1652,1654,1672,1686,1701],"code-group",{"sync":1653},"pm",[965,1655,1660],{"className":1656,"code":1657,"filename":1658,"language":1659,"meta":970,"style":970},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","pnpm add vue-i18n@11\n","pnpm","bash",[957,1661,1662],{"__ignoreMap":970},[974,1663,1664,1666,1669],{"class":976,"line":977},[974,1665,1658],{"class":1216},[974,1667,1668],{"class":1001}," add",[974,1670,1671],{"class":1001}," vue-i18n@11\n",[965,1673,1676],{"className":1656,"code":1674,"filename":1675,"language":1659,"meta":970,"style":970},"yarn add vue-i18n@11\n","yarn",[957,1677,1678],{"__ignoreMap":970},[974,1679,1680,1682,1684],{"class":976,"line":977},[974,1681,1675],{"class":1216},[974,1683,1668],{"class":1001},[974,1685,1671],{"class":1001},[965,1687,1690],{"className":1656,"code":1688,"filename":1689,"language":1659,"meta":970,"style":970},"npm install vue-i18n@11\n","npm",[957,1691,1692],{"__ignoreMap":970},[974,1693,1694,1696,1699],{"class":976,"line":977},[974,1695,1689],{"class":1216},[974,1697,1698],{"class":1001}," install",[974,1700,1671],{"class":1001},[965,1702,1705],{"className":1656,"code":1703,"filename":1704,"language":1659,"meta":970,"style":970},"bun add vue-i18n@11\n","bun",[957,1706,1707],{"__ignoreMap":970},[974,1708,1709,1711,1713],{"class":976,"line":977},[974,1710,1704],{"class":1216},[974,1712,1668],{"class":1001},[974,1714,1671],{"class":1001},[1646,1716,1718,1719],{"id":1717},"use-the-vue-i18n-plugin-in-your-maints","Use the Vue I18n plugin in your ",[957,1720,1721],{},"main.ts",[965,1723,1735],{"className":1724,"code":1725,"filename":1721,"highlights":1726,"language":1002,"meta":970,"style":970},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import { createApp } from 'vue'\nimport { createRouter, createWebHistory } from 'vue-router'\nimport { createI18n } from 'vue-i18n'\nimport ui from '@nuxt/ui/vue-plugin'\nimport App from './App.vue'\n\nconst app = createApp(App)\n\nconst router = createRouter({\n  routes: [],\n  history: createWebHistory()\n})\n\nconst i18n = createI18n({\n  legacy: false,\n  locale: 'en',\n  availableLocales: ['en', 'de'],\n  messages: {\n    en: {\n      // ...\n    },\n    de: {\n      // ...\n    }\n  }\n})\n\napp.use(router)\napp.use(i18n)\napp.use(ui)\n\napp.mount('#app')\n",[1038,1320,1325,1334,1353,1362,1371,1727,1728,1729,1730,1731,1732,1733,1734],20,21,22,23,24,25,26,29,[957,1736,1737,1756,1781,1803,1820,1836,1840,1854,1858,1873,1885,1897,1903,1907,1923,1937,1953,1984,1993,2003,2009,2015,2025,2030,2035,2040,2047,2052,2067,2079,2091,2096],{"__ignoreMap":970},[974,1738,1739,1741,1743,1746,1748,1750,1752,1754],{"class":976,"line":977},[974,1740,1014],{"class":1013},[974,1742,1017],{"class":980},[974,1744,1745],{"class":1020}," createApp",[974,1747,1024],{"class":980},[974,1749,1027],{"class":1013},[974,1751,1030],{"class":980},[974,1753,34],{"class":1001},[974,1755,1035],{"class":980},[974,1757,1758,1760,1762,1765,1767,1770,1772,1774,1776,1779],{"class":976,"line":1010},[974,1759,1014],{"class":1013},[974,1761,1017],{"class":980},[974,1763,1764],{"class":1020}," createRouter",[974,1766,1501],{"class":980},[974,1768,1769],{"class":1020}," createWebHistory",[974,1771,1024],{"class":980},[974,1773,1027],{"class":1013},[974,1775,1030],{"class":980},[974,1777,1778],{"class":1001},"vue-router",[974,1780,1035],{"class":980},[974,1782,1785,1787,1789,1792,1794,1796,1798,1801],{"class":1783,"line":1038},[976,1784],"highlight",[974,1786,1014],{"class":1013},[974,1788,1017],{"class":980},[974,1790,1791],{"class":1020}," createI18n",[974,1793,1024],{"class":980},[974,1795,1027],{"class":1013},[974,1797,1030],{"class":980},[974,1799,1800],{"class":1001},"vue-i18n",[974,1802,1035],{"class":980},[974,1804,1805,1807,1810,1813,1815,1818],{"class":976,"line":1048},[974,1806,1014],{"class":1013},[974,1808,1809],{"class":1020}," ui ",[974,1811,1812],{"class":1013},"from",[974,1814,1030],{"class":980},[974,1816,1817],{"class":1001},"@nuxt/ui/vue-plugin",[974,1819,1035],{"class":980},[974,1821,1822,1824,1827,1829,1831,1834],{"class":976,"line":1054},[974,1823,1014],{"class":1013},[974,1825,1826],{"class":1020}," App ",[974,1828,1812],{"class":1013},[974,1830,1030],{"class":980},[974,1832,1833],{"class":1001},"./App.vue",[974,1835,1035],{"class":980},[974,1837,1838],{"class":976,"line":1064},[974,1839,1051],{"emptyLinePlaceholder":21},[974,1841,1842,1844,1847,1849,1851],{"class":976,"line":1087},[974,1843,1203],{"class":988},[974,1845,1846],{"class":1020}," app ",[974,1848,995],{"class":980},[974,1850,1745],{"class":1211},[974,1852,1853],{"class":1020},"(App)\n",[974,1855,1856],{"class":976,"line":1099},[974,1857,1051],{"emptyLinePlaceholder":21},[974,1859,1860,1862,1865,1867,1869,1871],{"class":976,"line":1109},[974,1861,1203],{"class":988},[974,1863,1864],{"class":1020}," router ",[974,1866,995],{"class":980},[974,1868,1764],{"class":1211},[974,1870,1223],{"class":1020},[974,1872,1226],{"class":980},[974,1874,1875,1878,1880,1883],{"class":976,"line":1289},[974,1876,1877],{"class":984},"  routes",[974,1879,963],{"class":980},[974,1881,1882],{"class":1020}," []",[974,1884,1244],{"class":980},[974,1886,1887,1890,1892,1894],{"class":976,"line":1296},[974,1888,1889],{"class":984},"  history",[974,1891,963],{"class":980},[974,1893,1769],{"class":1211},[974,1895,1896],{"class":1020},"()\n",[974,1898,1899,1901],{"class":976,"line":1302},[974,1900,1305],{"class":980},[974,1902,1308],{"class":1020},[974,1904,1905],{"class":976,"line":1311},[974,1906,1051],{"emptyLinePlaceholder":21},[974,1908,1910,1912,1915,1917,1919,1921],{"class":1909,"line":1320},[976,1784],[974,1911,1203],{"class":988},[974,1913,1914],{"class":1020}," i18n ",[974,1916,995],{"class":980},[974,1918,1791],{"class":1211},[974,1920,1223],{"class":1020},[974,1922,1226],{"class":980},[974,1924,1926,1929,1931,1935],{"class":1925,"line":1325},[976,1784],[974,1927,1928],{"class":984},"  legacy",[974,1930,963],{"class":980},[974,1932,1934],{"class":1933},"sfNiH"," false",[974,1936,1244],{"class":980},[974,1938,1940,1943,1945,1947,1949,1951],{"class":1939,"line":1334},[976,1784],[974,1941,1942],{"class":984},"  locale",[974,1944,963],{"class":980},[974,1946,1030],{"class":980},[974,1948,1256],{"class":1001},[974,1950,1241],{"class":980},[974,1952,1244],{"class":980},[974,1954,1956,1959,1961,1964,1966,1968,1970,1972,1974,1977,1979,1982],{"class":1955,"line":1353},[976,1784],[974,1957,1958],{"class":984},"  availableLocales",[974,1960,963],{"class":980},[974,1962,1963],{"class":1020}," [",[974,1965,1241],{"class":980},[974,1967,1256],{"class":1001},[974,1969,1241],{"class":980},[974,1971,1501],{"class":980},[974,1973,1030],{"class":980},[974,1975,1976],{"class":1001},"de",[974,1978,1241],{"class":980},[974,1980,1981],{"class":1020},"]",[974,1983,1244],{"class":980},[974,1985,1987,1989,1991],{"class":1986,"line":1362},[976,1784],[974,1988,1281],{"class":984},[974,1990,963],{"class":980},[974,1992,1286],{"class":980},[974,1994,1996,1999,2001],{"class":1995,"line":1371},[976,1784],[974,1997,1998],{"class":984},"    en",[974,2000,963],{"class":980},[974,2002,1286],{"class":980},[974,2004,2006],{"class":2005,"line":1727},[976,1784],[974,2007,2008],{"class":1292},"      // ...\n",[974,2010,2012],{"class":2011,"line":1728},[976,1784],[974,2013,2014],{"class":980},"    },\n",[974,2016,2018,2021,2023],{"class":2017,"line":1729},[976,1784],[974,2019,2020],{"class":984},"    de",[974,2022,963],{"class":980},[974,2024,1286],{"class":980},[974,2026,2028],{"class":2027,"line":1730},[976,1784],[974,2029,2008],{"class":1292},[974,2031,2033],{"class":2032,"line":1731},[976,1784],[974,2034,1554],{"class":980},[974,2036,2038],{"class":2037,"line":1732},[976,1784],[974,2039,1299],{"class":980},[974,2041,2043,2045],{"class":2042,"line":1733},[976,1784],[974,2044,1305],{"class":980},[974,2046,1308],{"class":1020},[974,2048,2050],{"class":976,"line":2049},27,[974,2051,1051],{"emptyLinePlaceholder":21},[974,2053,2055,2058,2061,2064],{"class":976,"line":2054},28,[974,2056,2057],{"class":1020},"app",[974,2059,2060],{"class":980},".",[974,2062,2063],{"class":1211},"use",[974,2065,2066],{"class":1020},"(router)\n",[974,2068,2070,2072,2074,2076],{"class":2069,"line":1734},[976,1784],[974,2071,2057],{"class":1020},[974,2073,2060],{"class":980},[974,2075,2063],{"class":1211},[974,2077,2078],{"class":1020},"(i18n)\n",[974,2080,2082,2084,2086,2088],{"class":976,"line":2081},30,[974,2083,2057],{"class":1020},[974,2085,2060],{"class":980},[974,2087,2063],{"class":1211},[974,2089,2090],{"class":1020},"(ui)\n",[974,2092,2094],{"class":976,"line":2093},31,[974,2095,1051],{"emptyLinePlaceholder":21},[974,2097,2099,2101,2103,2106,2108,2110,2113,2115],{"class":976,"line":2098},32,[974,2100,2057],{"class":1020},[974,2102,2060],{"class":980},[974,2104,2105],{"class":1211},"mount",[974,2107,1223],{"class":1020},[974,2109,1241],{"class":980},[974,2111,2112],{"class":1001},"#app",[974,2114,1241],{"class":980},[974,2116,1308],{"class":1020},[1646,2118,2120,2121,2123,2124],{"id":2119},"set-the-locale-prop-using-usei18n","Set the ",[957,2122,951],{}," prop using ",[957,2125,2126],{},"useI18n",[965,2128,2130],{"className":967,"code":2129,"filename":969,"language":34,"meta":970,"style":970},"\u003Cscript setup lang=\"ts\">\nimport { useI18n } from 'vue-i18n'\nimport * as locales from '@nuxt/ui/locale'\n\nconst { locale } = useI18n()\n\u003C/script>\n\n\u003Ctemplate>\n  \u003CUApp :locale=\"locales[locale]\">\n    \u003CRouterView />\n  \u003C/UApp>\n\u003C/template>\n",[957,2131,2132,2152,2171,2192,2196,2213,2221,2225,2233,2252,2260,2268],{"__ignoreMap":970},[974,2133,2134,2136,2138,2140,2142,2144,2146,2148,2150],{"class":976,"line":977},[974,2135,981],{"class":980},[974,2137,985],{"class":984},[974,2139,989],{"class":988},[974,2141,992],{"class":988},[974,2143,995],{"class":980},[974,2145,998],{"class":980},[974,2147,1002],{"class":1001},[974,2149,998],{"class":980},[974,2151,1007],{"class":980},[974,2153,2154,2156,2158,2161,2163,2165,2167,2169],{"class":976,"line":1010},[974,2155,1014],{"class":1013},[974,2157,1017],{"class":980},[974,2159,2160],{"class":1020}," useI18n",[974,2162,1024],{"class":980},[974,2164,1027],{"class":1013},[974,2166,1030],{"class":980},[974,2168,1800],{"class":1001},[974,2170,1035],{"class":980},[974,2172,2173,2175,2178,2181,2184,2186,2188,2190],{"class":976,"line":1038},[974,2174,1014],{"class":1013},[974,2176,2177],{"class":980}," *",[974,2179,2180],{"class":1013}," as",[974,2182,2183],{"class":1020}," locales ",[974,2185,1812],{"class":1013},[974,2187,1030],{"class":980},[974,2189,962],{"class":1001},[974,2191,1035],{"class":980},[974,2193,2194],{"class":976,"line":1048},[974,2195,1051],{"emptyLinePlaceholder":21},[974,2197,2198,2200,2202,2204,2206,2209,2211],{"class":976,"line":1054},[974,2199,1203],{"class":988},[974,2201,1017],{"class":980},[974,2203,1206],{"class":1020},[974,2205,1305],{"class":980},[974,2207,2208],{"class":980}," =",[974,2210,2160],{"class":1211},[974,2212,1896],{"class":1020},[974,2214,2215,2217,2219],{"class":976,"line":1064},[974,2216,1041],{"class":980},[974,2218,985],{"class":984},[974,2220,1007],{"class":980},[974,2222,2223],{"class":976,"line":1087},[974,2224,1051],{"emptyLinePlaceholder":21},[974,2226,2227,2229,2231],{"class":976,"line":1099},[974,2228,981],{"class":980},[974,2230,1059],{"class":984},[974,2232,1007],{"class":980},[974,2234,2235,2237,2239,2241,2243,2245,2248,2250],{"class":976,"line":1109},[974,2236,1067],{"class":980},[974,2238,1070],{"class":984},[974,2240,1073],{"class":988},[974,2242,995],{"class":980},[974,2244,998],{"class":980},[974,2246,2247],{"class":1001},"locales[locale]",[974,2249,998],{"class":980},[974,2251,1007],{"class":980},[974,2253,2254,2256,2258],{"class":976,"line":1289},[974,2255,1090],{"class":980},[974,2257,1093],{"class":984},[974,2259,1096],{"class":980},[974,2261,2262,2264,2266],{"class":976,"line":1296},[974,2263,1102],{"class":980},[974,2265,1070],{"class":984},[974,2267,1007],{"class":980},[974,2269,2270,2272,2274],{"class":976,"line":1302},[974,2271,1041],{"class":980},[974,2273,1059],{"class":984},[974,2275,1007],{"class":980},[949,2277,2279],{"id":2278},"dynamic-direction","Dynamic direction",[926,2281,2282,2283,2286,2287,2289],{},"Each locale has a ",[957,2284,2285],{},"dir"," property which will be used by the ",[957,2288,175],{}," component to set the directionality of all components.",[926,2291,2292,2293,2296,2297,2299,2300,2303,2304,2309],{},"In a multilingual application, you might want to set the ",[957,2294,2295],{},"lang"," and ",[957,2298,2285],{}," attributes on the ",[957,2301,2302],{},"\u003Chtml>"," element dynamically based on the user's locale, which you can do with the ",[1124,2305,2308],{"href":2306,"rel":2307},"https://unhead.unjs.io/usage/composables/use-head",[1638],"useHead"," composable:",[965,2311,2313],{"className":967,"code":2312,"filename":969,"language":34,"meta":970,"style":970},"\u003Cscript setup lang=\"ts\">\nimport { computed } from 'vue'\nimport { useI18n } from 'vue-i18n'\nimport { useHead } from '@unhead/vue'\nimport * as locales from '@nuxt/ui/locale'\n\nconst { locale } = useI18n()\n\nconst lang = computed(() => locales[locale.value].code)\nconst dir = computed(() => locales[locale.value].dir)\n\nuseHead({\n  htmlAttrs: {\n    lang,\n    dir\n  }\n})\n\u003C/script>\n\n\u003Ctemplate>\n  \u003CUApp :locale=\"locales[locale]\">\n    \u003CRouterView />\n  \u003C/UApp>\n\u003C/template>\n",[957,2314,2315,2335,2354,2372,2392,2410,2414,2430,2434,2466,2494,2498,2506,2515,2522,2527,2531,2537,2545,2549,2557,2575,2583,2591],{"__ignoreMap":970},[974,2316,2317,2319,2321,2323,2325,2327,2329,2331,2333],{"class":976,"line":977},[974,2318,981],{"class":980},[974,2320,985],{"class":984},[974,2322,989],{"class":988},[974,2324,992],{"class":988},[974,2326,995],{"class":980},[974,2328,998],{"class":980},[974,2330,1002],{"class":1001},[974,2332,998],{"class":980},[974,2334,1007],{"class":980},[974,2336,2337,2339,2341,2344,2346,2348,2350,2352],{"class":976,"line":1010},[974,2338,1014],{"class":1013},[974,2340,1017],{"class":980},[974,2342,2343],{"class":1020}," computed",[974,2345,1024],{"class":980},[974,2347,1027],{"class":1013},[974,2349,1030],{"class":980},[974,2351,34],{"class":1001},[974,2353,1035],{"class":980},[974,2355,2356,2358,2360,2362,2364,2366,2368,2370],{"class":976,"line":1038},[974,2357,1014],{"class":1013},[974,2359,1017],{"class":980},[974,2361,2160],{"class":1020},[974,2363,1024],{"class":980},[974,2365,1027],{"class":1013},[974,2367,1030],{"class":980},[974,2369,1800],{"class":1001},[974,2371,1035],{"class":980},[974,2373,2374,2376,2378,2381,2383,2385,2387,2390],{"class":976,"line":1048},[974,2375,1014],{"class":1013},[974,2377,1017],{"class":980},[974,2379,2380],{"class":1020}," useHead",[974,2382,1024],{"class":980},[974,2384,1027],{"class":1013},[974,2386,1030],{"class":980},[974,2388,2389],{"class":1001},"@unhead/vue",[974,2391,1035],{"class":980},[974,2393,2394,2396,2398,2400,2402,2404,2406,2408],{"class":976,"line":1054},[974,2395,1014],{"class":1013},[974,2397,2177],{"class":980},[974,2399,2180],{"class":1013},[974,2401,2183],{"class":1020},[974,2403,1812],{"class":1013},[974,2405,1030],{"class":980},[974,2407,962],{"class":1001},[974,2409,1035],{"class":980},[974,2411,2412],{"class":976,"line":1064},[974,2413,1051],{"emptyLinePlaceholder":21},[974,2415,2416,2418,2420,2422,2424,2426,2428],{"class":976,"line":1087},[974,2417,1203],{"class":988},[974,2419,1017],{"class":980},[974,2421,1206],{"class":1020},[974,2423,1305],{"class":980},[974,2425,2208],{"class":980},[974,2427,2160],{"class":1211},[974,2429,1896],{"class":1020},[974,2431,2432],{"class":976,"line":1099},[974,2433,1051],{"emptyLinePlaceholder":21},[974,2435,2436,2438,2441,2443,2445,2447,2450,2453,2456,2458,2461,2463],{"class":976,"line":1109},[974,2437,1203],{"class":988},[974,2439,2440],{"class":1020}," lang ",[974,2442,995],{"class":980},[974,2444,2343],{"class":1211},[974,2446,1223],{"class":1020},[974,2448,2449],{"class":980},"()",[974,2451,2452],{"class":988}," =>",[974,2454,2455],{"class":1020}," locales[locale",[974,2457,2060],{"class":980},[974,2459,2460],{"class":1020},"value]",[974,2462,2060],{"class":980},[974,2464,2465],{"class":1020},"code)\n",[974,2467,2468,2470,2473,2475,2477,2479,2481,2483,2485,2487,2489,2491],{"class":976,"line":1289},[974,2469,1203],{"class":988},[974,2471,2472],{"class":1020}," dir ",[974,2474,995],{"class":980},[974,2476,2343],{"class":1211},[974,2478,1223],{"class":1020},[974,2480,2449],{"class":980},[974,2482,2452],{"class":988},[974,2484,2455],{"class":1020},[974,2486,2060],{"class":980},[974,2488,2460],{"class":1020},[974,2490,2060],{"class":980},[974,2492,2493],{"class":1020},"dir)\n",[974,2495,2496],{"class":976,"line":1296},[974,2497,1051],{"emptyLinePlaceholder":21},[974,2499,2500,2502,2504],{"class":976,"line":1302},[974,2501,2308],{"class":1211},[974,2503,1223],{"class":1020},[974,2505,1226],{"class":980},[974,2507,2508,2511,2513],{"class":976,"line":1311},[974,2509,2510],{"class":984},"  htmlAttrs",[974,2512,963],{"class":980},[974,2514,1286],{"class":980},[974,2516,2517,2520],{"class":976,"line":1320},[974,2518,2519],{"class":1020},"    lang",[974,2521,1244],{"class":980},[974,2523,2524],{"class":976,"line":1325},[974,2525,2526],{"class":1020},"    dir\n",[974,2528,2529],{"class":976,"line":1334},[974,2530,1299],{"class":980},[974,2532,2533,2535],{"class":976,"line":1353},[974,2534,1305],{"class":980},[974,2536,1308],{"class":1020},[974,2538,2539,2541,2543],{"class":976,"line":1362},[974,2540,1041],{"class":980},[974,2542,985],{"class":984},[974,2544,1007],{"class":980},[974,2546,2547],{"class":976,"line":1371},[974,2548,1051],{"emptyLinePlaceholder":21},[974,2550,2551,2553,2555],{"class":976,"line":1727},[974,2552,981],{"class":980},[974,2554,1059],{"class":984},[974,2556,1007],{"class":980},[974,2558,2559,2561,2563,2565,2567,2569,2571,2573],{"class":976,"line":1728},[974,2560,1067],{"class":980},[974,2562,1070],{"class":984},[974,2564,1073],{"class":988},[974,2566,995],{"class":980},[974,2568,998],{"class":980},[974,2570,2247],{"class":1001},[974,2572,998],{"class":980},[974,2574,1007],{"class":980},[974,2576,2577,2579,2581],{"class":976,"line":1729},[974,2578,1090],{"class":980},[974,2580,1093],{"class":984},[974,2582,1096],{"class":980},[974,2584,2585,2587,2589],{"class":976,"line":1730},[974,2586,1102],{"class":980},[974,2588,1070],{"class":984},[974,2590,1007],{"class":980},[974,2592,2593,2595,2597],{"class":976,"line":1731},[974,2594,1041],{"class":980},[974,2596,1059],{"class":984},[974,2598,1007],{"class":980},[935,2600,2602],{"id":2601},"supported-languages","Supported languages",[2601,2604],{},[2606,2607,2608],"style",{},"html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .sfNiH, html code.shiki .sfNiH{--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC}",{"title":970,"searchDepth":1010,"depth":1010,"links":2610},[2611,2618],{"id":937,"depth":1010,"text":938,"children":2612},[2613,2614,2615,2616,2617],{"id":951,"depth":1038,"text":952},{"id":1118,"depth":1038,"text":1119},{"id":1405,"depth":1038,"text":1406},{"id":1629,"depth":1038,"text":1630},{"id":2278,"depth":1038,"text":2279},{"id":2601,"depth":1010,"text":2602},"md",{},{"icon":125},{"title":121,"description":124},"QMuiXXm06QtAl6n7yCk50vE470ROKYfOxbYD7Sc0wZ4",{"data":2625,"body":2626},{},{"type":2627,"children":2628},"root",[2629],{"type":172,"tag":926,"props":2630,"children":2631},{},[2632],{"type":2633,"value":124},"text",1765478779572]