\r\n \u003C/div>\r\n\u003C/template>\r\n\u003Cscript setup lang=\"ts\">\r\nwithDefaults(\r\n defineProps\u003C{\r\n variant: \"fill\" | \"ghost\";\r\n }>(),\r\n { variant: \"fill\" }\r\n);\r\n\u003C/script>\r\n```\r\n\r\n`~/.nuxt/components.d.ts`\r\n\r\n```TypeScript\r\ndeclare module 'vue' {\r\n export interface GlobalComponents {\r\n //...\r\n 'MyButton': typeof import(\"../../src/runtime/components/MyButton.vue\")['default']\r\n //...\r\n }\r\n}\r\n\r\nexport const MyButton: typeof import(\"../../src/runtime/components/MyButton.vue\")['default']\r\n\r\nexport const componentNames: string[]\r\n```\r\n\r\n\r\n### Correct Intellisense\r\n\r\nVsCode popopver hovering `'MyButton'` in `~/.nuxt/components.d.ts`\r\n\r\n```TypeScript\r\n(property) GlobalComponents['MyButton']: __VLS_WithTemplateSlots\u003CDefineComponent\u003C{\r\n variant: {\r\n type: PropType\u003C\"fill\" | \"ghost\">;\r\n required: true;\r\n default: string;\r\n };\r\n}, {}, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, ... 5 more ..., {}>, {\r\n ...;\r\n}>\r\n````\r\n\r\n### Wrong Intellisense\r\n\r\nVsCode popopver hovering `\u003CMyButton />` in the template block of `~/app.vue` (or any other template)\r\n\r\n```TypeScript\r\n(property) 'MyButton': DefineComponent\u003C{}, {}, any>\r\n```\r\n\r\n### Additional context\r\n\r\nThe above example is the current state of the reproduction repo. But a different, but similar behavior happened in other reports (for example a yarn workspace repo). Strange enough, sometimes, it works fine...\r\n\r\n### Logs\r\n\r\n_No response_",[3196,3199,3200,3201],{"name":3197,"color":3198},"types","2875C3",{"name":3183,"color":3184},{"name":3186,"color":3187},{"name":3202,"color":3203},"upstream","E8A36D",21933,"Component appears to be untyped in template block","2023-12-12T14:36:22Z","https://github.com/nuxt/nuxt/issues/21933",0.6746763,{"description":3210,"labels":3211,"number":3215,"owner":3146,"repository":3147,"state":3164,"title":3216,"updated_at":3217,"url":3218,"score":3219},"### Environment\n\n- Operating System: `Darwin`\n- Node Version: `v22.17.0`\n- Nuxt Version: `3.17.6`\n- CLI Version: `3.25.1`\n- Nitro Version: `2.11.13`\n- Package Manager: `pnpm@9.5.0`\n- Builder: `-`\n- User Config: `app`, `compatibilityDate`, `css`, `dayjs`, `devtools`, `fonts`, `icon`, `modules`, `pinia`, `ui`\n- Runtime Modules: `@nuxt/eslint@1.5.2`, `@nuxt/fonts@0.11.4`, `@nuxt/icon@1.15.0`, `@nuxt/scripts@0.11.9`, `@nuxt/image@1.10.0`, `@nuxt/ui@3.2.0`, `@formkit/auto-animate/nuxt@0.8.2`, `@pinia/nuxt@0.11.1`, `dayjs-nuxt@2.1.11`, `nuxt-lodash@2.5.3`\n- Build Modules: `-`\n\n\n### Is this bug related to Nuxt or Vue?\n\nNuxt\n\n### Version\n\nv3.2.0\n\n### Reproduction\n\n```\n\u003Ctemplate>\n \u003CURadioGroup\n color=\"primary\"\n variant=\"card\"\n orientation=\"horizontal\"\n indicator=\"hidden\"\n :items=\"items\">\n \u003Ctemplate #label=\"{ item }\">\n \u003Ch4>{{ item.label }}\u003C/h4>\n \u003C/template>\n \u003C/URadioGroup>\n\u003C/template>\n\u003Cscript lang=\"ts\" setup>\nimport type { RadioGroupItem } from '@nuxt/ui'\nconst items = ref\u003CRadioGroupItem[]>([\n {\n label: 'Telegram',\n value: 'Telegram',\n description: 'Telegram',\n },\n {\n label: 'Whatsapp',\n value: 'Whatsapp',\n description: 'Whatsapp',\n },\n {\n label: 'Instagram',\n value: 'Instagram',\n description: 'Instagram',\n },\n {\n label: 'Facebook',\n value: 'Facebook',\n description: 'Facebook',\n },\n])\n\u003C/script>\n\n```\n\n### Description\n\nThere is a type issue on the `item` props of the `label` slots, when i try to accessing `item.label`.\n\nThere error message is:\n```\nProperty 'label' does not exist on type '(AcceptableValue | { [x: string]: any; label?: string | undefined; description?: string | undefined; disabled?: boolean | undefined; value?: AcceptableValue | undefined; class?: any; ui?: { ...; } | undefined; }) & { ...; }'.\n Property 'label' does not exist on type 'string & { id: string; }'.ts-plugin(2339)\n```\n\n\nhere is the screenshot:\n\n\u003Cimg width=\"522\" height=\"115\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/30eefcf5-db2c-43c6-b412-df0d3d677fd2\" />\n\n\u003Cimg width=\"227\" height=\"237\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/87e19582-1664-4f72-825a-4e8c167c6305\" />\n\n### Additional context\n\n_No response_\n\n### Logs\n\n```shell-script\n\n```",[3212,3213,3214],{"name":3140,"color":3141},{"name":3161,"color":3162},{"name":3143,"color":3144},4533,"[URadioGroup] Typing Issue on Label Slots","2025-07-16T19:58:07Z","https://github.com/nuxt/ui/issues/4533",0.67592776,{"description":3221,"labels":3222,"number":3226,"owner":3146,"repository":3146,"state":3164,"title":3227,"updated_at":3228,"url":3229,"score":3230},"### Environment\r\n\r\n------------------------------\r\n- Operating System: Linux\r\n- Node Version: v18.15.0\r\n- Nuxt Version: 3.6.1\r\n- Nitro Version: 2.5.2\r\n- Package Manager: pnpm@8.6.0\r\n- Builder: vite\r\n- User Config: extends, telemetry, ssr, nitro, fontMetrics, routeRules, runtimeConfig, build, modules, components, bugsnag, devtools, i18n, app, dnGraphqlClient, vite, plugins\r\n- Runtime Modules: @nuxtjs/fontaine@0.4.0, @pinia/nuxt@0.4.11, @nuxt/devtools@0.6.6, nuxt-bugsnag@5.9.2, @digitalnatives/css-variables/nuxt@5.1.0, @digitalnatives/graphql-client@3.2.2, @nuxtjs/i18n@8.0.0-beta.12\r\n- Build Modules: -\r\n------------------------------\r\n\r\n### Reproduction\r\n\r\nSetting up a component inheritance pattern:\r\n\r\n- With ssr: true...\r\n- Base component with a root-level `\u003Ccomponent>` element and one or more slots\r\n- An extending component which \"inherits\" the slots of the base component using `$slots` in the template;\r\n- Use the extending component somewhere\r\n- On the server, an error is thrown: `[1:54:29 PM] [Vue warn]: Property \"name\" was accessed during render but is not defined on instance.`\r\n- On the client, a hydration error is thrown: SSR renders no content within the slots, client-side the component is rendered correctly however\r\n\r\nSee https://codesandbox.io/p/github/nuxt/starter/csb-rhhp8s/draft/determined-joliot?file=/app.vue:3,69\r\n\r\n### Describe the bug\r\n\r\nIt seems server-side there is some problem with SSR trying to pass slots to a dynamic `\u003Ccomponent>`\r\n\r\nI would expect this pattern to work, but somehow the slot name is getting lost somewhere\r\n\r\n```\r\n\u003Ctemplate>\r\n \u003Ccomponent\r\n :is=\"element\"\r\n >\r\n \u003Cslot />\r\n \u003C/component>\r\n\u003C/template>\r\n\r\n\u003Cscript>\r\n'use strict';\r\n\r\nexport default {\r\n props: {\r\n element: {\r\n type: String,\r\n required: false,\r\n default: 'button'\r\n }\r\n }\r\n};\r\n\u003C/script>\r\n```\r\n\r\n```vue\r\n\u003Ctemplate>\r\n \u003CBaseComponent>\r\n \u003Ctemplate v-for=\"(_, name) in $slots\" v-slot:[name]=\"scope\">\r\n \u003Cslot :name=\"name\" v-bind=\"scope\" />\r\n \u003C/template>\r\n \u003C/BaseComponent>\r\n\u003C/template>\r\n\r\n```\r\n\r\n### Additional context\r\n\r\n_No response_\r\n\r\n### Logs\r\n\r\n_No response_",[3223,3224,3225],{"name":3183,"color":3184},{"name":3186,"color":3187},{"name":3202,"color":3203},21915,"Hydration error for slot \"inheritance\" on dynamic components","2023-07-25T06:43:06Z","https://github.com/nuxt/nuxt/issues/21915",0.67604935,{"description":3232,"labels":3233,"number":3241,"owner":3146,"repository":3146,"state":3164,"title":3242,"updated_at":3243,"url":3244,"score":3245},"### Environment\r\n\r\n------------------------------\r\n- Operating System: Linux\r\n- Node Version: v18.18.0\r\n- Nuxt Version: 3.9.3\r\n- CLI Version: 3.10.0\r\n- Nitro Version: 2.8.1\r\n- Package Manager: npm@10.2.3\r\n- Builder: -\r\n- User Config: devtools, experimental\r\n- Runtime Modules: -\r\n- Build Modules: -\r\n------------------------------\r\n\r\n### Reproduction\r\n\r\nhttps://stackblitz.com/edit/nuxt-issues-25423\r\n\r\n### Describe the bug\r\n\r\nUsing nested slots in a server components + `nuxt-client` breaks:\r\n\r\nExample\r\n\r\n```vue\r\n\u003C!-- ServerComp.vue -->\r\n\u003Ctemplate>\r\n \u003Cdiv>\r\n \u003CAppButton nuxt-client>\r\n \u003Cslot />\r\n \u003C/AppButton>\r\n \u003C/div>\r\n\u003C/template>\r\n```\r\n\r\n```vue\r\n\u003C!-- App.vue -->\r\n\u003Ctemplate>\r\n \u003Cdiv>\r\n \u003CServerComp>\r\n Some slot content here\r\n \u003C/ServerComp>\r\n \u003C/div>\r\n\u003C/template>\r\n```\r\n\r\n### Additional context\r\n\r\n_No response_\r\n\r\n### Logs\r\n\r\n_No response_",[3234,3235,3238],{"name":3183,"color":3184},{"name":3236,"color":3237},"🔨 p3-minor","FBCA04",{"name":3239,"color":3240},"server components","839413",25423,"Respect named slots in server components","2024-03-06T15:26:20Z","https://github.com/nuxt/nuxt/issues/25423",0.67627496,{"description":3247,"labels":3248,"number":3254,"owner":3146,"repository":3147,"state":3164,"title":3255,"updated_at":3256,"url":3257,"score":3258},"### Environment\n\n- Operating System: Darwin\n- Node Version: v22.14.0\n- Nuxt Version: 4.0.3\n- CLI Version: 3.27.0\n- Nitro Version: 2.12.4\n- Package Manager: pnpm@10.15.1\n- Builder: -\n- User Config: -\n- Runtime Modules: -\n- Build Modules: -\n\n### Is this bug related to Nuxt or Vue?\n\nNuxt\n\n### Package\n\nv3.x\n\n### Version\n\nlatest\n\n### Reproduction\n\nhttps://codesandbox.io/p/devbox/frosty-goodall-2wn4kw\n\n### Description\n\nIf we make a condition for the appearance of a slot and it is initially false, then we will never see it. This is because slots are not reactive.\n\nComponents that contain an error:\n\n- CheckboxGroup\n- DropdownMenu\n- DropdownMenuContent\n- ContextMenu\n- ChangelogVersions\n- ChatMessages\n- ChatPrompt\n- DashboardSearch\n- DashboardSearchButton\n- content/ContentSearch\n- content/ContentSearchButton\n\n### Solutions\n\nOne way to solve this is to not create a variable, but to immediately write `omit(slots, [‘...’])` in the template. This will fix the rendering error, but vue will still not show the number of available slots. ",[3249,3250,3251],{"name":3140,"color":3141},{"name":3161,"color":3162},{"name":3252,"color":3253},"p3-low","0E8A16",4947,"No re-rendering in proxySlots","2025-09-14T06:40:03Z","https://github.com/nuxt/ui/issues/4947",0.6767623,{"description":3260,"labels":3261,"number":3265,"owner":3146,"repository":3146,"state":3164,"title":3266,"updated_at":3267,"url":3268,"score":3269},"Scoped slots seem to be broken in Nuxt.js for me. \r\nProperties don't seem to be being re-scoped using 'slot-scope'. This used to work for me so not sure what's changed in my setup. Same code works fine in Vue.js setup with vue-webpack. What am I missing?\r\nMinimum case created on Glitch:\r\nhttps://glitch.com/edit/#!/tart-radiator?path=pages/index.vue:1:0\r\nhttps://tart-radiator.glitch.me/\n\n\u003C!--cmty-->\u003C!--cmty_prevent_hook-->\n\u003Cdiv align=\"right\">\u003Csub>\u003Cem>This question is available on \u003Ca href=\"https://nuxtjs.cmty.io\">Nuxt.js\u003C/a> community (\u003Ca href=\"https://nuxtjs.cmty.io/nuxt/nuxt.js/issues/c1987\">#c1987\u003C/a>)\u003C/em>\u003C/sub>\u003C/div>",[3262],{"name":3263,"color":3264},"2.x","d4c5f9",2268,"Nuxt scoped slot not working","2023-01-18T15:43:52Z","https://github.com/nuxt/nuxt/issues/2268",0.67733747,["Reactive",3271],{},["Set"],["ShallowReactive",3274],{"$fTRc1wZytZ_XrK4EfJfei_Sz-An4H4Yy6syhVxH_PVJc":-1,"$fRqFCcvBQLSmIDZbFNSb4D07cmlMy7E9JITDSOIXgn94":-1},"/nuxt/ui/4260"]