[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"github-release-nuxt-ui-v4.9.0":3,"$f2v3tzw7dti6zg":-1},{"adjacent":4,"latestReleases":16,"relatedArticles":34,"relatedArticlesAreVersioned":8,"release":43},{"newer":5,"older":11},{"htmlUrl":6,"id":7,"isPrerelease":8,"name":9,"publishedAt":10,"tagName":9},"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Freleases\u002Ftag\u002Fv4.10.0","019f6acc-642e-757c-b85b-fa657eec332f",false,"v4.10.0","2026-07-16T08:23:12.000Z",{"htmlUrl":12,"id":13,"isPrerelease":8,"name":14,"publishedAt":15,"tagName":14},"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Freleases\u002Ftag\u002Fv4.8.2","019e935d-0645-70cc-8408-cf83cd66b551","v4.8.2","2026-06-04T14:48:20.000Z",[17,21,25,29,33],{"id":18,"isPrerelease":8,"name":19,"publishedAt":20,"tagName":19},"01a0f831-ca6d-75a3-b346-cd122695e021","v4.11.3","2026-10-01T13:36:34.000Z",{"id":22,"isPrerelease":8,"name":23,"publishedAt":24,"tagName":23},"01a0c8fc-d675-768f-bc9d-b203b4ef4d1e","v4.11.2","2026-09-22T10:57:12.000Z",{"id":26,"isPrerelease":8,"name":27,"publishedAt":28,"tagName":27},"01a07c99-2835-7139-a2b4-dc1366a91f12","v4.11.1","2026-09-07T12:52:35.000Z",{"id":30,"isPrerelease":8,"name":31,"publishedAt":32,"tagName":31},"01a0250d-0e12-72ec-8e1b-cbf215572881","v4.11.0","2026-08-21T15:23:38.000Z",{"id":7,"isPrerelease":8,"name":9,"publishedAt":10,"tagName":9},[35],{"id":36,"image":37,"publishedAt":38,"slug":39,"sourceName":40,"summary":41,"title":42},"019ddc9c-805c-71c8-81be-4ae362cfeb7c","https:\u002F\u002Fblog.vueschool.io\u002Fwp-content\u002Fuploads\u002F2026\u002F04\u002Fcollaborative-editor-example.jpg","2026-04-28T00:00:34.000Z","vibe-coding-a-collaborative-editor-with-comment-support-with-nuxt-ui-and-jazz","VueSchool","This article explores the creation of a collaborative editor using Nuxt UI and Jazz, focusing on real-time editing and comment support. It discusses the final product's features, including a rich text editor with a toolbar, image upload capabilities, and a layout optimized for collaboration. The author also shares insights on leveraging AI in the development process.","Vibe Coding a Collaborative Editor with Comment Support with Nuxt UI and Jazz",{"htmlUrl":44,"id":45,"isPrerelease":8,"name":46,"projectId":47,"projectName":48,"projectOwner":49,"projectRepo":50,"projectUrl":51,"publishedAt":52,"summary":53,"tagName":46,"updatedAt":54,"breakingChangesHtml":55,"displayName":56,"hasBreakingChanges":8,"indexable":57,"notesHtml":58,"version":59},"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Freleases\u002Ftag\u002Fv4.9.0","019ed64f-b307-721e-b846-2951dccc4fb7","v4.9.0","019d75ac-bef8-7578-b1f1-429ff8d0dc0f","Nuxt UI","nuxt","ui","https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui","2026-06-17T14:18:32.000Z","Nuxt UI v4.9.0 introduces a versatile `Calendar` component with a new `type` prop for selecting dates, months, or years, enhancing navigation options. Additionally, the new `useTour` composable facilitates guided tours with customizable popovers, and a build-time `theme.unstyled` option allows developers to strip default theme classes for greater design flexibility.","2026-06-17T16:00:11.742Z",null,"Nuxt UI v4.9.0",true,"\u003Ch2>✨ Highlights\u003C\u002Fh2>\n\u003Ch3>:calendar: Calendar month and year selection\u003C\u002Fh3>\n\u003Cp>The \u003Ca href=\"https:\u002F\u002Fui.nuxt.com\u002Fdocs\u002Fcomponents\u002Fcalendar\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>Calendar\u003C\u002Fcode>\u003C\u002Fa> component gains a single \u003Ccode>type\u003C\u002Fcode> prop (\u003Ccode>date\u003C\u002Fcode> | \u003Ccode>month\u003C\u002Fcode> | \u003Ccode>year\u003C\u002Fcode>, default \u003Ccode>date\u003C\u002Fcode>) that renders it as a day, month or year picker, covering both standalone pickers and quick navigation:\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-vue\">&lt;script setup lang=&quot;ts&quot;&gt;\nconst value = shallowRef(new CalendarDate(2026, 6, 17))\n&lt;\u002Fscript&gt;\n\n&lt;template&gt;\n  &lt;UCalendar v-model=&quot;value&quot; type=&quot;month&quot; \u002F&gt;\n&lt;\u002Ftemplate&gt;\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cblockquote>\n\u003Cp>[!TIP]\u003Cbr>In \u003Ccode>date\u003C\u002Fcode> mode the heading also becomes a clickable button that cycles \u003Ccode>day → month → year\u003C\u002Fcode>, so you can jump to a month or year without clicking through \u003Ccode>prev\u003C\u002Fcode> \u002F \u003Ccode>next\u003C\u002Fcode> repeatedly. This is controlled by the new \u003Ccode>viewControls\u003C\u002Fcode> and \u003Ccode>viewButton\u003C\u002Fcode> props and works with \u003Ccode>range\u003C\u002Fcode>.\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Ch3>:compass: useTour composable\u003C\u002Fh3>\n\u003Cp>The new \u003Ca href=\"https:\u002F\u002Fui.nuxt.com\u002Fdocs\u002Fcomposables\u002Fuse-tour\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>useTour\u003C\u002Fcode>\u003C\u002Fa> composable drives guided tours by re-anchoring a single \u003Ca href=\"https:\u002F\u002Fui.nuxt.com\u002Fdocs\u002Fcomponents\u002Fpopover\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>Popover\u003C\u002Fcode>\u003C\u002Fa> across steps. It owns the step state and resolves each step&#39;s \u003Ccode>target\u003C\u002Fcode> into a \u003Ccode>reference\u003C\u002Fcode> you bind to \u003Ccode>&lt;UPopover&gt;\u003C\u002Fcode>, while you keep full control over the content and navigation:\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-vue\">&lt;script setup lang=&quot;ts&quot;&gt;\nconst card = useTemplateRef(&#39;card&#39;)\n\nconst tour = useTour([\n  { target: &#39;#cta&#39;, title: &#39;Get started&#39; },\n  { target: () =&gt; card.value, title: &#39;Profile&#39;, side: &#39;right&#39; },\n  { target: null, title: &#39;All set&#39; }\n])\n&lt;\u002Fscript&gt;\n\n&lt;template&gt;\n  &lt;UButton @click=&quot;tour.start()&quot;&gt;Start tour&lt;\u002FUButton&gt;\n\n  &lt;UPopover :open=&quot;tour.open.value&quot; :reference=&quot;tour.reference.value&quot; :dismissible=&quot;false&quot;&gt;\n    &lt;template #content&gt;\n      &lt;!-- your content + buttons --&gt;\n      &lt;UButton :disabled=&quot;!tour.hasPrev.value&quot; @click=&quot;tour.prev()&quot;&gt;Back&lt;\u002FUButton&gt;\n      &lt;UButton @click=&quot;tour.next()&quot;&gt;{{ tour.hasNext.value ? &#39;Next&#39; : &#39;Finish&#39; }}&lt;\u002FUButton&gt;\n    &lt;\u002Ftemplate&gt;\n  &lt;\u002FUPopover&gt;\n&lt;\u002Ftemplate&gt;\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch3>:scissors: Override default classes\u003C\u002Fh3>\n\u003Cp>A new build-time \u003Ca href=\"https:\u002F\u002Fui.nuxt.com\u002Fdocs\u002Fgetting-started\u002Finstallation\u002Fnuxt#themeunstyled\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>theme.unstyled\u003C\u002Fcode>\u003C\u002Fa> option strips Nuxt UI&#39;s default theme classes from every component, keeping only their structure and the classes you provide through \u003Ccode>class\u003C\u002Fcode>, \u003Ccode>ui\u003C\u002Fcode> or \u003Ccode>app.config.ui\u003C\u002Fcode>. This lets you bring your own design system on top of the components&#39; logic and accessibility, or cut HTML and bundle bloat:\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-ts\">export default defineNuxtConfig({\n  modules: [&#39;@nuxt\u002Fui&#39;],\n  css: [&#39;~\u002Fassets\u002Fcss\u002Fmain.css&#39;],\n  ui: {\n    theme: {\n      unstyled: true\n    }\n  }\n})\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cblockquote>\n\u003Cp>[!WARNING]\u003Cbr>This strips \u003Cstrong>structural\u003C\u002Fstrong> classes too (positioning, transitions, flex\u002Fgrid), not just cosmetic ones. Layout-heavy components like \u003Ccode>Modal\u003C\u002Fcode>, \u003Ccode>Drawer\u003C\u002Fcode> or \u003Ccode>Calendar\u003C\u002Fcode> will need you to re-supply their layout.\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Cp>For more surgical control, slot classes can now be a \u003Ccode>(defaults) =&gt; classes\u003C\u002Fcode> \u003Ca href=\"https:\u002F\u002Fui.nuxt.com\u002Fdocs\u002Fgetting-started\u002Ftheme\u002Fcomponents\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">function\u003C\u002Fa> that \u003Cstrong>replaces\u003C\u002Fstrong> the slot&#39;s defaults instead of merging onto them. It receives the resolved defaults so you can reuse part of them, while plain strings keep merging exactly as before. It works in \u003Ccode>:ui\u003C\u002Fcode>, \u003Ccode>app.config.ui\u003C\u002Fcode> and \u003Ccode>&lt;UTheme :ui&gt;\u003C\u002Fcode>:\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-vue\">&lt;template&gt;\n  &lt;UButton :ui=&quot;{ base: () =&gt; &#39;text-3xl font-bold&#39; }&quot; label=&quot;Button&quot; \u002F&gt;\n&lt;\u002Ftemplate&gt;\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch3>:dart: Uniform focus styles\u003C\u002Fh3>\n\u003Cp>Every component now shares a single \u003Ca href=\"https:\u002F\u002Fui.nuxt.com\u002Fdocs\u002Fgetting-started\u002Ftheme\u002Fcss-variables#focus\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>focus-visible\u003C\u002Fcode>\u003C\u002Fa> language: a soft outline halo tinted with the component&#39;s \u003Ccode>color\u003C\u002Fcode> (e.g. \u003Ccode>outline-primary\u002F25\u003C\u002Fcode>), so the indicator stays consistent and accessible across every variant and color. Tab panels, scrollable regions and overlay links that browsers make focusable now show the halo too, instead of hiding focus entirely.\u003C\u002Fp>\n\u003Cp>If you prefer one outline color across your whole app regardless of component color, a single global rule in your \u003Ccode>main.css\u003C\u002Fcode> does it:\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-css\">*,\n::before,\n::after {\n  @apply outline-primary\u002F25;\n}\n\n*:focus-visible,\n*:has(&gt; a:focus-visible) {\n  --tw-ring-color: var(--ui-primary);\n}\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cblockquote>\n\u003Cp>[!NOTE]\u003Cbr>Check out the before\u002Fafter preview images in \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fpull\u002F6576\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fpull\u002F6576\u003C\u002Fa>.\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Ch2>🚀 Features\u003C\u002Fh2>\n\u003Cul>\n\u003Cli>\u003Cstrong>Calendar:\u003C\u002Fstrong> add month and year selection (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fissues\u002F6582\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">#6582\u003C\u002Fa>) (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fcommit\u002Fca3c72eb6606da882a6aba5c9f35a3ff0dddf820\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">ca3c72e\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>ChatMessages:\u003C\u002Fstrong> expose \u003Ccode>registerMessageRef\u003C\u002Fcode> (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fissues\u002F6275\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">#6275\u003C\u002Fa>) (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fcommit\u002Ff99778e3e7639c11f6b46a4e4c57fbc66077195a\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">f99778e\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>components:\u003C\u002Fstrong> allow hiding \u003Ccode>icon\u003C\u002Fcode> with \u003Ccode>false\u003C\u002Fcode> (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fissues\u002F6597\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">#6597\u003C\u002Fa>) (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fcommit\u002F09eb639a33460e1ece8fcfc7dd9c2f523af9b0b4\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">09eb639\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>ContentSearch\u002FDashboardSearch:\u003C\u002Fstrong> forward input config to command palette (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fissues\u002F6312\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">#6312\u003C\u002Fa>) (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fcommit\u002F5199b7e1d262d693af4114884f06bd9126cd3202\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">5199b7e\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>FileUpload:\u003C\u002Fstrong> expose \u003Ccode>removeFile\u003C\u002Fcode> in slots (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fissues\u002F6492\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">#6492\u003C\u002Fa>) (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fcommit\u002F4da3a5d34373b8c99a7304d5cd143da8273a9238\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">4da3a5d\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Modal\u002FSlideover:\u003C\u002Fstrong> add \u003Ccode>leave\u003C\u002Fcode> and \u003Ccode>enter\u003C\u002Fcode> events (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fissues\u002F6596\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">#6596\u003C\u002Fa>) (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fcommit\u002F006324aeb91ae4054c314c9cb4a9d552fe04e44e\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">006324a\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>module:\u003C\u002Fstrong> add \u003Ccode>theme.unstyled\u003C\u002Fcode> option (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fissues\u002F6551\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">#6551\u003C\u002Fa>) (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fcommit\u002Fa2a8bc907a5e490fd056e112f86e52c6416b8636\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">a2a8bc9\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>PinInput:\u003C\u002Fstrong> add \u003Ccode>separator\u003C\u002Fcode> prop (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fissues\u002F6392\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">#6392\u003C\u002Fa>) (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fcommit\u002F89b30e8ebe2b3b3e637ba823d1c35bc2c2d32a68\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">89b30e8\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>ScrollArea:\u003C\u002Fstrong> add \u003Ccode>shadow\u003C\u002Fcode> prop (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fissues\u002F6561\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">#6561\u003C\u002Fa>) (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fcommit\u002Fd850ae60531787984ba2416d6fca99626637b41b\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">d850ae6\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Select\u002FSelectMenu:\u003C\u002Fstrong> use \u003Ccode>multiple\u003C\u002Fcode> in theme (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fissues\u002F6554\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">#6554\u003C\u002Fa>) (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fcommit\u002Ff66eb65f5cb80e245491a6de75d9bb3b175be011\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">f66eb65\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Sidebar:\u003C\u002Fstrong> add \u003Ccode>transition\u003C\u002Fcode> prop (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fissues\u002F6484\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">#6484\u003C\u002Fa>) (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fcommit\u002Faf80a674a5061dea3272ea113fa497d698fc184b\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">af80a67\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>theme:\u003C\u002Fstrong> allow replacing slot classes with a function (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fissues\u002F6562\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">#6562\u003C\u002Fa>) (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fcommit\u002Fea576e2f321665574c416af34e7ef04e68654a79\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">ea576e2\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>theme:\u003C\u002Fstrong> uniformize focus styles across components (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fissues\u002F6576\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">#6576\u003C\u002Fa>) (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fcommit\u002Fb026ca2cdb0e4d6aff6d271a95e2d7e5e1bd7e3f\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">b026ca2\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>useTour:\u003C\u002Fstrong> new composable (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fissues\u002F6557\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">#6557\u003C\u002Fa>) (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fcommit\u002Fdc0515128ee6783b6cebd410c85a3e405fb7872a\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">dc05151\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>vite:\u003C\u002Fstrong> add \u003Ccode>root\u003C\u002Fcode> option to override \u003Ccode>.nuxt-ui\u003C\u002Fcode> directory location (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fissues\u002F6595\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">#6595\u003C\u002Fa>) (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fcommit\u002Fcccb3d5a4a3e837173b1d31e6397efaedb032f59\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">cccb3d5\u003C\u002Fa>)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch2>🐛 Bug Fixes\u003C\u002Fh2>\n\u003Cul>\n\u003Cli>\u003Cstrong>CommandPalette:\u003C\u002Fstrong> only scroll to highlighted item when focused (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fissues\u002F6579\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">#6579\u003C\u002Fa>) (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fcommit\u002F02259a6ae963408b2a971722b9b66d225a0505f3\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">02259a6\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Link:\u003C\u002Fstrong> set default for locale prop (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fissues\u002F6563\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">#6563\u003C\u002Fa>) (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fcommit\u002Fe9ab75888a3143f77ebcc18b8fe40ba370d065d5\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">e9ab758\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>module:\u003C\u002Fstrong> remove inline script in SPA mode for strict CSP (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fissues\u002F6577\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">#6577\u003C\u002Fa>) (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fcommit\u002F7225e9f451e405d6b07de8ee44b93a11a50b55a8\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">7225e9f\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>ProseCodeCollapse:\u003C\u002Fstrong> cap root \u003Ccode>max-height\u003C\u002Fcode> instead of toggling pre \u003Ccode>height\u003C\u002Fcode> (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fissues\u002F6565\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">#6565\u003C\u002Fa>) (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fcommit\u002F52d3c45478d1cfc88e288a093407d459ccf5ad48\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">52d3c45\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>ProseKbd:\u003C\u002Fstrong> type default slot as \u003Ccode>VNode[]\u003C\u002Fcode> (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fcommit\u002F52367b1ac375e86b4f996ed07958114e9d63a81a\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">52367b1\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>SelectMenu:\u003C\u002Fstrong> bind \u003Ccode>id\u003C\u002Fcode> and aria attributes on trigger (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fissues\u002F6572\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">#6572\u003C\u002Fa>) (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fcommit\u002Fc3bef7a21bdd67343492f01e874044e59894b95b\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">c3bef7a\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Select:\u003C\u002Fstrong> open menu on label click (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fissues\u002F6575\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">#6575\u003C\u002Fa>) (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fcommit\u002Fe8d18c37a0ebfe527ddc8fc38846d68f52e273be\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">e8d18c3\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Tabs:\u003C\u002Fstrong> render active indicator during SSR (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fissues\u002F6570\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">#6570\u003C\u002Fa>) (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fcommit\u002F9e5b8a6bff4f9f12fc6282b450466ec68dc9017d\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">9e5b8a6\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>templates:\u003C\u002Fstrong> resolve vite root to an absolute path for \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fissues\u002Fbuild\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">#build\u003C\u002Fa> aliases (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fissues\u002F6586\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">#6586\u003C\u002Fa>) (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fcommit\u002F238e291791737b15fe94eeac6f93468cfcf932bb\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">238e291\u003C\u002Fa>)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch2>:globe_with_meridians: Locales\u003C\u002Fh2>\n\u003Cul>\n\u003Cli>\u003Cstrong>locale:\u003C\u002Fstrong> add Latvian language (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fissues\u002F6552\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">#6552\u003C\u002Fa>) (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fcommit\u002Ffa5253825258dfb7e543dd84452602979b329703\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">fa52538\u003C\u002Fa>)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch2>❤️ Contributors\u003C\u002Fh2>\n\u003Cul>\n\u003Cli>@benjamincanac\u003C\u002Fli>\n\u003Cli>@innocenzi\u003C\u002Fli>\n\u003Cli>@zAlweNy26\u003C\u002Fli>\n\u003Cli>@maximepvrt\u003C\u002Fli>\n\u003Cli>@OrbisK\u003C\u002Fli>\n\u003Cli>@mikenewbon\u003C\u002Fli>\n\u003Cli>@al1maher\u003C\u002Fli>\n\u003Cli>@emilsgulbis\u003C\u002Fli>\n\u003Cli>@martinszeltins\u003C\u002Fli>\n\u003Cli>@cydrickn\u003C\u002Fli>\n\u003Cli>@neukinal\u003C\u002Fli>\n\u003Cli>@hendrikheil\u003C\u002Fli>\n\u003Cli>@johnson-jnr\u003C\u002Fli>\n\u003Cli>@ReCoN-96\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Full Changelog\u003C\u002Fstrong>: \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fcompare\u002Fv4.8.2...v4.9.0\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\u002F\u002Fgithub.com\u002Fnuxt\u002Fui\u002Fcompare\u002Fv4.8.2...v4.9.0\u003C\u002Fa>\u003C\u002Fp>\n","4.9.0"]